Enable Swarming for Employee Service (ITSM)
SkillMonitoring & opsLets your agent turn on Salesforce swarming so IT support agents can invite experts into incident tickets.
Use Enable Swarming for Employee Service (ITSM) in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Enable Swarming for Employee Service (ITSM) and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Enable Swarming for Employee Service (ITSM) skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
About this skill
Enable Swarming for Employee Service (ITSM) in Salesforce, the Salesforce Go feature service-cloud-swarming that lets IT Desk agents pull in subject-matter experts to collaboratively resolve incidents in real time. Use this for: 'turn on swarming', 'enable service-cloud-swarming', 'set up swarming
What this skill tells your AI
The instructions your AI receives, as published by forcedotcom/sf-skills in skills/service-itsm-swarming-configure/SKILL.md and read by ahel’s review.
Enable the Salesforce Go feature "Swarming" (service-cloud-swarming) — the feature that
helps service reps pull in the right collaborators and subject-matter experts to resolve
incidents in real time. Every operation dispatches through headless-360.
Execute one step at a time. These steps make real, state-changing API calls. Run a single operation, show its result, confirm it succeeded, then proceed — do not batch multiple setup calls into one parallel block.
Scope
- In scope: Enabling the
service-cloud-swarmingGo feature via its feature-enablement Connect API; verifying feature state afterward; setting the "Select a Collaboration Tool" picklist (the API-level target of the "Set Teams as Collaboration Tool for Swarming" checklist item) toTeamsvia the org-values Connect API. - Out of scope: The base Microsoft Teams ITSM Salesforce Go page toggle (
ITSMTeamsEnabled) and Azure/Entra app registration — useservice-itsm-teams-configure(Swarming requires Teams to already be set up as a prerequisite, per the Go page). Notification-channel preferences (Notifications/TeamsNotifications) — a separate concern from this feature. Portal/site creation — useexperience-portal-create.
The problem this skill solves
"Set Teams as Collaboration Tool for Swarming" is one item in the "Set Up Salesforce IT Desk"
checklist on the Teams ITSM Go page (service-cloud-itsm-teams-integration's feature page) — but
it is gated behind a separate Go feature, service-cloud-swarming, which must be turned on
first. This skill is the dedicated place to turn Swarming on, so service-itsm-teams-configure
can delegate to it instead of duplicating feature-enablement logic.
Workflow
Step 1 — Check current feature status
mcp__headless-360__dispatch(
method: "POST",
url: "/services/data/v67.0/connect/setup/discovery/features/status",
body: { "featureApiNames": ["service-cloud-swarming"] }
)
Response shape:
{
"items": [
{
"apiName": "service-cloud-swarming",
"status": "ENABLED", // or "NOT_ENABLED" / "DISABLED"
"blockedByApexLock": false,
"dependencyStatuses": [],
"enableBlockedReasons": [],
"disableBlockedReasons": []
}
]
}
Note: this endpoint is POST-only despite being a status read — a GET with queryParams
returns 405 METHOD_NOT_ALLOWED "Allowed are POST".
If status is already "ENABLED", skip to Step 3 (verification) — do not re-enable.
If enableBlockedReasons is non-empty, surface those reasons to the user before attempting Step 2.
Step 2 — Enable the feature
mcp__headless-360__dispatch(
method: "POST",
url: "/services/data/v67.0/connect/setup/discovery/feature/service-cloud-swarming/enable",
body: {}
)
Verified live: returns 201 {"success":true} cleanly (unlike the Teams feature-enable, this call
did not exhibit the "500 that still succeeds" gotcha in testing — but re-check status afterward
regardless, since Go feature-enable calls can be flaky in general).
Step 3 — Verify
mcp__headless-360__dispatch(
method: "POST",
url: "/services/data/v67.0/connect/setup/discovery/features/status",
body: { "featureApiNames": ["service-cloud-swarming"] }
)
Expect status: "ENABLED".
Step 4 — Check current collaboration tool value
mcp__headless-360__dispatch_readonly(
method: "GET",
url: "/services/data/v67.0/setup/org/values/SWARM_COLLABORATION_TOOL"
)
Response shape — exactly one of the four value fields is populated:
{ "booleanValue": false, "dateValue": null, "numberValue": null, "stringValue": "None" }
stringValue holds the current picklist selection: "None", "Slack", or "Teams". This is
the same Java enum-gated org-value endpoint family described in setup-connect-api's
get-org-value/update-org-value/verify-org-value-update steps — valueName must be the
literal Java enum constant name (SWARM_COLLABORATION_TOOL, SCREAMING_SNAKE_CASE), not a
camelCase guess like SwarmCollaborationTool.
If already "Teams", skip to Step 6 (report) — do not re-issue the write.
Step 5 — Set the collaboration tool to Teams
mcp__headless-360__dispatch(
method: "PATCH",
url: "/services/data/v67.0/setup/org/values/SWARM_COLLABORATION_TOOL",
body: { "orgValue": "Teams" }
)
Verified live: returns 200 { "stringValue": "Teams", ... }. This is the API-level write behind
the Swarming Go feature page's "Select a Collaboration Tool" dropdown — the same control the
Teams ITSM Go page's "Set Teams as Collaboration Tool for Swarming" checklist item deep-links to
via its "Go to Feature Page" button. Valid orgValue strings are "None", "Slack", "Teams".
Re-run Step 4's GET afterward to confirm stringValue == "Teams".
Step 6 — Report to the user
Report both the service-cloud-swarming feature status and the SWARM_COLLABORATION_TOOL
value, confirming "Set Teams as Collaboration Tool for Swarming" is now fully automated —
enabling the feature is the prerequisite, and the org-value PATCH is the actual checklist-item
write.
Disabling (if requested)
mcp__headless-360__dispatch(
method: "POST",
url: "/services/data/v67.0/connect/setup/discovery/feature/service-cloud-swarming/disable",
body: {}
)
Re-run Step 1 afterward to confirm.
To also reset the collaboration tool selection (optional — disabling the feature does not reset it automatically):
mcp__headless-360__dispatch(
method: "PATCH",
url: "/services/data/v67.0/setup/org/values/SWARM_COLLABORATION_TOOL",
body: { "orgValue": "None" }
)
Gotchas
| Issue | Detail |
|---|---|
"Set Teams as Collaboration Tool for Swarming" writes via SWARM_COLLABORATION_TOOL, not a Teams-side endpoint | This checklist item lives on the Swarming Go feature page itself (/lightning/setup/page/feature/service-cloud-swarming/home, "Select a Collaboration Tool" dropdown) — the Teams ITSM Go page's checklist item is just a deep link to it via "Go to Feature Page." The write API is PATCH /services/data/v67.0/setup/org/values/SWARM_COLLABORATION_TOOL with body {"orgValue": "Teams"} — part of setup-connect-api's get-org-value/update-org-value steps. Verified live: GET returned {"stringValue":"None"} before, {"stringValue":"Teams"} after PATCH. |
valueName must be the exact Java enum constant, not camelCase | The /setup/org/values/{valueName} endpoint calls OrgValues.valueOf(valueName) directly (Enum.valueOf), so it requires the literal SCREAMING_SNAKE_CASE constant name declared in ui.services.utils.OrgValueUtil.OrgValues — e.g. SWARM_COLLABORATION_TOOL. CamelCase guesses like SwarmCollaborationTool or SwarmingCollaborationTool return 400 ILLEGAL_QUERY_PARAMETER_VALUE "No enum constant ui.services.utils.OrgValueUtil.OrgValues.<guess>" — that specific error confirms the endpoint/mechanism is right but the casing/name is wrong. The read-only get-service-itsm-teams-collaboration-app-settings endpoint (GET /connect/it-service/collaboration-app-settings/{targetApplication}) is unrelated to this setting — it's read-only (POST/PATCH/PUT return 405) and returns empty settings: [] regardless of feature state. |
features/status is POST-only | A GET with queryParams on /connect/setup/discovery/features/status returns 405 METHOD_NOT_ALLOWED "Allowed are POST" — always POST a JSON body with featureApiNames. |
swarming-connect-api SOR is unrelated | headless-360's swarming-connect-api SOR is about Slack messaging within swarming conversations (post/patch/delete Slack messages, reactions, file uploads, channel/user search) — it does not configure which collaboration tool (Teams vs. Slack vs. Chatter) swarming uses. Do not confuse it with this skill's scope. |
| Swarming requires Teams first | The Go page frames "Set Teams as Collaboration Tool for Swarming" as a step within Teams ITSM setup — enable service-cloud-itsm-teams-integration (via service-itsm-teams-configure) before or alongside this skill. |
| Version prefix required | headless-360 dispatch/dispatch_readonly do not resolve API versions — always pass the full /services/data/vXX.0/... prefix. |
Related Skills
| Skill | When to use instead / alongside |
|---|---|
service-itsm-teams-configure | Enabling the base Microsoft Teams ITSM integration and Azure/Entra setup — a prerequisite for Swarming; delegates to this skill for the "Set Teams as Collaboration Tool for Swarming" checklist item |
| Notification-channel preferences | Enabling the Notifications/TeamsNotifications preferences is a distinct concern from this feature (no dedicated child skill exists yet) |
service-itsm-channels-coordinate | Top-level menu across Teams, Slack, Swarming, Notifications, Portal |
Signals
- GitHub stars
- 1k
- Forks
- 351
- Last commit
- Sep 2026
Advanced
- Item type
- skill
- Key
service-itsm-swarming-configure- Source
- github.com/forcedotcom/sf-skills
github.com/forcedotcom/sf-skills
Related picks
Skill · composio-community
The pick for Salesforcesalesforce-connector
Skill · a5c-ai
The pick for Salesforceinternal-comms
Skill · anthropics
More in Monitoring & opsagent-eval
Skill · affaan-m
More in Monitoring & opspricing
Skill · coreyhaines31
More in Monitoring & opslark-okr
Skill · larksuite
More in Monitoring & ops