ServiceNow ITSM → Workload (REST v1)
Not a Marketplace connector. Not an ITSM write. Optional Table API is read-only (approved change/demand → existing Workload project). Keep incidents, changes, and CMDB in ServiceNow. Put named allocations in Workload using the REST v1 capacity SoR already shipped.
Scopes and paths: docs/openapi/v1.yaml (TeamMembers, Allocations, Timesheet).
OpenAPI v1 scopes
POST /api/v1/team-membersteam-members:writeGET /api/v1/team-membersteam-members:readPOST /api/v1/allocationsallocations:writeGET /api/v1/allocationsallocations:readGET /api/v1/timesheet-entriestimesheet:read
Recipe A — CSV (no IntegrationHub)
- Export people from ServiceNow (sys_user / group): name, email, role.
- Create members with POST /api/v1/team-members (or the existing Workload CSV import).
- For an approved change or demand — not an incident — pick the Workload project by hand, then POST /api/v1/allocations with notes = the SN number (CHG0012345).
- Connect a native timesheet (Tempo / Azure / Toggl / Clockify / CSV). The /dashboard/ops pack proposes variances — a human votes.
Recipe B — IntegrationHub (REST Message)
Flow Designer example: Change Request moves to closed / approved. REST Message POST member (store u_workload_member_id on sys_user). REST Message POST allocation on a Workload projectId stored on the change (u_workload_project_id, filled by a human — never derived from an incident). Store u_workload_allocation_id to avoid duplicates.
POST /team-members
curl -X POST https://api.workload.com/api/v1/team-members \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Alice Martin","email":"alice@example.com","role":"Developer","level":"SENIOR","capacity":20}'POST /allocations
curl -X POST https://api.workload.com/api/v1/allocations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"projectId":"WORKLOAD_PROJECT_ID","teamMemberId":"WORKLOAD_MEMBER_ID","allocationType":"SOFT","days":5,"notes":"SN CHG0012345"}'Do not map
Workload must not become a mini-ITSM.
- Incident → automatic project. Duplicates the run queue. Create the project by hand (or from an approved change with a human mapping).
- CMDB CI → automatic team. CMDB is not the capacity org. Teams are managed in Workload.
- Single incident → one allocation. Allocations are named 8–12 weeks, not a ticket.
- Workload → ITSM write (Table API / insert incident / CMDB). Read-only. One-way: SN demand/change → existing Workload project mapping. S8 drafts the pack HITL; apply only after Approuver.
- Marketplace connector as available. Does not exist. Opt-in Table API is read-only (change/demand), never ITSM write, never Marketplace.
Keep ServiceNow. Put capacity in Workload →REST API documentation →