Summary and recommendation
Doodle does not publish a general-purpose REST API for user management. The only documented programmatic interface is SCIM 2.0, available exclusively on the Enterprise plan at the base URL https://app.doodle.com/scim/v2. Supported operations cover the core lifecycle: POST /Users (create), GET /Users and GET /Users/{id} (read/list), PUT /Users/{id} (update), and DELETE /Users/{id} or PATCH active=false (deactivate).
No webhooks, no event subscriptions, and no public OpenAPI spec are documented; the SCIM endpoint is the sole integration surface for building an identity graph that reflects Doodle account state. The integration is explicitly labeled BETA - endpoint stability and behavior are subject to change without notice.
API quick reference
| Has user API | No |
| SCIM available | Yes |
| SCIM plan required | Enterprise |
Authentication
Auth method: Not documented
User object / data model
User object field mapping is not yet verified for this app.
Core endpoints
Endpoint coverage is not yet verified for this app.
Rate limits, pagination, and events
Rate limits: Not documented
Rate-limit headers: No
Retry-After header: No
Rate-limit notes: Not documented
Pagination method: none
Default page size: 0
Max page size: 0
Pagination pointer: Not documented
Webhooks available: No
Webhook notes: No webhook or event-subscription API is documented in official Doodle developer or help center resources.
Alternative event strategy: Poll for user state changes via SCIM /Users endpoint if on Enterprise plan.
SCIM API status
SCIM available: Yes
SCIM version: 2.0
Plan required: Enterprise
Endpoint: https://app.doodle.com/scim/v2
Supported operations: Create User (POST /Users), Read User (GET /Users/{id}), List Users (GET /Users), Update User (PUT /Users/{id}), Deactivate/Delete User (DELETE /Users/{id} or PATCH active=false), Get Service Provider Config (GET /ServiceProviderConfig)
Limitations:
- SCIM provisioning is in BETA as of the latest official documentation.
- Requires Enterprise plan; not available on Free, Pro, or Team tiers.
- SCIM bearer token must be requested directly from Doodle support - no self-serve token generation documented.
- Group/team provisioning support is not confirmed in official docs.
- No public developer portal or OpenAPI spec published for the SCIM endpoint.
- Verified IdP integrations: Okta and Microsoft Entra ID only; Google Workspace and OneLogin not officially supported.
- Rate limits for the SCIM endpoint are not publicly documented.
Common scenarios
Three scenarios are confirmed against official documentation.
First, provisioning: configure your IdP (Okta or Microsoft Entra ID are the only verified integrations) with the base URL and bearer token, then push user assignments; Doodle returns a SCIM User object with an id that must be stored for subsequent operations.
Second, deprovisioning: remove the user from the IdP assignment. the IdP sends DELETE /Users/{id} or PATCH active=false - but the behavioral difference between hard delete and deactivation is not explicitly documented, so confirm with Doodle support before production rollout.
Third, auditing: GET /Users returns a Resources array with userName, id, and active fields; use startIndex and count for pagination, noting that default and maximum page sizes are undocumented and must be tested defensively.
Google Workspace and OneLogin are not officially supported IdPs; other SCIM-compatible providers may function but carry no support guarantee.
Provision a new Enterprise user via SCIM
- Obtain SCIM bearer token from Doodle Enterprise support.
- Configure your IdP (Okta or Entra ID) with base URL https://app.doodle.com/scim/v2 and the bearer token.
- Push user assignment from IdP; IdP sends POST /Users with userName, name, and emails attributes.
- Doodle creates the account and returns a SCIM User object with the assigned id.
- Store the returned id for future PATCH/PUT/DELETE operations.
Watch out for: Token must be re-requested from Doodle if rotated; there is no self-serve rotation UI documented.
Deprovision a user when they leave the organization
- Remove user from the application assignment in your IdP.
- IdP sends DELETE /Users/{id} or PATCH /Users/{id} with active=false to the SCIM endpoint.
- Doodle deactivates or removes the user account.
- Verify deactivation by sending GET /Users/{id} and checking the active attribute.
Watch out for: Behavior difference between DELETE and PATCH active=false (hard delete vs. deactivation) is not explicitly documented; confirm with Doodle support before production rollout.
Audit current provisioned users
- Send GET /Users to the SCIM endpoint with the bearer token.
- Parse the returned Resources array for userName, id, and active fields.
- Use startIndex and count query parameters for pagination if the user count exceeds the default page size (page size not officially documented).
Watch out for: Default and maximum page sizes are undocumented; test with small count values and implement pagination defensively.
Why building this yourself is a trap
The primary operational risk is token management: the SCIM bearer token is provisioned by Doodle's support team on request, with no self-serve issuance or rotation UI in the admin console. A rotated or expired token requires opening a support ticket, which can block automated provisioning workflows.
Rate limits for the SCIM endpoint are entirely undocumented - implement conservative retry logic with exponential backoff from day one. Group and team provisioning support is unconfirmed in official docs, meaning identity graph completeness may be limited to individual user objects without reliable group-membership data.
Treat the beta label as a hard constraint: do not build production-critical deprovisioning pipelines on this endpoint without a manual fallback and a tested incident runbook.
Automate Doodle workflows without one-off scripts
Stitchflow builds and maintains end-to-end IT automation across your SaaS stack, including apps without APIs. Built for exactly how your company works, with human approvals where they matter.