> This page is for Unified.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

The `Collection` object is used to represent one or more `Tickets`. There can be a hierarchy of `Collections`, in which a sub-collection belongs to a parent-collection.

### The Collection Object

```json
{
  "id": "string",
  "remote_id": "string",
  "created_at": "2023-01-01T00:00:00Z",
  "modified_at": "2023-01-01T00:00:00Z",
  "name": "string",
  "description": "string",
  "access_level": "PRIVATE",
  "collection_type": "LIST",
  "parent_collection": "string",
  "permissions": [
    {
      "id": "string",
      "remote_id": "string",
      "created_at": "2023-01-01T00:00:00Z",
      "modified_at": "2023-01-01T00:00:00Z",
      "effect": "ALLOWED",
      "actions": [
        "VIEW"
      ],
      "applied_to_users": [
        "string"
      ],
      "applied_to_roles": [
        "string"
      ],
      "applied_to_teams": [
        "string"
      ],
      "applied_to_collections": [
        "string"
      ],
      "remote_was_deleted": true,
      "field_mappings": {
        "organization_defined_targets": {
          "string": {}
        },
        "linked_account_defined_targets": {
          "string": {}
        }
      }
    }
  ],
  "collection_url": "string",
  "remote_created_at": "2023-01-01T00:00:00Z",
  "remote_updated_at": "2023-01-01T00:00:00Z",
  "remote_was_deleted": true,
  "field_mappings": {
    "organization_defined_targets": {
      "string": {}
    },
    "linked_account_defined_targets": {
      "string": {}
    }
  },
  "remote_data": [
    {
      "path": "string",
      "data": {}
    }
  ]
}
```

### Schema (`Collection`)

```yaml
components:
  schemas:
    CollectionAccessLevelEnum:
      type: string
      enum:
        - PRIVATE
        - COMPANY
        - PUBLIC
        - PARENT_COLLECTION
      title: CollectionAccessLevelEnum
    CollectionTypeEnum:
      type: string
      enum:
        - LIST
        - PROJECT
      title: CollectionTypeEnum
    EffectEnum:
      type: string
      enum:
        - ALLOWED
        - DENIED
        - INHERITED
      title: EffectEnum
    ActionsEnum:
      type: string
      enum:
        - VIEW
        - CREATE
        - EDIT
        - DELETE
      title: ActionsEnum
    PermissionFieldMappings:
      type: object
      properties:
        organization_defined_targets:
          type: object
          additionalProperties:
            description: Any type
        linked_account_defined_targets:
          type: object
          additionalProperties:
            description: Any type
      title: PermissionFieldMappings
    Permission:
      type: object
      properties:
        id:
          type: string
          format: uuid
        remote_id:
          type:
            - string
            - 'null'
          description: The third-party API ID of the matching object.
        created_at:
          type: string
          format: date-time
          description: The datetime that this object was created by Merge.
        modified_at:
          type: string
          format: date-time
          description: The datetime that this object was modified by Merge.
        effect:
          oneOf:
            - $ref: '#/components/schemas/EffectEnum'
            - type: 'null'
          description: Outcome of this permission rule for matching users.
        actions:
          type:
            - array
            - 'null'
          items:
            $ref: '#/components/schemas/ActionsEnum'
          description: >-
            Operations that this permission applies to. If the entity inherits
            permission from a parent entity, then this should be an empty array.
            In that case, the entity would inherit the parent entity’s actions.
        applied_to_users:
          type: array
          items:
            type: string
            format: uuid
        applied_to_roles:
          type: array
          items:
            type: string
            format: uuid
        applied_to_teams:
          type: array
          items:
            type: string
            format: uuid
        applied_to_collections:
          type: array
          items:
            type: string
            format: uuid
        remote_was_deleted:
          type: boolean
          description: >-
            Indicates whether or not this object has been deleted in the third
            party platform. Full coverage deletion detection is a premium
            add-on. Native deletion detection is offered for free with limited
            coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
        field_mappings:
          oneOf:
            - $ref: '#/components/schemas/PermissionFieldMappings'
            - type: 'null'
      description: >-
        # The Permission Object

        ### Description

        The `Permission` object is used to represent permissions that can be
        applied to users, roles, teams, collections, and tickets.


        ### Usage Example

        TODO
      title: Permission
    CollectionFieldMappings:
      type: object
      properties:
        organization_defined_targets:
          type: object
          additionalProperties:
            description: Any type
        linked_account_defined_targets:
          type: object
          additionalProperties:
            description: Any type
      title: CollectionFieldMappings
    RemoteData:
      type: object
      properties:
        path:
          type: string
          description: The third-party API path that is being called.
        data:
          description: >-
            The data returned from the third-party for this object in its
            original, unnormalized format.
      required:
        - path
      description: >-
        # The RemoteData Object

        ### Description

        The `RemoteData` object is used to represent the full data pulled from
        the third-party API for an object.


        ### Usage Example

        TODO
      title: RemoteData
    Collection:
      type: object
      properties:
        id:
          type: string
          format: uuid
        remote_id:
          type:
            - string
            - 'null'
          description: The third-party API ID of the matching object.
        created_at:
          type: string
          format: date-time
          description: The datetime that this object was created by Merge.
        modified_at:
          type: string
          format: date-time
          description: The datetime that this object was modified by Merge.
        name:
          type:
            - string
            - 'null'
          description: The collection's name.
        description:
          type:
            - string
            - 'null'
          description: The collection's description.
        access_level:
          oneOf:
            - $ref: '#/components/schemas/CollectionAccessLevelEnum'
            - type: 'null'
          description: >-
            The level of access a User has to the Collection and its
            sub-objects.
        collection_type:
          oneOf:
            - $ref: '#/components/schemas/CollectionTypeEnum'
            - type: 'null'
          description: >-
            The collection's type. This field is an open enum: Merge can return
            a value outside this list when an integration provides one it does
            not map. Pass `show_enum_origins=collection_type` to receive the
            integration's own value instead.
        parent_collection:
          type:
            - string
            - 'null'
          format: uuid
          description: The parent collection for this collection.
        permissions:
          type: array
          items:
            $ref: '#/components/schemas/Permission'
        collection_url:
          type:
            - string
            - 'null'
          format: uri
          maxLength: 2000
          description: The 3rd party url of the Collection.
        remote_created_at:
          type:
            - string
            - 'null'
          format: date-time
          description: When the third party's collection was created.
        remote_updated_at:
          type:
            - string
            - 'null'
          format: date-time
          description: When the third party's collection was updated.
        remote_was_deleted:
          type: boolean
          description: >-
            Indicates whether or not this object has been deleted in the third
            party platform. Full coverage deletion detection is a premium
            add-on. Native deletion detection is offered for free with limited
            coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
        field_mappings:
          oneOf:
            - $ref: '#/components/schemas/CollectionFieldMappings'
            - type: 'null'
        remote_data:
          type:
            - array
            - 'null'
          items:
            $ref: '#/components/schemas/RemoteData'
      title: Collection
```