Vitay.io API Reference

Welcome to the Vitay API documentation.

We implement the JSON API specification. Feel free to check the documenation here: jsonapi.org

You must add the Bearer token in your request. You must use the login endpoint to get this token.

The sandbox API is staging.api.vitay.io

Keep in mind the Vitay API documentation is still in beta. Some endpoints are subject to major refactoring due to RESTFul and JSON:API best practices implementation.

© 2023 Vitay.io
API Endpoint
https://api.vitay.io/api
Request Content-Types: application/json
Schemes: https
Version: 3.7.3

Authentication

Please refer to oauth in the side menu.

api

api

Show ping pong

GET /v3/ping

Check if the server is responding

200 OK

Pong

api

Set up environment variables

GET /v3/api/postman

Set up environment variables

200 OK

Return all variables for postman

reference_requests

Index all reference requests

GET /v1/public/reference_requests

Index all reference requests

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "notes": "string",
      "created_at": "string",
      "min_manager_references": "string",
      "filled": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  },
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Create reference request

POST /v1/public/reference_requests

Create a reference request. An email and a text message is sent to all references saved

data: object
type: string ReferenceRequest
attributes: object
notes: string
min_manager_references: string
relationships: object
question_set: object
type: string RerefenceRequest
id: string
candidate: object
type: string RerefenceRequest
id: string
Request Content-Types: application/json
Request Example
{
  "data": {
    "type": "string",
    "attributes": {
      "notes": "string",
      "min_manager_references": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "notes": "string",
      "created_at": "string",
      "min_manager_references": "string",
      "filled": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Send reminder

POST /v1/reminders/reference_request/{id}

Send reminder (email and text message) to candidate

id: string
in path

Identifier of the reminder

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "detail": "string"
  }
}

activities

Index all activities

GET /activities

Index all activities

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "id": "string",
      "trackable_type": "string",
      "trackable_id": "string",
      "owner_type": "string",
      "owner_id": "string",
      "recipient_type": "string",
      "recipient_id": "string",
      "key": "string",
      "parameters": "string",
      "created_at": "string",
      "updated_at": "string"
    },
    "relationships": {
      "trackable": {
        "type": "string",
        "id": "string"
      },
      "owner": {
        "type": "string",
        "id": "string"
      },
      "recipient": {
        "type": "string",
        "id": "string"
      }
    }
  },
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

users

Index all users

GET /v1/users

Index all users

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string"
    },
    "relationships": {
      "identifiable": {
        "type": "string",
        "id": "string"
      }
    }
  },
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Show specific user

GET /v1/users/{id}

Show specific user

id: string
in path

Identifier of the user

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string"
    },
    "relationships": {
      "identifiable": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Show logged user

GET /v1/users/me

Show logged user

id: string
in query

Identifier of the user

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string"
    },
    "relationships": {
      "identifiable": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

answers

Show specific answer

GET /v1/answers/{id}

Show specific answer

id: string
in path

Identifier of the answer

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "question": "string",
      "value": "string",
      "scale": "number",
      "language": "string",
      "category": "string",
      "type": "string",
      "comment": "string"
    },
    "relationships": {
      "question": "string",
      "value": "string",
      "scale": "number",
      "language": "string",
      "category": "string",
      "type": "string",
      "comment": "string"
    }
  }
}

Update an answer

PATCH /v1/answers/{id}

Update an answer

id: string
in path

Identifier of the answer

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "question": "string",
      "value": "string",
      "scale": "number",
      "language": "string",
      "category": "string",
      "type": "string",
      "comment": "string"
    },
    "relationships": {
      "answer_set": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

hiring_firms

Index all hiring firms

GET /v1/hiring_firms

Index all hiring firms

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": [
    {
      "type": "string",
      "id": "string",
      "attributes": {
        "name": "string",
        "logo_url": "string"
      }
    }
  ],
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Show specific hiring firm

GET /v1/hiring_firms/{id}

Show specific hiring firm

id: string
in path

Identifier of the hiring firm

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "name": "string",
      "logo_url": "string"
    }
  }
}

Update hiring firm

PATCH /v1/hiring_firms/{id}

Update hiring firm

data: object
id: string
type: string HiringFirm
attributes: object
name: string
id: string
in path

Identifier of the hiring firm

Request Content-Types: application/json
Request Example
{
  "data": {
    "id": "string",
    "type": "string",
    "attributes": {
      "name": "string"
    }
  }
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "name": "string",
      "logo_url": "string"
    }
  }
}

