---
title: "Update Custom Object"
method: PATCH
path: "/custom_objects/{id}"
tags: ["Custom Objects"]
---

# Update Custom Object

`PATCH /custom_objects/{id}`

## Request

- Base URL: `https://secure.fleetio.com/api`
- URL: `https://secure.fleetio.com/api/custom_objects/{id}`
- Auth: API key in header `Authorization` and API key in header `Account-Token`
- TypeScript: <https://skmtc.dev/fleetio/apis/fleetio-developer-api/docs/custom_objects/:id/patch.ts> (a function with typed inputs; its response is checked against the schema)

Updates an existing Custom Object on your account.

## Path parameters

- `id` string, required

## Request body

- object
  - `custom_object` object, required
    - `custom_fields` object: The custom field values to update on the Custom Object. Allowed keys and value formats depend on the object's Custom Object Template.

## Response `200`

OK

- CustomObject: A Custom Object record.
  - `id` integer, required
  - `custom_object_template_id` integer, required: The Fleetio id of the template this object belongs to.
  - `created_at` string, date-time, required
  - `custom_fields` CustomFields, nullable, required: *Full details on working with Custom Fields [here](/docs/overview/custom-fields).
  - `updated_at` string, date-time, required
  - `comments_count` integer, required: The number of comments associated with this Custom Object.
  - `documents_count` integer, required: The number of documents attached to this Custom Object.
  - `images_count` integer, required: The number of images attached to this Custom Object.
  - `custom_field_associations` CustomObjectCustomFieldAssociation[], required
    - `custom_field_id` integer, required: The Fleetio id of the associated Custom Field.
    - `id` integer, required
    - `reference_id` integer, required: The Fleetio id of the associated record.
    - `reference_type` 'Contact' | 'Equipment' | 'Vehicle' | 'Vendor', required
    - `reference` union: The associated record. The shape depends on `reference_type`.
      - object, nullable: A Contact
        - `id` integer
        - `email` string, nullable: The Contact's email address.
        - `name` string, nullable: The Contact's full name.
        - `group_id` integer, nullable: If this Contact belongs to a [Group](/docs/api/groups), this will be the Fleetio ID of that `Group`.
        - `employee` boolean, nullable: Whether or not the Contact is an employee.
        - `employee_number` string, nullable: The employee number of the Contact.
        - `default_image_url` string, nullable: The URL of the Contact's default image/profile photo, if any.
      - object: A Vehicle
        - `id` integer, required
        - `name` string, required: This vehicle's name.
        - `color` string, nullable: The color of this Vehicle.
        - `license_plate` string, nullable: The license plate number of this Vehicle.
        - `vin` string, nullable: The Vehicle Identification Number of this Vehicle.
        - `year` string, nullable: This Vehicle's model year.
        - `make` string, nullable: The name of this Vehicle's manufacturer.
        - `model` string, nullable: The name of the model of this Vehicle.
        - `trim` string, nullable: The trim level of this Vehicle.
        - `registration_expiration_month` integer, nullable: The month in which this Vehicle's registration expires.
        - `registration_state` string, nullable: The state, province, or territory in which this Vehicle is registered.
        - `default_image_url_small` string, nullable: The URL of a small-sized version of the default image for this Vehicle.
      - object, nullable: A Vendor
        - `name` string, required: The name of the Vendor.
        - `phone` string, nullable, required: The phone number of the Vendor.
        - `city` string, nullable, required: The city of the Vendor.
        - `region` string, nullable, required: The region, state, province, or territory of the Vendor.
        - `postal_code` string, nullable, required: The postal code or ZIP code of the Vendor.
        - `country` string, nullable, required: The country of the Vendor.
        - `external_id` string, nullable, required: The external identifier of the Vendor.
      - object, nullable
        - `id` integer, required
        - `name` string, required: The name for this Equipment.
        - `brand` string, nullable, required: The name of the brand which makes this Equipment.
        - `model` string, nullable, required: The model name of this Equipment.
        - `serial_number` string, nullable, required: The serial number of this Equipment.
  - `attachment_permissions` AttachmentPermissions, nullable, required
    - `read_photos` boolean: Indicates whether the user has read permission for photos.
    - `manage_photos` boolean: Indicates whether the user has permission to manage (eg. upload, delete) photos.
    - `read_documents` boolean: Indicates whether the user has read permission for documents.
    - `manage_documents` boolean: Indicates whether the user has permission to manage (eg. upload, delete) documents.
  - `permissions` CustomObjectPermissions, required: What the requesting user may do with this Custom Object record. Row-level restrictions are accounted for, so these can differ from record to record within the same Custom Record type.
    - `update` boolean, required: Indicates whether the user may edit this record.
    - `destroy` boolean, required: Indicates whether the user may delete this record.

## Other responses

- `401`: Request could not be authenticated
- `403`: Insufficient permission to perform this operation
- `404`: The requested resource could not be located
- `422`: Unprocessable Entity
- `500`: Something unexpected happened

## Changes

- **2026-11-06** `49558d744bd7`: 1 info
  - added the required property `permissions` to the response with the `200` status
- **2026-06-16** `4098a1c81821`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/fleetio/apis/fleetio-developer-api/changes/custom_objects/:id/patch.md)

---

[API](https://skmtc.dev/fleetio/apis/fleetio-developer-api.md) - [All operations](https://skmtc.dev/fleetio/apis/fleetio-developer-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fleetio/apis/fleetio-developer-api/revisions/49558d744bd7?raw)
