openapi: 3.2.0 info: description: "The Chorus API is a REST API that enables you to retrieve information from and perform actions in Chorus. The Chorus API supports the following use cases:\n\n1. Retrieve data about your users in Chorus\n2. Retrieve data about your engagements (meetings and dialer calls)\n3. Upload new recordings into Chorus\n4. Delete recordings from Chorus\n\n# Authentication\nThe Chorus API uses API tokens to authenticate requests. API tokens can be generated for each Chorus user, and is managed via the Personal Settings page within the Chorus application. For users to be able to create API token(s), their role as defined in Chorus must be permitted access to the Chorus API via roles & permissions settings. \nAuthentication is performed using the Authorization header, as in the the following example:\n\n```\ncurl -H \"Authorization:abcdefghijklmnopqrstuvwxyz0123456789\" https://chorus.ai/v3/engagements\n```\n\nAn API token must be associated with a registered user in Chorus to ensure control over data access and permissions, and to ensure traceability. During the early access period, please contact your Chorus customer success manager to obtain your personal API token.\n\n# Privacy and Data Access Control\n\nThe following controls apply when retrieving data or performing an action via the Chorus API.\n\n1. Recordings marked as private are not returned in API response. \n2. If enabled, data access control settings configured for the access key user applies to access via API. This means that in order to retrieve data on all recordings within Chorus, the users associated with the API token must also have access to all recordings.\n3. Permissions on actions a user may perform within the Chorus application as specified in roles & permissions settings also apply to actions performed via API." termsOfService: https://www.chorus.ai/terms title: Chorus Session management API version: 26.33.08 servers: - url: / - url: https://chorus.ai security: - basic: [] - bearer-token: [] - x-ziaccesstoken: [] tags: - name: Session management paths: /api/v1/sessions/current: delete: deprecated: false description: Invalidates the current session (if any). operationId: delete-api-v1-sessions-current parameters: [] responses: '204': description: Success '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' summary: Invalidates the current session (if any). tags: - Session management get: deprecated: false description: Returns the the status of the current session operationId: get-api-v1-sessions-current parameters: [] responses: '200': content: application/vnd.api+json: schema: $ref: '#/components/schemas/SessionDoc' description: Success '400': $ref: '#/components/responses/BadRequest' summary: Returns the status of the current session tags: - Session management /api/v1/sessions/exchange: post: deprecated: false description: Exchange a x-ziaccesstoken for a Chorus session cookie. operationId: post-api-v1-sessions-exchange parameters: [] requestBody: content: application/json: schema: properties: {} type: object required: true responses: '201': content: application/vnd.api+json: schema: $ref: '#/components/schemas/SessionDoc' description: Success '400': $ref: '#/components/responses/BadRequest' '409': $ref: '#/components/responses/Conflict' summary: Create session cookie from JWT token tags: - Session management /login: post: deprecated: false description: Establishes an authenticated session. operationId: post-login parameters: [] requestBody: content: multipart/form-data: schema: properties: email: description: Your email address. title: Email type: string password: description: Your password. format: password title: Password type: string required: - email - password type: object required: true responses: '200': content: application/json: {} description: Success summary: Establishes an authenticated session. tags: - Session management components: responses: BadRequest: content: application/vnd.api+json: schema: $ref: '#/components/schemas/Error' description: Bad request Conflict: content: application/vnd.api+json: schema: $ref: '#/components/schemas/Error' description: Conflict NotFound: content: application/vnd.api+json: schema: $ref: '#/components/schemas/Error' description: Not found schemas: Session: properties: attributes: properties: active: type: boolean customer_id: type: - integer - 'null' person_id: type: - integer - 'null' status: type: string user_id: type: - integer - 'null' required: - active - status type: object id: description: The unique ID of the session. example: '123' title: ID type: string type: description: The type of resource. enum: - session example: session title: Type type: string required: - attributes - type - id type: object Error: properties: errors: items: properties: code: type: - string - 'null' detail: type: - string - 'null' id: type: - string - 'null' source: properties: cookie: type: - string - 'null' header: type: - string - 'null' parameter: type: - string - 'null' path: type: - string - 'null' pointer: type: - string - 'null' type: - object - 'null' status: type: - string - 'null' title: type: - string - 'null' type: object type: array required: - errors type: object SessionDoc: properties: data: $ref: '#/components/schemas/Session' required: - data type: object securitySchemes: basic: description: HTTP basic authentication (for those APIs that support it). scheme: basic type: http bearer-token: description: A Chorus token or a signed JWT. scheme: bearer type: http x-ziaccesstoken: description: A ZoomInfo access token. in: header name: x-ziaccesstoken type: apiKey