Delete hiring firm

DELETE /v1/hiring_firms/{id}

Delete hiring firm

data: object
id: string
type: string HiringFirm
id: string
in path

Identifier of the hiring firm

Request Content-Types: application/json
Request Example
{
  "data": {
    "id": "string",
    "type": "string"
  }
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": "object"
}

Update hiring firm logo

PATCH /v1/hiring_firms/{id}/logo

Update hiring firm logo

logo_file: file
id: string
in path

Identifier of the hiring firm

Request Content-Types: application/json
Request Example
{
  "logo_file": "file"
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "name": "string",
      "logo_url": "string"
    }
  }
}

Show specific hiring firm analytics

GET /v1/hiring_firms/{id}/analytics

Show specific hiring firm analytics

id: string
in path

Identifier of the hiring firm

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "total_candidates": "number",
      "total_references": "number",
      "completed_references": "number",
      "avg_reference_completion_time": "number",
      "avg_candidates_score": "number",
      "candidate_count_by_date": [
        {
          "date": "number"
        }
      ],
      "reference_count_by_date": [
        {
          "date": "number"
        }
      ],
      "top_recruiters": [
        {
          "name": "string",
          "total_references": "number",
          "completed_references": "number"
        }
      ]
    }
  }
}

profiles

Show specific candidate profile

GET /v1/profiles/{id}

Show specific candidate profile

id: string
in path

Identifier of the profile

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": [
    {
      "type": "string",
      "id": "string",
      "attributes": {
        "id": "string",
        "title": "string",
        "bio": "string",
        "job_title": "string",
        "street_address": "string",
        "city": "string",
        "province": "string",
        "is_active": "string",
        "created_at": "string",
        "updated_at": "string",
        "public_profile_url": "string",
        "industry": "string",
        "picture_url": "string",
        "has_user": "string"
      },
      "relationships": {
        "user": {
          "type": "string",
          "id": "string"
        },
        "experiences": [
          {
            "type": "string",
            "id": "string"
          }
        ],
        "educations": [
          {
            "type": "string",
            "id": "string"
          }
        ]
      }
    }
  ]
}

questions

Index all questions

GET /v1/questions

Index all questions

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "type": "string",
      "category": "string",
      "order": "number",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  },
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Create question

POST /v1/questions

Create a question

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "type": "string",
      "category": "string",
      "order": "number",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Show specific question

GET /v1/questions/{id}

Show specific question

id: string
in path

Identifier of the question

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "type": "string",
      "category": "string",
      "order": "number",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Update a question

PATCH /v1/questions/{id}

Update a question

id: string
in path

Identifier of the question

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "type": "string",
      "category": "string",
      "order": "number",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Delete a question

DELETE /v1/questions/{id}

Delete a question

id: string
in path

Identifier of the question

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "type": "string",
      "category": "string",
      "order": "number",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

verifications

Send reminder

POST /v1/reminders/verification/{id}

Send reminder (email and text message) to the verifier

id: string
in path

Identifier of the reminder

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "detail": "string"
  }
}

recruiters

Index all recruiters

GET /v2/recruiters

Index all recruiters

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": [
    {
      "type": "string",
      "id": "string",
      "attributes": {
        "id": "string",
        "hiring_firm_id": "string",
        "is_active": "string",
        "is_active_hf": "string",
        "created_at": "string",
        "notifications": "string",
        "is_root": "string"
      },
      "relationships": {
        "hiring_firm": {
          "type": "string",
          "id": "string"
        },
        "user": {
          "type": "string",
          "id": "string"
        },
        "candidates": [
          {
            "type": "string",
            "id": "string"
          }
        ]
      }
    }
  ],
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Show specific recruiter

GET /v1/recruiters/{id}

Show specific recruiter

id: string
in path

Identifier of the recruiter

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "id": "string",
      "hiring_firm_id": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "created_at": "string",
      "notifications": "string",
      "is_root": "string"
    },
    "relationships": {
      "hiring_firm": {
        "type": "string",
        "id": "string"
      },
      "user": {
        "type": "string",
        "id": "string"
      },
      "candidates": [
        {
          "type": "string",
          "id": "string"
        }
      ]
    }
  }
}

Update a recruiter

PATCH /v1/recruiters/{id}

Update a recruiter

id: string
in path

