# Jan 29, 2026

### API structure has changed

56 structure changes including:

56 Modifications

Modified

56Breaking

`DELETE /api/v1/assignments/{assignment}`

- Path
  - assignment path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`DELETE /api/v1/contractors/{contractor}`

- Path
  - contractor path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`DELETE /api/v1/entities/{entity}`

- Path
  - entity path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`DELETE /api/v1/files/certificates/{certificate}`

- Path
  - certificate path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`DELETE /api/v1/invoices/{invoice}`

- Path
  - invoice path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`DELETE /api/v1/jobs/{job}`

- Path
  - job path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`DELETE /api/v1/policies/{policy}`

- Path
  - policy path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`DELETE /api/v1/webhook_endpoints/{webhook_endpoint}`

- Path
  - webhook_endpoint path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/apply/sessions`

- Query
  - limit query parameterModified
    - Type is no longer `integer`
      Breaking
  - starting_after, ending_before, contractor query parametersModified
    - Type is no longer `string`
      Breaking
  - is_general_opt_in query parameterModified
    - Type is no longer `boolean`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/apply/sessions/{session}`

- Path
  - session path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/assignments`

- Query
  - limit query parameterModified
    - Type is no longer `integer`
      Breaking
  - starting_after, ending_before query parametersModified
    - Type is no longer `string`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/assignments/media`

- Query
  - policy_id query parameterModified
    - Type went from `string` to `object`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/assignments/{assignment}`

`GET /api/v1/category_codes`

- Query
  - limit query parameterModified
    - Type is no longer `integer`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/contractors`

- Query
  - limit query parameterModified
    - Type is no longer `integer`
      Breaking
  - starting_after, ending_before, email query parametersModified
    - Type is no longer `string`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/contractors/{contractor}`

`GET /api/v1/contractors/{contractor}/policies`

- Path
  - contractor path parameterModified
  - Type went from `string` to `object`
    Breaking
- Query
  - quote query parameterModified
    - Type is no longer `string`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/entities`

`GET /api/v1/entities/{entity}`

`GET /api/v1/events`

`GET /api/v1/events/{event}`

- Path
  - event path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/files/certificates`

- Query
  - limit query parameterModified
    - Type is no longer `integer`
      Breaking
  - starting_after, ending_before query parametersModified
    - Type is no longer `string`
      Breaking
  - expand query parameterModified
    - Type is no longer `array[string]`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/files/certificates/{certificate}`

- Path
  - certificate path parameterModified
  - Type went from `string` to `object`
    Breaking
- Query
  - expand query parameterModified
    - Type is no longer `array[string]`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/invoices`

`GET /api/v1/invoices/{invoice}`

`GET /api/v1/jobs`

`GET /api/v1/jobs/{job}`

`GET /api/v1/policies`

- Query
  - limit query parameterModified
    - Type is no longer `integer`
      Breaking
  - starting_after, ending_before, quote query parametersModified
    - Type is no longer `string`
      Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/policies/{policy}`

`GET /api/v1/quotes`

`GET /api/v1/quotes/{quote}`

- Path
  - quote path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking

`GET /api/v1/webhook_endpoints`

`GET /api/v1/webhook_endpoints/{webhook_endpoint}`

`POST /api/v1/apply/sessions`

- Response
  - 201 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`POST /api/v1/apply/sessions/{session}/expire`

`POST /api/v1/assignments`

`POST /api/v1/assignments/cancel`

- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`POST /api/v1/assignments/media`

`POST /api/v1/contractors`

`POST /api/v1/contractors/{contractor}/login_link`

`POST /api/v1/entities`

`POST /api/v1/files/certificates`

- Response
  - 201 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - multipart/form-data content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`POST /api/v1/invoices`

`POST /api/v1/jobs`

`POST /api/v1/policies`

`POST /api/v1/quotes`

`POST /api/v1/webhook_endpoints`

`PUT /api/v1/apply/sessions/{session}`

- Path
  - session path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/assignments/{assignment}`

- Path
  - assignment path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/contractors/{contractor}`

- Path
  - contractor path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/entities/{entity}`

- Path
  - entity path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/invoices/{invoice}`

- Path
  - invoice path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/jobs/{job}`

- Path
  - job path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/policies/{policy}`

- Path
  - policy path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/quotes/{quote}`

- Path
  - quote path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking

`PUT /api/v1/webhook_endpoints/{webhook_endpoint}`

- Path
  - webhook_endpoint path parameterModified
  - Type went from `string` to `object`
    Breaking
- Response
  - 200 responseModified
    - application/json content typeRemoved
      - Removing a resource is always breaking unless it was deprecated before
        Breaking
- Body
  - application/json content typeRemoved
    - Removing a resource is always breaking unless it was deprecated before
      Breaking
