# Salesforce Integration

> Router for the 61 SfSkills `integration` skill packages. INBOUND integration and the API surface itself: the Salesforce REST and SOAP APIs, Bulk API 2.0 jobs, Platform Events, CDC, Pub/Sub, Named Credentials and middleware. For calling OUT to someone else's API from Apex, use salesforce-apex instead. Use when the request mentions integration, Salesforce REST API, composite API, SOAP API, Bulk API 2.0 job, Platform Event, Change Data Capture, Pub/Sub, inbound webhook, Named Credential, OAuth, connected app, MuleSoft, Salesforce Connect, external system calling Salesforce. Finds and opens the exact skill package to read; it does not contain the guidance itself.

- Skill: `pranavnagrecha/salesforce-integration` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add pranavnagrecha/salesforce-integration`
- Raw SKILL.md: https://api.skillmd.com/api/skills/pranavnagrecha/salesforce-integration/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: PranavNagrecha (https://skillmd.com/u/pranavnagrecha)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/pranavnagrecha/salesforce-integration

---


# Salesforce integration — SfSkills domain router

INBOUND integration and the API surface itself: the Salesforce REST and SOAP APIs, Bulk API 2.0 jobs, Platform Events, CDC, Pub/Sub, Named Credentials and middleware. For calling OUT to someone else's API from Apex, use salesforce-apex instead.

**61 skill packages** live under
`${CLAUDE_PLUGIN_ROOT}/skills/integration/<slug>/SKILL.md`. They are not
loaded — reach them by path, on demand.

**Generated by `scripts/build_plugin.py`. Do not hand-edit.**

## How to find the right skill

Three mechanisms, listed in order of reliability on a fresh install.
Use the first one that is available; do not stop at a guess.

**1. The shipped roster (always works, no setup).**
Read `references/skill-index.md` next to this file. It lists every
`integration` skill package with a one-line gloss, generated from
`registry/skills.json`. Scan it and pick by name.

**2. The MCP server (fast, needs the `sfskills-mcp` server connected).**
Call the `search_skill` tool with the user's phrasing and `domain: "integration"`. It returns
ranked skill ids. `get_skill` then returns the package contents.

**3. The search CLI (fast, needs a locally built index).**

```bash
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/search_knowledge.py" "<the user's question>" --domain integration --json
```

This needs `vector_index/`, which is **not shipped** — it is gitignored
and must be built once per clone:

```bash
cd "${CLAUDE_PLUGIN_ROOT}" && python3 -m pip install -r requirements.txt && python3 scripts/build_index.py
```

If the command errors or reports `Coverage: NONE`, fall back to
mechanism 1 rather than telling the user the topic is uncovered.

**Then read the package.** Open the exact
`${CLAUDE_PLUGIN_ROOT}/skills/<domain>/<slug>/SKILL.md` the lookup
returned, plus its `references/gotchas.md` and
`references/llm-anti-patterns.md`. Do not answer from this router:
it is a map, not the territory.

## Featured entry points

Curated starting points when the request is broad or the lookup is
ambiguous. This is a shortlist, not the catalogue — the roster at
`references/skill-index.md` has all 61.

- `${CLAUDE_PLUGIN_ROOT}/skills/integration/rest-api-patterns/SKILL.md` — the default synchronous inbound/outbound shape and its limits
- `${CLAUDE_PLUGIN_ROOT}/skills/integration/bulk-api-2-patterns/SKILL.md` — high-volume loads and extracts without holding a transaction open
- `${CLAUDE_PLUGIN_ROOT}/skills/integration/named-credentials-setup/SKILL.md` — credentials, auth providers, and never putting a secret in Apex
- `${CLAUDE_PLUGIN_ROOT}/skills/integration/oauth-flows-and-connected-apps/SKILL.md` — picking the right OAuth flow for the right client
- `${CLAUDE_PLUGIN_ROOT}/skills/integration/platform-events-integration/SKILL.md` — publish/subscribe decoupling, delivery guarantees and replay
- `${CLAUDE_PLUGIN_ROOT}/skills/integration/pub-sub-api-patterns/SKILL.md` — the gRPC Pub/Sub API for events and Change Data Capture
- `${CLAUDE_PLUGIN_ROOT}/skills/integration/error-handling-in-integrations/SKILL.md` — failure taxonomy, dead letters, and what the caller sees
- `${CLAUDE_PLUGIN_ROOT}/skills/integration/retry-and-backoff-patterns/SKILL.md` — idempotent retries that do not amplify an outage

## Decision trees

Read the tree *before* activating a skill when the request could be
solved more than one way, and cite the branch that decided it.

- `${CLAUDE_PLUGIN_ROOT}/standards/decision-trees/integration-pattern-selection.md` — the primary tree for this domain
- `${CLAUDE_PLUGIN_ROOT}/standards/decision-trees/async-selection.md` — read when a callout has to move off the synchronous path

## Run-time agents for this domain

Invoke one of these subagents when the ask is a whole workflow
rather than a single question:

- `bulk-migration-planner` — Pick the right Salesforce integration pattern
- `integration-catalog-builder` — Build the org's integration catalog

## Rules

1. Answer from the opened `integration` package, never from this router.
2. Cite the skill id and, where one applied, the decision-tree branch.
3. Never claim a topic is uncovered without pasting lookup output.
4. Never deploy to an org.