Identifier of the recruiter

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "id": "string",
      "hiring_firm_id": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "created_at": "string",
      "notifications": "string",
      "is_root": "string"
    },
    "relationships": {
      "hiring_firm": {
        "type": "string",
        "id": "string"
      },
      "user": {
        "type": "string",
        "id": "string"
      },
      "candidates": [
        {
          "type": "string",
          "id": "string"
        }
      ]
    }
  }
}

Delete a recruiter

DELETE /v1/recruiters/{id}

Delete a recruiter

id: string
in path

Identifier of the recruiter

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "id": "string",
      "hiring_firm_id": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "created_at": "string",
      "notifications": "string",
      "is_root": "string"
    },
    "relationships": {
      "hiring_firm": {
        "type": "string",
        "id": "string"
      },
      "user": {
        "type": "string",
        "id": "string"
      },
      "candidates": [
        {
          "type": "string",
          "id": "string"
        }
      ]
    }
  }
}

Show specific recruiter analytics

GET /v1/recruiters/{id}/analytics

Show specific recruiter analytics

id: string
in path

Identifier of the recruiter

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "id": "string",
      "hiring_firm_id": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "created_at": "string",
      "notifications": "string",
      "is_root": "string",
      "total_candidates": "number",
      "total_references": "number",
      "completed_references": "number",
      "avg_reference_completion_time": "number",
      "avg_candidates_score": "number"
    },
    "relationships": {
      "hiring_firm": {
        "type": "string",
        "id": "string"
      },
      "user": {
        "type": "string",
        "id": "string"
      },
      "candidates": [
        {
          "type": "string",
          "id": "string"
        }
      ]
    }
  }
}

Create recruiter (from root recruiter)

POST /v1/recruiters_with_user

Create a recruiter (from root recruiter)

data: object
attributes: object
hiring_firm_id: string
relationships: object
user: object
attributes: object
emai: string
Request Content-Types: application/json
Request Example
{
  "data": {
    "attributes": {
      "hiring_firm_id": "string"
    },
    "relationships": {
      "user": {
        "attributes": {
          "emai": "string"
        }
      }
    }
  }
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "id": "string",
      "hiring_firm_id": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "created_at": "string",
      "notifications": "string",
      "is_root": "string"
    },
    "relationships": {
      "hiring_firm": {
        "type": "string",
        "id": "string"
      },
      "user": {
        "type": "string",
        "id": "string"
      },
      "candidates": [
        {
          "type": "string",
          "id": "string"
        }
      ]
    }
  }
}

candidates

Index all candidates

GET /v3/candidates

Index all candidates

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": [
    {
      "type": "string",
      "id": "string",
      "attributes": {
        "internal_id": "string",
        "notes": "string",
        "first_name": "string",
        "last_name": "string",
        "email": "string",
        "country_code": "string",
        "phone": "string",
        "score": "number"
      },
      "relationships": {
        "references": [
          {
            "type": "string",
            "id": "string"
          }
        ],
        "added_by": {
          "type": "string",
          "id": "string",
          "filled": "string"
        },
        "reference_requests": [
          {
            "type": "string",
            "id": "string",
            "filled": "string"
          }
        ],
        "metadatum": {
          "type": "string",
          "id": "string"
        }
      }
    }
  ],
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Create a candidate

POST /v3/candidates

Create a candidate

data: object
attributes: object
internal_id: string

General-purpose Internal ID

notes: string
first_name: string

First name of the candidate

last_name: string

Last name name of the candidate

email: string

Email of the candidate

