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

# Update many forms

> Archive, unarchive, enable, disable, favorite or unfavorite many forms in one call. The call is all or nothing. If one ID is unknown or not allowed, no form changes. Enable and disable replace any submission deadline or limit set on the form. The `delete` operation also works and moves the forms to the trash, but prefer the bulk delete endpoint.

> [!NOTE]
>
> Replace `{your-subdomain}` with your workspace’s subdomain. \
> Learn how to find your subdomain in [Workspace subdomain](https://apidocs.neetoform.com/api/workspace-subdomain.md).


## OpenAPI

````yaml bundled/forms.yaml PATCH /forms/bulk_update
openapi: 3.0.3
info:
  title: NeetoForm APIs
  version: 2.0.0
servers:
  - description: NeetoForm APIs
    url: https://{your-subdomain}.neetoform.com/api/external/v2
    variables:
      your-subdomain:
        default: spinkart
        description: >-
          Replace **spinkart** with your [workspace's
          subdomain](/api/workspace-subdomain).
security: []
paths:
  /forms/bulk_update:
    patch:
      tags:
        - Forms
      summary: Update many forms
      description: >-
        Archive, unarchive, enable, disable, favorite or unfavorite many forms
        in one call. The call is all or nothing. If one ID is unknown or not
        allowed, no form changes. Enable and disable replace any submission
        deadline or limit set on the form. The `delete` operation also works and
        moves the forms to the trash, but prefer the bulk delete endpoint.
      parameters:
        - $ref: '#/components/parameters/api_key_header'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - ids
                - operation
              properties:
                ids:
                  $ref: '#/components/schemas/ids_body_property'
                operation:
                  type: string
                  description: What to do with the forms.
                  enum:
                    - archive
                    - unarchive
                    - enable
                    - disable
                    - favorite
                    - unfavorite
                    - delete
                  example: archive
      responses:
        '200':
          description: OK - Forms updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bulk_forms_response'
              example:
                forms:
                  - id: 6f1c2a9e-3b6d-4d8e-9a51-2f0c7d4e8b10
                    title: Customer feedback
                    is_published: true
                    state: published
                    created_at: '2026-10-28T09:12:44.512Z'
                    updated_at: '2026-10-28T10:02:11.004Z'
                    attempt_url: https://spinkart.neetoform.com/a1b2c3d4e5f6
                    submissions_count: 14
                    is_archived: true
                    is_disabled: false
                    is_suspended: false
                    created_by: Oliver Smith
                    is_favorite: false
        '400':
          description: Bad Request - `ids` or `operation` is missing
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_response'
              example:
                error: 'param is missing or the value is empty or invalid: ids'
        '404':
          description: Not Found - The form does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_response'
              example:
                error: Form does not exist.
        '422':
          description: Unprocessable Entity - `operation` is not allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_response'
              example:
                error: >-
                  operation must be one of: archive, unarchive, favorite,
                  unfavorite, enable, disable, delete.
components:
  parameters:
    api_key_header:
      in: header
      name: X-Api-Key
      description: >-
        Use the X-Api-Key header to provide your workspace API key. Refer to
        [Authentication](/api/authentication) for more information.
      required: true
      schema:
        type: string
        default: your-api-key
  schemas:
    ids_body_property:
      type: array
      description: IDs of the forms.
      items:
        type: string
      example:
        - 6f1c2a9e-3b6d-4d8e-9a51-2f0c7d4e8b10
    bulk_forms_response:
      type: object
      properties:
        forms:
          type: array
          items:
            $ref: '#/components/schemas/form_with_favorite'
    error_response:
      type: object
      properties:
        error:
          type: string
    form_with_favorite:
      allOf:
        - $ref: '#/components/schemas/form'
        - type: object
          properties:
            is_favorite:
              type: boolean
    form:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        is_published:
          type: boolean
        state:
          type: string
        created_at:
          $ref: '#/components/schemas/date_time_field'
        updated_at:
          $ref: '#/components/schemas/date_time_field'
        submissions_count:
          type: integer
        attempt_url:
          type: string
        is_archived:
          type: boolean
        is_disabled:
          type: boolean
        is_suspended:
          type: boolean
        created_by:
          type: string
    date_time_field:
      type: string
      format: date-time

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.