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

# Browsing the Collections

> Browse collections from the In•Process protocol. This endpoint can retrieve collections from a specific artist or browse the in•process collective collections, depending on whether the `artist` parameter is provided. Supports pagination for efficient browsing.

**This is a public endpoint and does not require authentication.**

Endpoint behavior:
- When `artist` is provided: Returns collections from the specific artist (only collections created by that artist address).
- When `artist` is omitted: Returns collections from the in•process collective collections.

<Note>
  This endpoint is **public** and does not require authentication. You can browse collections without providing any authorization headers.
</Note>


## OpenAPI

````yaml GET /collections
openapi: 3.1.0
info:
  title: In•Process API
  description: >-
    The In•Process API enables browsing and managing moments from timelines.
    Retrieve moments from a specific artist's timeline, browse the in•process
    collective timeline, or filter by collection. The API supports creating
    moments, managing collections, handling payments, and interacting with the
    In•Process protocol ecosystem.
  version: 1.0.0
servers:
  - url: https://api.inprocess.world/api
    description: Production server
security: []
paths:
  /collections:
    get:
      summary: Browse collections
      description: >-
        Browse collections from the In•Process protocol. This endpoint can
        retrieve collections from a specific artist or browse the in•process
        collective collections, depending on whether the `artist` parameter is
        provided. Supports pagination for efficient browsing.


        **This is a public endpoint and does not require authentication.**


        Endpoint behavior:

        - When `artist` is provided: Returns collections from the specific
        artist (only collections created by that artist address).

        - When `artist` is omitted: Returns collections from the in•process
        collective collections.
      operationId: getCollections
      parameters:
        - name: artist
          in: query
          description: >-
            Filter by artist address (collections created by this artist). When
            provided, returns the artist's collections. When omitted, returns
            the in•process collective collections.
          required: false
          schema:
            type: string
        - name: limit
          in: query
          description: 'Number of records per page (max: 100)'
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 100
        - name: page
          in: query
          description: The page number to retrieve
          required: false
          schema:
            type: integer
            minimum: 1
            default: 1
        - name: chain_id
          in: query
          description: >-
            Filter by chain ID. When omitted, returns moments from all
            production chains (Ethereum mainnet: 1, Base: 8453).
          required: false
          schema:
            type: integer
            example: 8453
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollectionsResponse'
              example:
                status: success
                collections:
                  - address: '0x06a701Ae65582B92Af48cDff45a8B20DcA3714cA'
                    chainId: 8453
                    name: My Collection
                    uri: ar://1wMmKuaz-VdxmruOQJuYS-3nfU3zlNKmPNpc79Ou-qM
                    creator:
                      address: '0x4b4324bcC6dB9380ABBbbD20B24A16C11FB5B38A'
                      username: artist name 1
                    created_at: '2025-06-07T20:41:35+00:00'
                    updated_at: '2025-08-12T12:28:41+00:00'
                    protocol: in_process
                pagination:
                  page: 1
                  limit: 100
                  total_pages: 1
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security: []
components:
  schemas:
    CollectionsResponse:
      type: object
      required:
        - status
        - collections
        - pagination
      properties:
        status:
          type: string
          description: Status of the request
          enum:
            - success
            - error
        collections:
          type: array
          description: List of collection records
          items:
            $ref: '#/components/schemas/Collection'
        pagination:
          $ref: '#/components/schemas/Pagination'
    Error:
      type: object
      required:
        - status
        - message
      properties:
        status:
          type: string
          enum:
            - error
          description: Error status
        message:
          type: string
          description: Error message
        errors:
          type: array
          description: >-
            Optional array of field-level validation errors. Typically included
            in 400 Bad Request responses for validation errors.
          items:
            type: object
            required:
              - field
              - message
            properties:
              field:
                type: string
                description: The field name that failed validation
              message:
                type: string
                description: The validation error message for this field
    Collection:
      type: object
      required:
        - address
        - chainId
        - name
        - uri
        - creator
        - created_at
        - updated_at
        - protocol
      properties:
        address:
          type: string
          description: Contract address of the collection
        chainId:
          type: integer
          description: Chain ID where the collection exists
        name:
          type: string
          description: Collection name
        uri:
          type: string
          description: Metadata URI
        creator:
          $ref: '#/components/schemas/CollectionDefaultAdmin'
        created_at:
          type: string
          format: date-time
          description: ISO timestamp when the collection was created
        updated_at:
          type: string
          format: date-time
          description: ISO timestamp when the collection was updated
        protocol:
          type: string
          description: Protocol the collection belongs to
          enum:
            - in_process
            - catalog
            - sound.xyz
    Pagination:
      type: object
      required:
        - page
        - limit
        - total_pages
      description: Pagination metadata for the response
      properties:
        page:
          type: integer
          description: Current page number
        limit:
          type: integer
          description: Number of moments per page
        total_pages:
          type: integer
          description: Total number of pages available
    CollectionDefaultAdmin:
      type: object
      required:
        - address
      description: Original admin set at collection creation
      properties:
        address:
          type: string
          description: Address of the creator
        username:
          type: string
          description: Username of the creator, if available
          nullable: true

````