---
title: "Update an application"
method: PUT
path: "/api/v0/applications/{id}"
tags: ["Applications"]
---

# Update an application

`PUT /api/v0/applications/{id}`

## Request

- Base URL: `https://www.getonbrd.com`
- URL: `https://www.getonbrd.com/api/v0/applications/{id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/getonbrd/apis/get-on-board-api/docs/api/v0/applications/:id/put.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `id` integer, required

## Headers

- `Authorization` string

## Request body

- object
  - `job_id` string, required
  - `email` string, required
  - `description` string, required
  - `professional_background` string, required
  - `answers` string

## Response `200`

Updates an existing job application by its ID.

- object
  - `data` object, required
    - `id` string, required
    - `type` string, required
    - `attributes` object, required
      - `slug` string, required
      - `deleted` boolean, required
      - `read` boolean, required
      - `messages_count` integer, required
      - `notes_count` integer, required
      - `unlocked` boolean, required
      - `source_channel` 'boost' | 'talent_db' | 'invite' | 'getonbrd' | 'linkedin' | 'facebook' | 'twitter' | 'email' | 'chat' | 'slack' | 'notion' | 'github' | 'gitlab' | 'angel_list' | 'medium' | 'awesomefest' | 'blog' | 'youtube' | 'academy' | 'search' | 'instagram' | 'meetup' | 'google_jobs' | 'aggregator' | 'other' | 'null', nullable: Server-calculated application source. Null means no source was captured; omitted for locked applications. Also included in job.application.sent and job.application.withdrawn webhooks.
      - `unread_messages_from_webpro` integer, required
      - `unread_messages_from_company` integer, required
      - `discard_reason` unknown, required
      - `expected_salary` integer, required
      - `reason_to_apply` string, required
      - `professional_background` string, required
      - `academic_background` string, required
      - `sent_at` integer, required
      - `created_at` integer, required
      - `updated_at` integer, required
      - `job` object, required
        - `data` object, required
          - `id` integer, required
          - `type` string, required
      - `phase` object, required
        - `data` object, required
          - `id` integer, required
          - `type` string, required
      - `professional` object, required
        - `data` object, required
          - `id` integer, required
          - `type` string, required
      - `answers` object, required
        - `data` object[], required
          - `id` integer, required
          - `type` string, required
      - `messages` object, required
        - `data` unknown[], required
          - unknown
      - `notes` object, required
        - `data` unknown[], required
          - unknown

## Other responses

- `401`: Updates an existing job application by its ID.
- `404`: Updates an existing job application by its ID.
- `422`: Updates an existing job application by its ID.

---

[API](https://skmtc.dev/getonbrd/apis/get-on-board-api.md) - [All operations](https://skmtc.dev/getonbrd/apis/get-on-board-api/llms.txt) - [OpenAPI document](https://skmtc.dev/getonbrd/apis/get-on-board-api/revisions/f8405113049f?raw)
