Skip to main content
GET
/
vacancies
List jobs
curl --request GET \
  --url https://api.gospott.com/vacancies \
  --header 'x-api-key: <api-key>'
{
  "items": [
    {
      "id": "<string>",
      "client": {
        "client": {
          "id": "<string>",
          "name": "<string>",
          "description": "<string>",
          "domain": "<string>",
          "logoUrl": "<string>"
        }
      },
      "name": {
        "name": "<string>"
      },
      "description": {
        "description": "<string>"
      },
      "stage": {
        "stage": {
          "id": "<string>",
          "order": 123,
          "name": "<string>",
          "colorHex": "<string>",
          "isOpen": true
        }
      },
      "createdAt": {
        "createdAt": "2023-11-07T05:31:56Z"
      },
      "startAt": {
        "startAt": "2023-11-07T05:31:56Z"
      },
      "endAt": {
        "endAt": "2023-11-07T05:31:56Z"
      },
      "salaryRange": {
        "salaryRange": {
          "min": 123,
          "max": 123
        }
      },
      "location": {
        "location": {
          "street1": "<string>",
          "street2": "<string>",
          "postalCode": "<string>",
          "city": "<string>",
          "region": "<string>",
          "state": "<string>",
          "country": "<string>",
          "rawCityCountry": "<string>",
          "latitude": 123,
          "longitude": 123,
          "formattedAddress": "<string>"
        }
      },
      "team": {
        "team": [
          {
            "userId": "<string>",
            "name": "<string>",
            "email": "jsmith@example.com",
            "avatarUrl": "<string>",
            "deactivatedAt": "2023-11-07T05:31:56Z"
          }
        ]
      },
      "employmentType": {},
      "locationType": {},
      "clientTeam": {
        "clientTeam": [
          {
            "id": "<string>",
            "firstName": "<string>",
            "lastName": "<string>",
            "middleName": "<string>",
            "secondLastName": "<string>",
            "avatarUrl": "<string>",
            "candidateId": "<string>",
            "companyId": "<string>",
            "companyName": "<string>",
            "companyLogoUrl": "<string>",
            "jobTitle": "<string>",
            "department": "<string>",
            "emails": [
              {
                "email": "jsmith@example.com",
                "isPrimary": true
              }
            ],
            "phoneNumbers": [
              {
                "phoneNumber": "<string>",
                "isPrimary": true
              }
            ]
          }
        ]
      },
      "scorecard": {
        "scorecards": [
          {
            "groupName": "<string>",
            "attributes": [
              {
                "attribute": "<string>"
              }
            ]
          }
        ]
      },
      "nextTaskDue": {
        "nextTaskDue": {
          "id": "<string>",
          "content": "<string>",
          "dueDate": "2023-11-07T05:31:56Z"
        }
      },
      "jobBoards": [
        {
          "id": "<string>"
        }
      ]
    }
  ],
  "pageInfo": {
    "nextCursor": "<string>",
    "hasNextPage": true
  }
}

Documentation Index

Fetch the complete documentation index at: https://api-docs.spott.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

x-api-key
string
header
required

API key for authentication. Get your API key from Settings → API Keys in your Spott dashboard.

Query Parameters

limit
integer
default:25

Number of jobs to return per page (min: 1, max: 50, default: 25).

Required range: 1 <= x <= 50
Example:

25

cursor
string

Base64-encoded cursor for pagination. Use the nextCursor value from a previous response to fetch the next page. Omit for the first page.

Example:

"eyJtb2RpZmllZEF0IjoiMjAyNC0xMS0wNlQxMDozMDowMC4wMDBaIiwiaWQiOiJ2YWNhbmN5LTEyMyJ9"

modifiedSince
default:1970-01-01T00:00:00.000Z

Filter jobs by sync watermark on or after this date. Useful for incremental synchronization. Defaults to beginning of time if not provided.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Example:

"2024-11-01T00:00:00.000Z"

modifiedUntil

Filter jobs by sync watermark on or before this date. Useful for bounded synchronization snapshots. If omitted, no upper bound is applied.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Example:

"2024-11-30T23:59:59.999Z"

companyIds
string[]

Filter jobs by company IDs.

Example:
["company-123", "company-456"]
candidateEmailAddresses
string<email>[]

Filter jobs by candidate email addresses. Returns jobs that have at least one application from a candidate with a matching email.

Required array length: 1 - 25 elements
Pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
Example:
["candidate@example.com"]
include
enum<string>[]

Optional related data to include in the response. Available options: jobBoards.

Available options:
jobBoards
Example:
["jobBoards"]

Response

Successfully retrieved jobs. Returns items array with pagination info containing cursor for the next page.

items
object[]
required
pageInfo
object
required