Ashby Referral API

The Referral API from Ashby — 1 operation(s) for referral.

OpenAPI Specification

ashby-referral-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: 1.0.0
  title: Ashby API Key Referral 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: Referral
paths:
  /referral.create:
    post:
      summary: referral.create
      operationId: referralCreate
      description: 'Creates a referral


        **Requires the [`candidatesWrite`](authentication#permissions-referralcreate) permission.**

        '
      tags:
      - Referral
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                id:
                  allOf:
                  - description: The id of the referral form, from /referralForm.info
                  - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                creditedToUserId:
                  allOf:
                  - description: The id of the user submitting the referral
                  - $ref: '#/paths/~1interviewerPool.addUser/post/requestBody/content/application~1json/schema/properties/userId'
                fieldSubmissions:
                  type: array
                  items:
                    properties:
                      path:
                        type: string
                        description: The form field's "path" value
                      value:
                        type: string
                        description: 'The value depends on the field type:

                          - Most fields: A primitive value (string, number, boolean)

                          - Job field: An object with { title: job.title, value: job.id }

                          - Location field: An object with the following properties: `{ country: "USA", city: "San Francisco", region: "California" }`. You may provide any combination of these properties and we will attempt to geocode the location. For best results, provide all three properties.

                          - EducationHistory field: [Early Access] An array of objects with the following properties: `{ schoolName: "University of California, Berkeley", degree: "Bachelor of Science", major: "Computer Science", startDate: "2020-09-01", endDate: "2024-05-15", isCurrent: true }`. Only `schoolName` is required. We will attempt to match the school name to a known school in our database. If `isCurrent` is true, `endDate` must not be provided.

                          '
                    required:
                    - path
                    - value
                createdAt:
                  allOf:
                  - description: 'An ISO date string to set the referral''s createdAt timestamp to. When this value isn''t provided, the createdAt timestamp defaults to the time the referral was created.

                      '
                  - $ref: '#/paths/~1candidate.createNote/post/requestBody/content/application~1json/schema/properties/createdAt'
              required:
              - id
              - creditedToUserId
              - fieldSubmissions
      responses:
        '200':
          description: Responses for the referral.create 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: '#/webhooks/pushToHRIS/post/requestBody/content/application~1json/schema/properties/data/properties/application'
                    required:
                    - results
                - $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.

        '