List applicants awaiting your invite decision

GET
/opportunities/{opportunityId}/applicants

Applicants who passed screening and are waiting on your decision to invite them.

They are deliberately absent from GET /opportunities/{opportunityId}/submissions: an applicant here has not been invited yet, so they hold no submission status, and GET /submissions/{id} returns 404 for them. This collection is where they exist until you decide.

Act on one with POST /submissions/{submissionId}/invite or /decline. Inviting makes them screen_passed and starts their tasks; declining makes them screened_out. Either way they leave this collection and appear in the submissions listing from then on.

An opportunity on manual_review routes every qualified applicant here. One on auto_invite still routes an individual applicant here when a screening answer you marked review flags them, so poll this even when you did not opt into reviewing everyone.

Authorization<token>

API key as Bearer token: Authorization: Bearer

In: header

Path Parameters

opportunityId*string

Query Parameters

limit?integer
Default25
Range1 <= value <= 100
cursor?string

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://terac.com/api/external/v2/opportunities/string/applicants"
{
  "data": [
    {
      "id": "string",
      "opportunity_id": "string",
      "participant_id": "string",
      "screening_outcome": "passed",
      "screening_answers": [
        {
          "key": "string",
          "question": "string",
          "answer": [
            "string"
          ],
          "outcome": "qualify"
        }
      ],
      "created_at": "string",
      "updated_at": "string"
    }
  ],
  "pagination": {
    "next_cursor": "string",
    "has_more": true
  },
  "dashboard_url": "string"
}
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}
{
  "code": "NOT_FOUND",
  "message": "Not found",
  "issues": []
}
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}