country_code: string
phone: string
score: number
Request Content-Types: application/json
Request Example
{
  "data": {
    "attributes": {
      "internal_id": "string",
      "notes": "string",
      "first_name": "string",
      "last_name": "string",
      "email": "string",
      "country_code": "string",
      "phone": "string",
      "score": "number"
    }
  }
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "internal_id": "string",
      "notes": "string",
      "first_name": "string",
      "last_name": "string",
      "email": "string",
      "country_code": "string",
      "phone": "string",
      "score": "number"
    },
    "relationships": {
      "references": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "added_by": {
        "type": "string",
        "id": "string",
        "filled": "string"
      },
      "reference_requests": [
        {
          "type": "string",
          "id": "string",
          "filled": "string"
        }
      ],
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Show specific candidate

GET /v3/candidates/{id}

Show specific candidate

id: string
in path

Identifier of the candidate

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "internal_id": "string",
      "notes": "string",
      "first_name": "string",
      "last_name": "string",
      "email": "string",
      "country_code": "string",
      "phone": "string",
      "score": "number"
    },
    "relationships": {
      "references": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "added_by": {
        "type": "string",
        "id": "string",
        "filled": "string"
      },
      "reference_requests": [
        {
          "type": "string",
          "id": "string",
          "filled": "string"
        }
      ],
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Update a candidate

PATCH /v3/candidates/{id}

Update a candidate

id: string
in path

Identifier of the candidate

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "internal_id": "string",
      "notes": "string",
      "first_name": "string",
      "last_name": "string",
      "email": "string",
      "country_code": "string",
      "phone": "string",
      "score": "number"
    },
    "relationships": {
      "references": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "added_by": {
        "type": "string",
        "id": "string",
        "filled": "string"
      },
      "reference_requests": [
        {
          "type": "string",
          "id": "string",
          "filled": "string"
        }
      ],
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Delete a candidate

DELETE /v3/candidates/{id}

Delete a candidate

id: string
in path

Identifier of the candidate

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "internal_id": "string",
      "notes": "string",
      "first_name": "string",
      "last_name": "string",
      "email": "string",
      "country_code": "string",
      "phone": "string",
      "score": "number"
    },
    "relationships": {
      "references": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "added_by": {
        "type": "string",
        "id": "string",
        "filled": "string"
      },
      "reference_requests": [
        {
          "type": "string",
          "id": "string",
          "filled": "string"
        }
      ],
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

question_sets

Index all question sets

GET /v1/question_sets

Index all question sets

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "title": "string",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Create question set

POST /v1/question_sets

Create question set

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "title": "string",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Show specific question set

GET /v1/question_sets/{id}

Show specific question set

id: string
in path

Identifier of the question set

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "title": "string",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Update a question set

POST /v1/question_sets/{id}

Update a question set

id: string
in path

Identifier of the question set

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "title": "string",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Delete a question set

DELETE /v1/question_sets/{id}

Delete a question set

id: string
in path

Identifier of the question set

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "title": "string",
      "language": "string"
    },
    "relationships": {
      "question_set": {
        "type": "string",
        "id": "string"
      },
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

references

Create reference

POST /v2/references

Create a reference

data: object
type: string Reference
id: string
attributes: object
internal_id: string
email: string
first_name: string
last_name: string
phone: string
country_code: string
Request Content-Types: application/json
Request Example
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "internal_id": "string",
      "email": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string"
    }
  }
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "created_at": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "relationship": "string",
      "permission_share_clients": "string",
      "contact_type": "string",
      "permission_share_candidate": "string",
      "language": "string",
      "company_name": "string",
      "is_pending": "string",
      "filled": "string",
      "filled_at": "string",
      "requested_by_id": "string",
      "requested_by": "string",
      "score": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    },
    "relationships": {
      "question_set": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "candidate": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Index all references

GET /v2/references

Index all references

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "created_at": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "relationship": "string",
      "permission_share_clients": "string",
      "contact_type": "string",
      "permission_share_candidate": "string",
      "language": "string",
      "company_name": "string",
      "is_pending": "string",
      "filled": "string",
      "filled_at": "string",
      "requested_by_id": "string",
      "requested_by": "string",
      "score": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    },
    "relationships": {
      "answer_set": {
        "type": "string",
        "id": "string"
      },
      "question_set": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "candidate": {
        "type": "string",
        "id": "string"
      },
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  },
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Update a reference

PATCH /v1/references/{id}

Update a reference

id: string
in path

Identifier of the reference

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "created_at": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "relationship": "string",
      "permission_share_clients": "string",
      "contact_type": "string",
      "permission_share_candidate": "string",
      "language": "string",
      "company_name": "string",
      "is_pending": "string",
      "filled": "string",
      "filled_at": "string",
      "requested_by_id": "string",
      "requested_by": "string",
      "score": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    }
  }
}

Show specific reference

GET /v1/references/{id}

Show specific reference

id: number
in path

(no description)

404 Not Found

Invalid Reference

Delete a reference

DELETE /v1/references/{id}

Delete a reference

id: string
in path

