openapi: 3.2.0 info: title: Mindtickle Services API version: '2026-10-12' description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-12: 10 operation(s) read from 9 public documentation page(s) (each operation names its page in x-source). This is not the provider''s published contract; Mindtickle has published no machine-readable contract that the pipeline could find. Engine: local.' x-evidence-tiers: code-example: 4 documentation: 6 pages-with-code: 2 pages-read: 9 x-generated-from: documentation x-provenance: generated x-authored-by: API Evangelist x-generated: '2026-10-12' x-generator: generate-contract-from-docs.py x-engine: local x-sources: - https://developer.mindtickle.com/docs/call-ai/graphql-api - https://developer.mindtickle.com/docs/call-ai/graphql-api/query-call-data - https://developer.mindtickle.com/docs/call-ai/graphql-api/download-call-recordings - https://developer.mindtickle.com/docs/asset-hub/hubs/manage-user-access-for-restricted-hubs - https://developer.mindtickle.com/docs/content-center - https://developer.mindtickle.com/docs/getting-started - https://developer.mindtickle.com/docs/getting-started.md - https://developer.mindtickle.com/docs/asset-hub/hubs/create-a-hub - https://developer.mindtickle.com/docs/asset-hub/assets/create-assets servers: - url: https://api.mindtickle.com security: - bearer: [] tags: - name: Services paths: /services/data/auth_token: post: operationId: post_services_data_auth_token tags: - Services summary: Exchange your credentials for a Bearer token x-source: https://developer.mindtickle.com/docs/getting-started responses: '201': description: Success (status as documented) x-evidence: kind: documentation /services/data/v1.0/content/management/{executionId}: get: operationId: get_services_data_v1_0_content_management_executionId tags: - Services summary: Check content management job status description: Monitor the progress and final outcome of a job using its execution_id. x-source: https://developer.mindtickle.com/docs/content-center parameters: - name: executionId in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /services/data/v1.0/content/upload-url: get: operationId: get_services_data_v1_0_content_upload_url tags: - Services summary: GET /services/data/v1.0/content/upload-url x-source: https://developer.mindtickle.com/docs/content-center parameters: - name: file_name in: query required: false schema: type: string responses: '200': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/GetServicesDataV10ContentUploadUrlResponse' x-evidence: kind: code-example language: curl snippet: "curl --location 'https://api.mindtickle.com/services/data/v1.0/content/upload-url?file_name=annual-report-2025.pdf' \\ --header 'Authorization: Bearer ACCESS_TOKEN' \n Upload the file with a PUT request to the pre-signed URL returned in the previous step. Use that URL exactly as returned, even when it has a different host. Do not send your Mindtickle Bearer token to the upload host. " /services/data/v1.0/content/{contentid}: post: operationId: post_services_data_v1_0_content_contentid tags: - Services summary: POST /services/data/v1.0/content/integration x-source: https://developer.mindtickle.com/docs/content-center parameters: - name: contentid in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostServicesDataV10ContentContentidRequest' responses: '201': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/PostServicesDataV10ContentContentidResponse' x-evidence: kind: code-example language: curl snippet: "curl --location 'https://api.mindtickle.com/services/data/v1.0/content/integration' \\ --header 'Authorization: Bearer ACCESS_TOKEN' \\ --header 'Content-Type: application/json' \\ --data '{ \"source_name\": \"AEM_DAM\", \"root_folder_name\": \"Marketing Content\" }' \n Get an upload URL for the first file. Repeat this request and the upload step for every file in the job. \n GET /services/data/v1.0/content/up" collapsed_from: 2 example path(s) differing only at contentId components: schemas: PostServicesDataV10ContentContentidRequest: type: object properties: source_name: type: string root_folder_name: type: string GetServicesDataV10ContentUploadUrlResponse: type: object properties: request_meta: type: object properties: integration_id: type: string root_folder_id: type: string entities: type: array items: type: object properties: id: type: string operation: type: string path: type: string upload_key: type: string metadata: type: object properties: file_name: type: string source_path: type: string PostServicesDataV10ContentContentidResponse: type: object properties: request_meta: type: object properties: integration_id: type: string root_folder_id: type: string entities: type: array items: type: object properties: id: type: string operation: type: string path: type: string upload_key: type: string metadata: type: object properties: file_name: type: string source_path: type: string securitySchemes: bearer: type: http scheme: bearer