Ashby Hiring Team API

The Hiring Team API from Ashby — 2 operation(s) for hiring team.

OpenAPI Specification

ashby-hiring-team-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: 1.0.0
  title: Ashby API Key Hiring Team 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: Hiring Team
paths:
  /hiringTeam.addMember:
    post:
      summary: hiringTeam.addMember
      description: "Adds an Ashby user to the hiring team at the application or job-level. \n\n**Requires the [`organizationWrite`](authentication#permissions-hiringteamaddmember) permission.**\n\nHiring team members can be added to a hiring team at the application, job, or opening level. \n"
      operationId: hiringteamaddmember
      tags:
      - Hiring Team
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
              - type: object
                title: Application-level
                required:
                - applicationId
                - teamMemberId
                - roleId
                properties:
                  applicationId:
                    allOf:
                    - description: The application to assign the user a role on.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  teamMemberId:
                    allOf:
                    - description: The id of the user to assign the role to.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  roleId:
                    allOf:
                    - description: The id of the hiring team role to assign.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
              - type: object
                title: Job-level
                required:
                - jobId
                - teamMemberId
                - roleId
                properties:
                  jobId:
                    allOf:
                    - description: The job to assign the user a role on.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  teamMemberId:
                    allOf:
                    - description: The id of the user to assign the role to.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  roleId:
                    allOf:
                    - description: The id of the hiring team role to assign.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
              - type: object
                title: Opening-level
                required:
                - openingId
                - teamMemberId
                - roleId
                properties:
                  openingId:
                    allOf:
                    - description: The opening to assign the user a role on.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  teamMemberId:
                    allOf:
                    - description: The id of the user to assign the role to.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  roleId:
                    allOf:
                    - description: The id of the hiring team role to assign.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
      responses:
        '200':
          description: Responses for the hiringTeam.addMember endpoint
          content:
            application/json:
              schema:
                oneOf:
                - title: Success response
                  allOf:
                  - $ref: '#/paths/~1job.info/post/responses/200/content/application~1json/schema/oneOf/0/allOf/0'
                  - type: object
                    properties:
                      results:
                        type: object
                        properties:
                          email:
                            $ref: '#/paths/~1candidate.create/post/requestBody/content/application~1json/schema/properties/email/allOf/0'
                          firstName:
                            type: string
                            example: Joey
                          lastName:
                            type: string
                            example: Joe
                          role:
                            type: string
                            example: Hiring Manager
                          userId:
                            $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                        required:
                        - userId
                        - firstName
                        - lastName
                        - email
                        - role
                    required:
                    - results
                - title: Error response
                  $ref: '#/paths/~1report.generate/post/responses/429/content/application~1json/schema'
  /hiringTeam.removeMember:
    post:
      summary: hiringTeam.removeMember
      description: "Removes an Ashby user from the hiring team at the application or job-level. \n\n**Requires the [`organizationWrite`](authentication#permissions-hiringteamremovemember) permission.**\n\nHiring team members can be removed from a hiring team at the application, job, or opening level. \n"
      operationId: hiringteamremovemember
      tags:
      - Hiring Team
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
              - type: object
                title: Application-level
                required:
                - applicationId
                - teamMemberId
                - roleId
                properties:
                  applicationId:
                    allOf:
                    - description: The application to unassign the user a role from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  teamMemberId:
                    allOf:
                    - description: The id of the user to unassign the role from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  roleId:
                    allOf:
                    - description: The id of the hiring team role to unassign from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
              - type: object
                title: Job-level
                required:
                - jobId
                - teamMemberId
                - roleId
                properties:
                  jobId:
                    allOf:
                    - description: The job to unassign the user a role from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  teamMemberId:
                    allOf:
                    - description: The id of the user to unassign the role from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  roleId:
                    allOf:
                    - description: The id of the hiring team role to unassign from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
              - type: object
                title: Opening-level
                required:
                - openingId
                - teamMemberId
                - roleId
                properties:
                  openingId:
                    allOf:
                    - description: The opening to unassign the user a role from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  teamMemberId:
                    allOf:
                    - description: The id of the user to unassign the role from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                  roleId:
                    allOf:
                    - description: The id of the hiring team role to unassign from.
                    - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
      responses:
        '200':
          description: Responses for the hiringTeam.removeMember endpoint
          content:
            application/json:
              schema:
                oneOf:
                - title: Success response
                  allOf:
                  - $ref: '#/paths/~1job.info/post/responses/200/content/application~1json/schema/oneOf/0/allOf/0'
                  - type: object
                    properties:
                      results:
                        $ref: '#/paths/~1hiringTeam.addMember/post/responses/200/content/application~1json/schema/oneOf/0/allOf/1/properties/results'
                    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.

        '