Ashby Interview Event API

The Interview Event API from Ashby — 1 operation(s) for interview event.

OpenAPI Specification

ashby-interview-event-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: 1.0.0
  title: Ashby API Key Interview Event API
  description: The public API for accessing resources in your Ashby instance.
  contact:
    name: Ashby Support
    url: https://app.ashbyhq.com/support
    email: support@ashbyhq.com
servers:
- url: https://api.ashbyhq.com
security:
- BasicAuth: []
tags:
- name: Interview Event
paths:
  /interviewEvent.list:
    post:
      summary: interviewEvent.list
      operationId: interviewEventList
      description: 'Lists interview events associated with an interview schedule


        See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples.


        **Requires the [`interviewsRead`](authentication#permissions-intervieweventlist) permission.**

        '
      tags:
      - Interview Event
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/paths/~1opening.list/post/requestBody/content/application~1json/schema'
              - type: object
                additionalProperties: false
                properties:
                  interviewScheduleId:
                    allOf:
                    - description: The unique ID of the interview schedule, for which to list interview events
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  expand:
                    type: array
                    description: "Choose to expand the result and include additional data for related objects. \n"
                    items:
                      type: string
                      enum:
                      - interview
                required:
                - interviewScheduleId
      responses:
        '200':
          description: Responses from the interviewEvent.list endpoint
          content:
            application/json:
              schema:
                oneOf:
                - title: Success response
                  allOf:
                  - $ref: '#/paths/~1job.list/post/responses/200/content/application~1json/schema/oneOf/0/allOf/0'
                  - type: object
                    properties:
                      results:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              allOf:
                              - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                              - description: The interview event's id
                              - example: 3ae2b801-19f6-41ef-ad28-214bd731948f
                            interviewId:
                              allOf:
                              - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                              - description: The interview's id
                              - example: ff6c7d9d-71e3-4c9c-88b1-28824980c276
                            interviewScheduleId:
                              allOf:
                              - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                              - description: The interview schedule's id
                              - example: 9d34f544-c150-4d70-91c4-e8b0b4a72846
                            interviewerUserIds:
                              type: array
                              deprecated: true
                              description: An array of the ids of all interviewers. Use the `interviewers` field instead for more detailed information.
                              items:
                                allOf:
                                - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                                - description: An array of the ids of all interviewers
                                - example: caea4d97-331d-46b1-a8e3-6b821c2214ef
                            interviewers:
                              type: array
                              description: An array of user objects representing the interviewers on this event, including their training role and pool information.
                              items:
                                allOf:
                                - $ref: '#/paths/~1user.info/post/responses/200/content/application~1json/schema/oneOf/0/allOf/1/properties/results'
                                - type: object
                                  description: Represents an interviewer assigned to an InterviewEvent with their training role and pool information.
                                  properties:
                                    trainingRole:
                                      type:
                                      - string
                                      - 'null'
                                      description: "The training-related role of the interviewer for this specific event. \nReturns null when the interviewer is qualified for interviewing (or Interviewer Training is not enabled). \nSee [Ashby Knowledge Base](https://docs.ashbyhq.com/interviewer-training) for more information.\n"
                                      enum:
                                      - Shadow
                                      - Reverse-Shadow
                                      example: Shadow
                                    interviewerPool:
                                      anyOf:
                                      - $ref: '#/paths/~1interviewerPool.list/post/responses/200/content/application~1json/schema/oneOf/0/allOf/1/properties/results/items'
                                      - type: 'null'
                                      description: The interviewer pool this interviewer belongs to, if applicable.
                                    isFeedbackRequired:
                                      type: boolean
                                      description: Whether feedback is required from this interviewer for this specific event.
                                required:
                                - trainingRole
                                - interviewerPool
                                - isFeedbackRequired
                            createdAt:
                              allOf:
                              - description: The time the interview event was created
                              - $ref: '#/paths/~1candidate.addEmailMessage/post/requestBody/content/application~1json/schema/properties/sentAt/allOf/0'
                              type: string
                            updatedAt:
                              allOf:
                              - description: The time the interview event was last updated
                              - $ref: '#/paths/~1candidate.addEmailMessage/post/requestBody/content/application~1json/schema/properties/sentAt/allOf/0'
                              type: string
                            startTime:
                              allOf:
                              - description: The time the interview event is scheduled to start
                              - $ref: '#/paths/~1candidate.addEmailMessage/post/requestBody/content/application~1json/schema/properties/sentAt/allOf/0'
                              type: string
                            endTime:
                              allOf:
                              - description: The time the interview event is scheduled to end
                              - $ref: '#/paths/~1candidate.addEmailMessage/post/requestBody/content/application~1json/schema/properties/sentAt/allOf/0'
                              type: string
                            feedbackLink:
                              type: string
                              format: uri
                              example: https://app.ashbyhq.com/interview-briefings/4736b6d2-5c97-43a6-a7c6-0228bf079411/feedback
                              description: The link to submit feedback for the interview event
                            location:
                              type:
                              - string
                              - 'null'
                              description: The location of the interview
                              example: Google Meet
                            meetingLink:
                              type:
                              - string
                              - 'null'
                              format: uri
                              description: A link to the virtual meeting (if the interview is being hosted virtually)
                            interviewerCalendarEventId:
                              type:
                              - string
                              - 'null'
                              description: The external calendar event id for the interviewer's calendar event
                            hasSubmittedFeedback:
                              type: boolean
                              description: Whether or not this interview has any feedback submitted
                            interview:
                              description: The interview associated with this event (only included if the expand parameter includes "interview")
                              $ref: '#/paths/~1interview.info/post/responses/200/content/application~1json/schema/oneOf/0/allOf/1/properties/results'
                            notetakerTranscriptId:
                              allOf:
                              - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                              - description: The id of the AI notetaker transcript recording for this interview event, if one exists. Use with the notetakerTranscript.info endpoint to fetch transcript metadata and a download URL. This feature is in Beta.  Contact us to enable transcript API access for your organization.
                              type:
                              - string
                              - 'null'
                            extraData:
                              $ref: '#/paths/~1location.create/post/requestBody/content/application~1json/schema/properties/extraData'
                          required:
                          - id
                          - interviewId
                          - interviewScheduleId
                          - interviewers
                          - createdAt
                          - updatedAt
                          - startTime
                          - endTime
                          - feedbackLink
                          - hasSubmittedFeedback
                    required:
                    - results
                - title: Error response
                  $ref: '#/paths/~1report.generate/post/responses/429/content/application~1json/schema'
components:
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
      description: "Use HTTP Basic Auth to authenticate with our API. You must send your API key with every request. \nPut your API key as the basic auth username and leave the password blank.\n"
    WebhookSignature:
      type: apiKey
      in: header
      name: Ashby-Signature
      description: '[Optional] If you provide a secret token when configuring your webhook, this will be used to create a digest of the JSON payload sent with each webhook request.

        The digest will be included in the request under the `Ashby-Signature` http header.


        It will look like this:

        `Ashby-Signature: sha256=f3124911d2956f10aa3a49c43a88bdf13bba846e94f0ae2bd7c034f90239bd04`


        The part before the = indicates the algorithm that was used to compute the hash digest.

        '