> ## Documentation Index
> Fetch the complete documentation index at: https://docs.item.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Update multiple fields

> Updates one or more fields on an existing object in a single request.

Supports both system fields (name, email, phone, etc.) and custom fields.
Fields not included in the request are left unchanged.




## OpenAPI

````yaml /openapi.yaml patch /api/objects/{objectType}
openapi: 3.1.0
info:
  title: item API
  description: >
    The item API provides full CRUD access to your organization's data — People,
    Companies, and Custom Objects.


    Use it to:

    - Push structured data into item on a schedule

    - Sync custom field values across your stack

    - Pull filtered records and pre-configured views

    - Use item as your source of truth for customer data


    ## Authentication


    All requests require an API key passed in the `x-api-key` header.


    You can generate an API key from **Settings > System > API Key** in your
    item workspace.


    ```bash

    curl -H "x-api-key: sk_live_..." https://app.useitem.io/api/objects/contacts

    ```
  version: 1.0.0
  contact:
    name: item Support
servers:
  - url: https://app.useitem.io
    description: Production
  - url: http://localhost:3000
    description: Local development
security:
  - apiKey: []
tags:
  - name: Objects
    description: Create, read, update, and delete People, Companies, and Custom Objects.
  - name: Schema
    description: Discover available object types and their field definitions.
  - name: Users
    description: List organization members and their access levels.
  - name: Views
    description: List and execute pre-configured views to pull filtered data.
  - name: Batch
    description: Bulk create or update objects for high-frequency sync operations.
  - name: Webhooks
    description: Trigger skills (AI agents) via HTTP webhooks from external systems.
paths:
  /api/objects/{objectType}:
    parameters:
      - $ref: '#/components/parameters/objectType'
    patch:
      tags:
        - Objects
      summary: Update multiple fields
      description: >
        Updates one or more fields on an existing object in a single request.


        Supports both system fields (name, email, phone, etc.) and custom
        fields.

        Fields not included in the request are left unchanged.
      operationId: updateObject
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                id:
                  type: integer
                  description: Record ID (required unless using `email` for contacts)
                  example: 123
                email:
                  type: string
                  description: Contact email (alternative to `id`, contacts only)
                  example: alex@acme.com
                name:
                  type: string
                  description: Update the object name
                  example: Alex M. Johnson
                fields:
                  type: object
                  additionalProperties: true
                  description: Key-value pairs of fields to update
                  example:
                    role: Senior Engineer
                    custom_score: 100
                    industry: Technology
                profile_image_url:
                  type: string
                  format: uri
      responses:
        '200':
          description: Object updated
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ObjectRecord'
        '400':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Object not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  parameters:
    objectType:
      name: objectType
      in: path
      required: true
      description: >
        The object type slug. Use `contacts` for People, `companies` for
        Companies,

        or the slug of a Custom Object (e.g., `deals`, `tickets`).


        Singular forms (`contact`, `company`) are also accepted.
      schema:
        type: string
      examples:
        contacts:
          value: contacts
          summary: People
        companies:
          value: companies
          summary: Companies
        custom:
          value: deals
          summary: Custom object
  schemas:
    ObjectRecord:
      type: object
      description: >
        A flat object containing all fields. System fields (name, email, phone,
        etc.) and

        custom fields are merged into a single level — the `custom_fields` JSON
        column is

        flattened so every field is a top-level key.
      properties:
        id:
          type: integer
          description: Unique record ID
          example: 123
        name:
          type: string
          example: Alex Johnson
        email:
          type: string
          example: alex@acme.com
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      additionalProperties: true
    Error:
      type: object
      properties:
        error:
          type: string
          example: Object not found
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: Your organization's API key (starts with `sk_live_`)

````