Skip to content

One job, open or closed

GET
/v1/jobs/{id}
curl --request GET \
--url https://app.backspin.io/v1/jobs/bsj_8f3k2m9q \
--header 'Authorization: Bearer <token>'
id
required
string

A job id

OK

Media typeapplication/json
object
apply_url
required

The employer’s job page

string
categories
required

Backspin categories: account_executive, sales, electrical

Array<string>
closed_at
required

Null while the job is open

string | null format: date-time
company
required
object
domain
required

Filled once Backspin knows it

string | null
name
required
string
department
required
string | null
description_html
required

The employer’s HTML as published; sanitize before rendering. Null with fields=summary

string | null
employment_type
required
object
from
required

Ats (the employer’s structured field), title or description

string | null
value
required

Full_time, part_time, contract, temporary or internship

string | null
first_seen_at
required

When Backspin first saw the job

string format: date-time
flags
required
object
commission_only
required

The job says pay is commission only

boolean
door_to_door
required

The job says the work is selling door to door

boolean
retail_sales
required

The title sells on a store floor, car lot or showroom

boolean
id
required

Backspin’s id, stable forever

string
locations
required
Array<object>
object
city
required
string | null
country
required

ISO 3166-1 alpha-2 where known

string | null
region
required

State or province; US states as two-letter codes

string | null
text
required

As the employer wrote it, or the parts joined

string | null
metros
required

Backspin metro tags

Array<string>
pay
required
object
currency
required

ISO 4217

string | null
from
required

Ats: the employer’s structured pay; description: read from the job description

string | null
max
required
number | null format: double
min
required
number | null format: double
period
required

Year, month, week, day or hour

string | null
period_from
required

Ats, description or amount; amount: judged from the size of the amounts

string | null
text
required

The exact description text pay was read from, when from is description

string | null
posted_at
required

When the employer says it was posted; null when unstated

string | null format: date-time
seniority
required

Intern, entry, mid, senior, lead, manager, director, vp or executive, read from the title; null when the title names no level

string | null
source
required
object
job_id
required

The employer’s own id for the job on that platform

string
platform
required

The employer’s applicant tracking system

string
status
required
string
Allowed values: open closed
title
required
string
updated_at
required

When the listing last changed

string format: date-time
workplace
required
object
from
required

Ats (the employer’s structured field), location, title or description

string | null
value
required

Onsite, remote or hybrid

string | null

Example

{
"apply_url": "https://pyebarkerfire.wd1.myworkdayjobs.com/en-US/PB_V2/job/Denver-CO/Fire-Alarm-Technician_JR113627",
"categories": [
"electrical"
],
"company": {
"domain": "pyebarkerfs.com",
"name": "Pye-Barker Fire & Safety"
},
"department": "Service",
"description_html": "<p>Install and service fire alarm systems.</p>",
"employment_type": {
"from": "ats",
"value": "full_time"
},
"first_seen_at": "2026-10-28T18:00:00Z",
"flags": {
"commission_only": false,
"door_to_door": false,
"retail_sales": false
},
"id": "bsj_8f3k2m9q",
"locations": [
{
"city": "Denver",
"country": "US",
"region": "CO",
"text": "Denver, CO"
}
],
"metros": [
"denver"
],
"pay": {
"currency": "USD",
"from": "ats",
"max": 42,
"min": 32,
"period": "hour",
"period_from": "ats"
},
"posted_at": "2026-10-28T14:02:00Z",
"seniority": "senior",
"source": {
"job_id": "JR113627",
"platform": "workday"
},
"status": "open",
"title": "Fire Alarm Technician",
"updated_at": "2026-10-30T06:00:00Z",
"workplace": {
"from": "ats",
"value": "onsite"
}
}

Unauthorized

Media typeapplication/problem+json
object
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object> | null
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}

Not Found

Media typeapplication/problem+json
object
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object> | null
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}

Unprocessable Entity

Media typeapplication/problem+json
object
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object> | null
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}

Too Many Requests

Media typeapplication/problem+json
object
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object> | null
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}

Internal Server Error

Media typeapplication/problem+json
object
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object> | null
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}

Service Unavailable

Media typeapplication/problem+json
object
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object> | null
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}