overlay: 1.0.0 info: title: API Evangelist enrichment overlay for Capsule CRM REST Opportunities Tasks API version: 1.0.0 x-generated: '2026-09-05' x-method: generated x-source: https://developer.capsulecrm.com/v2/overview/ + api.capsulecrm.com/.well-known/ description: 'Non-destructive overlay carrying API Evangelist enrichments: proposed operationIds (the base contract declares none), the OAuth 2.0/OIDC schemes Capsule serves from discovery, published rate-limit and error semantics, pagination, and a per-write reversibility record. Apply with an OpenAPI Overlay 1.0.0 processor; the base document in openapi/ is never mutated.' extends: capsule-tasks-api-openapi.yml actions: - target: $.info description: Record the API Evangelist enrichment provenance and the runtime semantics Capsule documents outside the contract. update: x-apis-io-enrichment: generated: '2026-09-05' artifacts: - conventions/capsule-conventions.yml - errors/capsule-problem-types.yml - rate-limits/capsule-rate-limits.yml - authentication/capsule-authentication.yml - scopes/capsule-scopes.yml - mcp/capsule-mcp.yml - asyncapi/capsule-rest-hooks-webhooks.yml x-rate-limit: limit: 4000 window: hour scope: per Capsule user headers: - X-RateLimit-Limit - X-RateLimit-Remaining - X-RateLimit-Reset status: 429 source: https://developer.capsulecrm.com/v2/overview/handling-api-responses x-idempotency: supported: false coverage: none source: https://developer.capsulecrm.com/v2/overview/writing-to-the-api x-error-format: rfc9457: false fields: - message - resource - field source: https://developer.capsulecrm.com/v2/overview/handling-api-responses - target: $.components.securitySchemes description: Add the OAuth 2.0 / OpenID Connect schemes Capsule serves from its discovery documents, alongside the bearer scheme already in the contract. update: capsuleOAuth: type: oauth2 description: Capsule OAuth 2.0 authorization code flow with PKCE. Access tokens expire after 604799 seconds. flows: authorizationCode: authorizationUrl: https://api.capsulecrm.com/oauth/authorise tokenUrl: https://api.capsulecrm.com/oauth/token refreshUrl: https://api.capsulecrm.com/oauth/token scopes: read: Read-only access to Capsule data write: Create, update and delete Capsule data user_preference: Access the authenticated user's preferences openid: Request an OpenID Connect ID token profile: OIDC profile claims email: OIDC email claim tenant: Capsule tenant/subdomain claim capsuleOpenId: type: openIdConnect openIdConnectUrl: https://api.capsulecrm.com/.well-known/openid-configuration description: Capsule is a full OpenID Provider; discovery and JWKS are served on the API host. - target: $.paths['/tasks'].get description: Propose a stable operationId for GET /tasks; the published contract declares none. update: operationId: listTasks - target: $.paths['/tasks'].post description: Propose a stable operationId for POST /tasks; the published contract declares none. update: operationId: createTasks - target: $.paths['/tasks/{taskId}'].get description: Propose a stable operationId for GET /tasks/{taskId}; the published contract declares none. update: operationId: getTasks - target: $.paths['/tasks/{taskId}'].put description: Propose a stable operationId for PUT /tasks/{taskId}; the published contract declares none. update: operationId: updateTasks - target: $.paths['/tasks/{taskId}'].delete description: Propose a stable operationId for DELETE /tasks/{taskId}; the published contract declares none. update: operationId: deleteTasks - target: $.paths['/tasks'].get description: Document the page/perPage pagination and RFC 5988 Link header behaviour on /tasks. update: x-pagination: style: page-number params: page: default: 1 perPage: default: 50 max: 100 link_header: true rels: - next - prev source: https://developer.capsulecrm.com/v2/overview/reading-from-the-api - target: $.paths['/tasks'].post description: Record reversibility for POST /tasks. Capsule documents no restore path and no window. update: x-reversibility: grade: none reversal_operation: null window: null source: https://developer.capsulecrm.com/v2/overview/writing-to-the-api - target: $.paths['/tasks/{taskId}'].put description: Record reversibility for PUT /tasks/{taskId}. Capsule documents no restore path and no window. update: x-reversibility: grade: none reversal_operation: null window: null source: https://developer.capsulecrm.com/v2/overview/writing-to-the-api - target: $.paths['/tasks/{taskId}'].delete description: Record reversibility for DELETE /tasks/{taskId}. Capsule documents no restore path and no window. update: x-reversibility: grade: none reversal_operation: null window: null source: https://developer.capsulecrm.com/v2/overview/writing-to-the-api