Skip to main content
GET
/
api
/
auto-apply
/
applications
/
{id}
Get an application
curl --request GET \
  --url https://connect.jobo.world/api/auto-apply/applications/{id} \
  --header 'X-Api-Key: <api-key>'
{
  "id": "f3b9c2d1-7e8a-4b5c-9d0e-1f2a3b4c5d6e",
  "profile_id": "8c5e6d0a-9f2b-4c1e-b7a3-2f4d5e6a7b8c",
  "job_url": "https://boards.greenhouse.io/acme/jobs/4567890",
  "session_id": "6f1d2b3c-4a5e-4f60-9b7a-8c9d0e1f2a3b",
  "provider_id": "greenhouse",
  "provider_name": "Greenhouse",
  "status": "running",
  "failure_reason": null,
  "error": null,
  "steps_completed": 3,
  "fields_filled": 24,
  "duration_ms": 93000,
  "step_log": [
    {
      "step": 1,
      "action": "fill_fields",
      "status": "ok",
      "fields_count": 12,
      "error": null,
      "timestamp": "2026-07-05T10:15:42Z",
      "fields": [
        {
          "field_id": "f0:cards[123]_field0",
          "label": "Full name",
          "type": "text",
          "required": true,
          "value": "John W. Smith",
          "status": "filled",
          "options": [
            {
              "value": "us",
              "text": "United States"
            }
          ],
          "note": null,
          "error": null
        }
      ]
    }
  ],
  "created_at": "2026-07-05T10:15:00Z",
  "completed_at": null
}

Authorizations

X-Api-Key
string
header
required

API key provided by Jobo

Path Parameters

id
string<uuid>
required

Application ID

Response

The requested application

One automated application run. Created with status = running; poll GET /api/auto-apply/applications/{id} until it becomes submitted or failed.

id
string<uuid>

Application identifier.

Example:

"f3b9c2d1-7e8a-4b5c-9d0e-1f2a3b4c5d6e"

profile_id
string<uuid>

The profile the application was submitted with.

Example:

"8c5e6d0a-9f2b-4c1e-b7a3-2f4d5e6a7b8c"

job_url
string

The job posting's application URL.

Example:

"https://boards.greenhouse.io/acme/jobs/4567890"

session_id
string<uuid>

The underlying browser session driving this run.

Example:

"6f1d2b3c-4a5e-4f60-9b7a-8c9d0e1f2a3b"

provider_id
string

Detected ATS provider identifier. Empty until detection completes.

Example:

"greenhouse"

provider_name
string

Human-readable ATS provider name.

Example:

"Greenhouse"

status
enum<string>

Lifecycle of an asynchronous application run. running — being filled and submitted, keep polling; submitted — successfully submitted; failed — ended without submitting, see failure_reason and error.

Available options:
running,
submitted,
failed
Example:

"running"

failure_reason
enum<string> | null

Machine-readable terminal reason, set only when status is failed. login_required, captcha_required, redirected, redirect_required, and unsupported_provider are reserved — those situations report error until dedicated detection ships; treat the enum as open.

Available options:
login_required,
captcha_required,
expired,
redirected,
redirect_required,
unsupported_provider,
max_steps_reached,
stalled,
no_fields_found,
no_answers_generated,
error,
null
Example:

null

error
string | null

Human-readable failure detail, set only when status is failed.

Example:

null

steps_completed
integer

Number of form pages/steps the run got through.

Example:

3

fields_filled
integer

Total number of form fields filled across all steps.

Example:

24

duration_ms
integer<int64>

Wall-clock duration of the run in milliseconds.

Example:

93000

step_log
object[]

Per-step audit log of everything the run did.

created_at
string<date-time>

UTC timestamp the application was created.

Example:

"2026-07-05T10:15:00Z"

completed_at
string<date-time> | null

UTC timestamp the run finished, or null while status is running.

Example:

null