Identifier of the reference

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "created_at": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "relationship": "string",
      "permission_share_clients": "string",
      "contact_type": "string",
      "permission_share_candidate": "string",
      "language": "string",
      "company_name": "string",
      "is_pending": "string",
      "filled": "string",
      "filled_at": "string",
      "requested_by_id": "string",
      "requested_by": "string",
      "score": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    },
    "relationships": {
      "answer_set": {
        "type": "string",
        "id": "string"
      },
      "question_set": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "candidate": {
        "type": "string",
        "id": "string"
      },
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Show specific reference

GET /v1/public/references/{id}

Show specific reference

id: string
in path

Identifier of the reference

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "created_at": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "relationship": "string",
      "permission_share_clients": "string",
      "contact_type": "string",
      "permission_share_candidate": "string",
      "language": "string",
      "company_name": "string",
      "is_pending": "string",
      "filled": "string",
      "filled_at": "string",
      "requested_by_id": "string",
      "requested_by": "string",
      "score": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    },
    "relationships": {
      "answer_set": {
        "type": "string",
        "id": "string"
      },
      "question_set": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "candidate": {
        "type": "string",
        "id": "string"
      },
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Create reference answers

POST /v1/public/references

Create a reference answers to complete the question set previously sent

data: object
type: string Reference
id: string
attributes: object
answers: string[]
string
Request Content-Types: application/json
Request Example
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "answers": [
        "string"
      ]
    }
  }
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string",
      "created_at": "string",
      "first_name": "string",
      "last_name": "string",
      "phone": "string",
      "country_code": "string",
      "is_active": "string",
      "is_active_hf": "string",
      "relationship": "string",
      "permission_share_clients": "string",
      "contact_type": "string",
      "permission_share_candidate": "string",
      "language": "string",
      "company_name": "string",
      "is_pending": "string",
      "filled": "string",
      "filled_at": "string",
      "requested_by_id": "string",
      "requested_by": "string",
      "score": "string",
      "reminder": {
        "next_scheduled_at": "string",
        "latest_sent_at": "string",
        "count": "number",
        "count_exceeded": "string",
        "rate_exceeded": "string"
      }
    },
    "relationships": {
      "answer_set": {
        "type": "string",
        "id": "string"
      },
      "question_set": [
        {
          "type": "string",
          "id": "string"
        }
      ],
      "candidate": {
        "type": "string",
        "id": "string"
      },
      "metadatum": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

Send reminder

POST /v1/reminders/reference/{id}

Send reminder (email and text message) to reference

id: string
in path

Identifier of the reference

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "detail": "string"
  }
}

docx

Download PDF references report

GET /documents

Download PDF report

type: string candidates, invoices, resumes, references
in query

(no description)

id: string
in query

Identifier of the candidate/reference/invoice/resume

200 OK

OK

metadata

Index all metadata

GET /v3/metadata

Index all metadata

page[page]: number 1
in query

(no description)

page[page_size]: number 15
in query

(no description)

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "identifiable": "string",
      "ip_address": "string",
      "browser": "string",
      "browser_version": "string",
      "os": "string",
      "os_version": "string",
      "user_agent": "string",
      "created_at": "string",
      "updated_at": "string"
    },
    "relationships": {
      "identifiable": {
        "type": "string",
        "id": "string"
      }
    }
  },
  "pagination": {
    "current_page": "number",
    "total_pages": "number",
    "total_entries": "number",
    "page_size": "number"
  }
}

Create a metadataum

POST /v3/metadata

Create a metadataum

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "identifiable": {
        "type": "string",
        "id": "string"
      }
    },
    "relationships": {
      "identifiable": {
        "type": "string",
        "id": "string"
      }
    }
  }
}

oauth

Log in user

POST /v3/oauth/login

Log in user

email: string

User email

password: string

User password

Request Content-Types: application/json
Request Example
{
  "email": "string",
  "password": "string"
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "token": "string"
    }
  }
}

Find reset password

GET /v3/oauth/reset

Receive an email to reset the user password

email: string
in query

User email

200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "attributes": {
      "token": "string"
    }
  }
}

Request reset password

POST /v3/oauth/reset

Receive an email to reset the user password

email: string

User email

Request Content-Types: application/json
Request Example
{
  "email": "string"
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "key": "string",
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string"
    }
  }
}

Update password

PATCH /v3/oauth/reset

Update user password

email: string

User email

password: string

New password

reset_key: string

Reset key from

Request Content-Types: application/json
Request Example
{
  "email": "string",
  "password": "string",
  "reset_key": "string"
}
200 OK

OK

type
object
Response Example (200 OK)
{
  "data": {
    "type": "string",
    "id": "string",
    "attributes": {
      "email": "string"
    }
  }
}

Schema Definitions