> ## 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 Timelines

> Browse moments from timelines. This endpoint can retrieve moments from a specific artist's timeline or browse the in•process collective timeline, 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 `collection` is provided: Returns all moments (tokens) of the specified collection address.
- When `artist` is provided: Returns moments from the specific artist's timeline (only moments administered by that artist address). The `type` parameter can be used to filter by admin relationship.
- When both `artist` and `collection` are omitted: Returns moments from the in•process collective timeline (moments that are being created, indexed).

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


## OpenAPI

````yaml GET /timeline
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:
  /timeline:
    get:
      summary: Browse moments from timelines
      description: >-
        Browse moments from timelines. This endpoint can retrieve moments from a
        specific artist's timeline or browse the in•process collective timeline,
        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 `collection` is provided: Returns all moments (tokens) of the
        specified collection address.

        - When `artist` is provided: Returns moments from the specific artist's
        timeline (only moments administered by that artist address). The `type`
        parameter can be used to filter by admin relationship.

        - When both `artist` and `collection` are omitted: Returns moments from
        the in•process collective timeline (moments that are being created,
        indexed).
      operationId: getTimeline
      parameters:
        - name: artist
          in: query
          description: >-
            Filter by admin address (only moments administered by this artist
            address). When provided, returns the artist timeline. When omitted,
            returns the in•process collective timeline.
          required: false
          schema:
            type: string
        - name: collection
          in: query
          description: >-
            Filter by collection address. When provided, returns all moments of
            the specified collection.
          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
        - name: hidden
          in: query
          description: >-
            If true, includes moments marked as hidden by the admin (default:
            false)
          required: false
          schema:
            type: boolean
            default: false
        - name: content_type
          in: query
          description: >-
            Filter by MIME type category (e.g. `audio`, `video`, `image`). Used
            to construct a MIME pattern filter.
          required: false
          schema:
            type: string
            example: audio
        - name: period
          in: query
          description: Filter moments by time period.
          required: false
          schema:
            type: string
            enum:
              - day
              - week
              - month
              - all
        - name: channel
          in: query
          description: Filter moments by the channel they were created through.
          required: false
          schema:
            type: string
            enum:
              - telegram
              - sms
              - web
              - api
        - name: type
          in: query
          description: >-
            Only applicable when `artist` is provided. Determines whether to
            show moments where the artist is the creator (`default`), moments
            co-administered with others (`mutual`), or both when not provided.
          required: false
          schema:
            type: string
            enum:
              - mutual
              - default
        - name: curated
          in: query
          description: 'If true, returns only curated moments (default: false).'
          required: false
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TimelineResponse'
              example:
                status: success
                moments:
                  - address: '0x06a701Ae65582B92Af48cDff45a8B20DcA3714cA'
                    token_id: '1'
                    chain_id: 8453
                    id: bceddfb3-28f2-49f3-8669-73a813a06b90
                    uri: ar://1wMmKuaz-VdxmruOQJuYS-3nfU3zlNKmPNpc79Ou-qM
                    creator:
                      address: '0x4b4324bcC6dB9380ABBbbD20B24A16C11FB5B38A'
                      username: artist
                    admins:
                      - '0x4b4324bcC6dB9380ABBbbD20B24A16C11FB5B38A'
                      - '0xAF1452d289E22FbD0DEA9d5097353c72a90FAC33'
                    hidden: []
                    created_at: '2025-06-07T20:41:35+00:00'
                    protocol: in_process
                    comments: 7
                    sale:
                      pricePerToken: '1000000000000000'
                      saleStart: 0
                      saleEnd: 0
                      maxTokensPerAddress: 0
                      fundsRecipient: '0x4b4324bcC6dB9380ABBbbD20B24A16C11FB5B38A'
                      type: fixedPrice
                pagination:
                  page: 1
                  limit: 1
                  total_pages: 2
        '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:
    TimelineResponse:
      type: object
      required:
        - status
        - moments
        - pagination
      properties:
        status:
          type: string
          description: Status of the request
          enum:
            - success
            - error
        moments:
          type: array
          description: List of moments in the timeline
          items:
            $ref: '#/components/schemas/Moment'
        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
    Moment:
      type: object
      required:
        - address
        - token_id
        - chain_id
        - id
        - uri
        - creator
        - admins
        - hidden
        - created_at
        - protocol
      properties:
        address:
          type: string
          description: Moment collection address
        token_id:
          type: string
          description: Token Id of Moment
        chain_id:
          type: integer
          description: Chain ID
        id:
          type: string
          format: uuid
          description: UUID of the moment
        uri:
          type: string
          description: Metadata URI
        creator:
          $ref: '#/components/schemas/DefaultAdmin'
        admins:
          type: array
          description: >-
            Array of admin wallet addresses. The creator appears here only if
            they still have admin permissions.
          items:
            type: string
        hidden:
          type: array
          description: >-
            Array of artist UUIDs who have hidden this moment from their
            timeline
          items:
            type: string
            format: uuid
        created_at:
          type: string
          format: date-time
          description: ISO timestamp when the moment was created
        protocol:
          type: string
          description: Protocol the collection belongs to
          enum:
            - in_process
            - catalog
            - sound.xyz
        comments:
          type: integer
          description: Total number of mint comments on this moment
          minimum: 0
        sale:
          oneOf:
            - $ref: '#/components/schemas/MomentSale'
            - type: 'null'
          description: >-
            Sale configuration for this moment. null when the moment has no sale
            record (non in_process protocol moments).
    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
    DefaultAdmin:
      type: object
      required:
        - address
      description: The original creator of the moment
      properties:
        address:
          type: string
          description: Wallet address of the creator
        username:
          type: string
          description: Username of the creator
    MomentSale:
      type: object
      required:
        - pricePerToken
        - saleStart
        - saleEnd
        - maxTokensPerAddress
        - fundsRecipient
        - type
      properties:
        pricePerToken:
          type: string
          description: >-
            Price per token in wei as a decimal integer string (e.g., "0" for
            free, "1000000000000000" for 0.001 ETH)
        saleStart:
          type: integer
          description: Unix timestamp for when the sale starts (0 = no start restriction)
        saleEnd:
          type: integer
          description: Unix timestamp for when the sale ends (0 = no end restriction)
        maxTokensPerAddress:
          type: integer
          description: Maximum number of tokens a single address can mint (0 = unlimited)
        fundsRecipient:
          type: string
          description: Address that receives the sale proceeds
        type:
          type: string
          enum:
            - fixedPrice
            - erc20Mint
          description: 'Sale type: fixedPrice for ETH sales, erc20Mint for ERC20 token sales'

````