Skip to content

HRIS · Beta

Indeed SCIM
API integration

Ship HRIS features without building the integration. Full Indeed SCIM API access via Proxy, normalized data through Unified APIs, and 5 MCP-ready tools for AI agents — all extensible to your exact use case.

Built for specific customer use cases. Issues are resolved quickly.

Talk to us
Indeed SCIM

Use Cases

Why integrate with Indeed SCIM

Common scenarios for SaaS companies building Indeed SCIM integrations for their customers.

01

Automate Recruiter Provisioning for ATS Platforms

Applicant Tracking Systems can auto-provision Indeed accounts for hiring managers and recruiters the moment they're added to the ATS, eliminating manual account setup and letting users sponsor jobs from day one.

02

Enable Multi-Client Access Management for Staffing CRMs

Staffing agency platforms can programmatically assign recruiters to specific client EmployerOrgs on Indeed, so a single CRM action grants access to the right sub-account without back-and-forth with Indeed support.

03

Enforce Immediate Offboarding for IAM & Governance Tools

Identity governance platforms can trigger Indeed account deletion the instant an employee is terminated in the source HRIS, closing security gaps around candidate PII and recruiting budgets.

04

Power Orphaned Account Audits for Compliance SaaS

Compliance and access-review products can list and reconcile Indeed users against a source-of-truth directory, flagging accounts that no longer map to active employees for automated cleanup.

05

Sync Recruiter Directory Changes from HRIS Platforms

HRIS and workforce platforms can propagate name changes, email updates, and department moves into Indeed automatically, keeping recruiter identity data consistent across the hiring stack.

What You Can Build

Ship these features with Truto + Indeed SCIM

Concrete product features your team can ship faster by leveraging Truto’s Indeed SCIM integration instead of building from scratch.

01

Joiner-Mover-Leaver Automation for Indeed

Trigger create, update, and delete flows on Indeed SCIM users based on lifecycle events in your platform, mapped by externalId.

02

EmployerOrg-Aware Account Provisioning

Provision users with the correct EmployerOrg extension on creation so recruiters land in the right subsidiary, client, or branch account immediately.

03

Bulk Recruiter Onboarding Wizard

Let admins import a list of recruiters from your platform and provision them into Indeed in a single guided flow, with per-user EmployerOrg assignment.

04

Access Reconciliation Dashboard

Pull the full Indeed user list on a schedule and compare against your internal directory to surface orphaned accounts, mismatched externalIds, or inactive users still holding access.

05

Client Reassignment Workflows for Staffing

When a recruiter is moved to a new client in your CRM, push a full profile overwrite to update their EmployerOrg memberships on Indeed in one action.

06

Audit-Logged Offboarding with Async Tracking

Fire deletion requests to Indeed SCIM and record the initiation timestamp so compliance teams can track the up-to-30-minute deprovisioning window.

SuperAI

Indeed SCIM AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

list_all_indeed_scim_users

List Indeed SCIM users filtered by externalId or email. Returns a maximum of one user; an error is returned if multiple users match the filter. Returns: schemas, id, externalId, userName, name, displayName, emails, active, meta, urn:ietf:params:scim:schemas:extension:indeed:2.0:EmployerOrg. Required: filter.

get_single_indeed_scim_user_by_id

Get a single Indeed SCIM user by encrypted account ID, including all associated employer organization data. Returns: schemas, id, externalId, userName, name, displayName, emails, active, meta, urn:ietf:params:scim:schemas:extension:indeed:2.0:EmployerOrg. Required: id.

create_a_indeed_scim_user

Create an Indeed SCIM user with optional employer organization membership. Returns: schemas, id, externalId, userName, name, displayName, emails, active, meta, urn:ietf:params:scim:schemas:extension:indeed:2.0:EmployerOrg. Required: schemas, externalId, userName, userType, emails (one primary), name (givenName, familyName).

update_a_indeed_scim_user_by_id

Update an Indeed SCIM user by encrypted account ID. This is a full overwrite — every value on the account is replaced even when an attribute is empty or omitted, so include complete user data in the request body. Returns: schemas, id, externalId, userName, name, displayName, emails, active, meta, urn:ietf:params:scim:schemas:extension:indeed:2.0:EmployerOrg. Required: id.

delete_a_indeed_scim_user_by_id

Delete an Indeed SCIM user by encrypted account ID. The user is automatically removed from any employer organizations and the deletion process can take up to 30 minutes to complete. Returns an empty 204 response on success. Required: id.

Why Truto

Why use Truto’s MCP server for Indeed SCIM

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

Unified APIs

Unified APIs for Indeed SCIM

Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.

Unified User Directory API

Users

The User object represents a User.

View Docs

How It Works

From zero to integrated

Go live with Indeed SCIM in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s Indeed SCIM account

Use Truto’s frontend SDK to connect your customer’s Indeed SCIM account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call Indeed SCIM

Truto’s Proxy API is a 1-to-1 mapping of the Indeed SCIM API. You call us, we call Indeed SCIM, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate Indeed SCIM’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about Indeed SCIM on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

What operations does Truto support for Indeed SCIM today?

Truto exposes list users, get a single user by ID, create user, update user by ID, and delete user by ID. These cover the full SCIM 2.0 user lifecycle needed for provisioning and deprovisioning.

How do I link an Indeed user to my platform's internal user record?

Set the SCIM `externalId` attribute to your platform's internal user ID when creating the user. You can then filter list_all_indeed_scim_users by externalId to look up the mapping later without storing Indeed's encrypted account ID separately.

Can I assign users to specific Indeed employer sub-accounts on creation?

Yes. Pass the `urn:ietf:params:scim:schemas:extension:indeed:2.0:EmployerOrg` extension in the create payload to place the user into the correct company, subsidiary, or client EmployerOrg at provisioning time.

How do updates work — can I patch a single attribute?

Indeed SCIM requires a full body overwrite on update. Your integration must maintain the complete user state (emails, name, active status, EmployerOrg array) and send the entire payload via update_a_indeed_scim_user_by_id even when changing a single field.

How fast does deletion take effect on Indeed's side?

The delete request is accepted immediately and removes the user from all EmployerOrgs, but the full deletion on Indeed's backend is asynchronous and can take up to 30 minutes to complete. Design offboarding workflows to log the initiation time for audit purposes.

Does Truto handle authentication with Indeed SCIM?

Yes. Truto manages the SCIM bearer token exchange and credential storage so your end users complete a standard connect flow, and your app makes calls through Truto without handling Indeed tokens directly.

Is there a Unified HRIS API I can use instead of the Indeed-specific tools?

Not yet for Indeed SCIM — today you interact with the passthrough tools listed above. If you need a unified schema across HRIS providers, reach out and Truto can prioritize it based on your use case.

Indeed SCIM

Get Indeed SCIM integrated into your app

Our team understands what it takes to make a Indeed SCIM integration successful. A short, crisp 30 minute call with folks who understand the problem.