openapi: 3.1.0 info: title: CYRISMA API version: '2026-10-22' description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-22: 17 operation(s) read from 5 public documentation page(s) (each operation names its page in x-source). This is not the provider''s published contract; CYRISMA has published no machine-readable contract that the pipeline could find. Engine: local.' x-evidence-tiers: code-example: 2 documentation: 15 pages-with-code: 3 pages-read: 5 x-generated-from: documentation x-provenance: generated x-authored-by: API Evangelist x-generated: '2026-10-22' x-generator: generate-contract-from-docs.py x-engine: local x-sources: - https://docs.cyrisma.com/api/partner-api - https://docs.cyrisma.com/api/partner-api.md - https://docs.cyrisma.com/api/partner-api/conventions - https://docs.cyrisma.com/api/partner-api/authentication - https://docs.cyrisma.com/api/partner-api/conventions.md servers: - url: https://ccnnnnnn.cyrisma.com paths: /app/pulse/v1/partner/dashboards/posture: get: operationId: get_app_pulse_v1_partner_dashboards_posture tags: - App summary: GET /app/pulse/v1/partner/dashboards/posture x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /app/pulse/v1/partner/tenants: get: operationId: get_app_pulse_v1_partner_tenants tags: - App summary: GET /app/pulse/v1/partner/tenants x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /app/pulse/v1/partner/vulnerabilities/cves: get: operationId: get_app_pulse_v1_partner_vulnerabilities_cves tags: - App summary: GET /app/pulse/v1/partner/vulnerabilities/cves x-source: https://docs.cyrisma.com/api/partner-api/conventions parameters: - name: page_size in: query required: false schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl -fsS -H "Authorization: Bearer $ACCESS_TOKEN " "https://ccnnnnnn.cyrisma.com/app/pulse/v1/partner/vulnerabilities/cves?page_size=100" ' /app/pulse/v1/partner/vulnerabilities/events: get: operationId: get_app_pulse_v1_partner_vulnerabilities_events tags: - App summary: GET /app/pulse/v1/partner/vulnerabilities/events x-source: https://docs.cyrisma.com/api/partner-api/conventions parameters: - name: from in: query required: false schema: type: string - name: to in: query required: false schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -fsS -H \"Authorization: Bearer $ACCESS_TOKEN \" \"https://ccnnnnnn.cyrisma.com/app/pulse/v1/partner/vulnerabilities/events?from=2026-07-01T00:00:00Z&to=2026-07-02T00:00:00Z\"\ \ \n ​ Errors \n Errors use RFC 7807 application/problem+json . \n Status Meaning Action 400 Invalid filter, window, or cursor. Correct\ \ the request. Do not retry unchanged. 401 Missing, expired, or invalid token. Request a new " /partner/dashboards/overall: get: operationId: get_partner_dashboards_overall tags: - Partner summary: GET /partner/dashboards/overall x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /partner/instances/convert: patch: operationId: patch_partner_instances_convert tags: - Partner summary: PATCH /partner/instances/convert x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /partner/instances/info: get: operationId: get_partner_instances_info tags: - Partner summary: GET /partner/instances/info x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /partner/instances/reactivate: patch: operationId: patch_partner_instances_reactivate tags: - Partner summary: PATCH /partner/instances/reactivate x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /partner/instances/suspend: patch: operationId: patch_partner_instances_suspend tags: - Partner summary: PATCH /partner/instances/suspend x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /ta/v1/auth/client-token: post: operationId: post_ta_v1_auth_client_token tags: - Ta summary: POST /ta/v1/auth/client-token x-source: https://docs.cyrisma.com/api/partner-api requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostTaV1AuthClientTokenRequest' responses: '201': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostTaV1AuthClientTokenResponse' x-evidence: kind: documentation /ta/v1/msp/admin/tenants: get: operationId: get_ta_v1_msp_admin_tenants tags: - Ta summary: GET /ta/v1/msp/admin/tenants x-source: https://docs.cyrisma.com/api/partner-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /ta/v1/msp/admin/tenants/{tenantid}: patch: operationId: patch_ta_v1_msp_admin_tenants_tenantid tags: - Ta summary: PATCH /ta/v1/msp/admin/tenants/{tenantId} x-source: https://docs.cyrisma.com/api/partner-api parameters: - name: tenantid in: path required: true schema: type: string requestBody: required: false content: application/json: schema: $ref: '#/components/schemas/PatchTaV1MspAdminTenantsTenantidRequest' responses: '200': description: Success (status as documented) x-evidence: kind: documentation /ta/v1/msp/admin/users: post: operationId: post_ta_v1_msp_admin_users tags: - Ta summary: Add users with POST /ta/v1/msp/admin/users x-source: https://docs.cyrisma.com/api/partner-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /ta/v1/msp/provisioning/jobs/{jobid}: get: operationId: get_ta_v1_msp_provisioning_jobs_jobid tags: - Ta summary: Poll GET /ta/v1/msp/provisioning/jobs/{jobId} for completion x-source: https://docs.cyrisma.com/api/partner-api parameters: - name: jobid in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /ta/v1/msp/provisioning/tenants: post: operationId: post_ta_v1_msp_provisioning_tenants tags: - Ta summary: Create tenants with POST /ta/v1/msp/provisioning/tenants x-source: https://docs.cyrisma.com/api/partner-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /ta/v1/msp/provisioning/tenants/{tenantid}/reactivate: post: operationId: post_ta_v1_msp_provisioning_tenants_tenantid_reactivate tags: - Ta summary: POST /ta/v1/msp/provisioning/tenants/{tenantId}/reactivate x-source: https://docs.cyrisma.com/api/partner-api parameters: - name: tenantid in: path required: true schema: type: string responses: '201': description: Success (status as documented) x-evidence: kind: documentation /ta/v1/msp/provisioning/tenants/{tenantid}/suspend: post: operationId: post_ta_v1_msp_provisioning_tenants_tenantid_suspend tags: - Ta summary: POST /ta/v1/msp/provisioning/tenants/{tenantId}/suspend x-source: https://docs.cyrisma.com/api/partner-api parameters: - name: tenantid in: path required: true schema: type: string responses: '201': description: Success (status as documented) x-evidence: kind: documentation components: schemas: PostTaV1AuthClientTokenRequest: type: object properties: client_id: type: string client_secret: type: string required: - client_id - client_secret PostTaV1AuthClientTokenResponse: type: object properties: access_token: type: string expires_in: type: integer PatchTaV1MspAdminTenantsTenantidRequest: type: object properties: trial: type: boolean description: Set to false to convert a trial tenant to standard securitySchemes: bearer: type: http scheme: bearer security: - bearer: [] tags: - name: App - name: Partner - name: Ta