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

# Builder attributed fills

> Individual fills attributed to the builder within a lookback window (clamped to 90d), with optional exact-coin and wallet filters. Each fill carries price, size, USD volume, realized PnL, the builder fee paid, and the order id it attributes to. Trigger-order fills (stop/TP) are not yet attributed, so this feed slightly undercounts versus ledger revenue; see the response's dataNotes.



## OpenAPI

````yaml /api-reference/openapi.json get /api/public/v1/builders/{builder}/fills
openapi: 3.1.0
info:
  title: coinversa-api
  version: 0.1.0
servers:
  - url: https://api.coinversa.ai
    description: Production
security: []
paths:
  /api/public/v1/builders/{builder}/fills:
    get:
      tags:
        - Builder Analytics
      summary: Builder attributed fills
      description: >-
        Individual fills attributed to the builder within a lookback window
        (clamped to 90d), with optional exact-coin and wallet filters. Each fill
        carries price, size, USD volume, realized PnL, the builder fee paid, and
        the order id it attributes to. Trigger-order fills (stop/TP) are not yet
        attributed, so this feed slightly undercounts versus ledger revenue; see
        the response's dataNotes.
      operationId: get-api-public-v1-builders-by-builder-fills
      parameters:
        - description: Builder address (0x-hex)
          in: path
          name: builder
          required: true
          schema:
            description: Builder address (0x-hex)
            type: string
        - description: Lookback window like 30m, 6h, 7d (clamped to 90d)
          explode: false
          in: query
          name: since
          schema:
            default: 24h
            description: Lookback window like 30m, 6h, 7d (clamped to 90d)
            type: string
        - description: 'Optional exact coin filter (BTC, xyz:GOLD, @123, #10010)'
          explode: false
          in: query
          name: coin
          schema:
            description: 'Optional exact coin filter (BTC, xyz:GOLD, @123, #10010)'
            type: string
        - description: Optional wallet filter (0x-hex)
          explode: false
          in: query
          name: address
          schema:
            description: Optional wallet filter (0x-hex)
            type: string
        - explode: false
          in: query
          name: limit
          schema:
            default: 50
            format: int32
            maximum: 500
            minimum: 1
            type: integer
        - explode: false
          in: query
          name: offset
          schema:
            default: 0
            format: int32
            minimum: 0
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BuilderFillsBody'
          description: OK
        '400':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Bad Request
        '401':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Unauthorized
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Unprocessable Entity
        '429':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Too Many Requests
        '500':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Internal Server Error
        '504':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Gateway Timeout
      security:
        - apiKey: []
components:
  schemas:
    BuilderFillsBody:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - https://api.coinversa.ai/schemas/BuilderFillsBody.json
          format: uri
          readOnly: true
          type: string
        builder:
          type: string
        builderName:
          description: Known display name for the builder; omitted if unknown
          type: string
        dataNotes:
          type: string
        fills:
          items:
            $ref: '#/components/schemas/BuilderFillRow'
          type:
            - array
            - 'null'
        verified:
          $ref: '#/components/schemas/BuilderStamp'
        window:
          description: >-
            Echo of the requested since parameter; lookbacks beyond 90d still
            echo as requested while the data is clamped to 90d
          type: string
      required:
        - builder
        - window
        - fills
        - dataNotes
      type: object
    APIError:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - https://api.coinversa.ai/schemas/APIError.json
          format: uri
          readOnly: true
          type: string
        code:
          description: Machine-readable error code
          type: string
        current_tier:
          description: Caller's effective tier
          type: string
        detail:
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
          examples:
            - Property foo is required but is missing.
          type: string
        errors:
          description: Optional list of individual error details
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type:
            - array
            - 'null'
        instance:
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem.
          examples:
            - https://example.com/error-log/abc123
          format: uri
          type: string
        required_tier:
          description: Minimum tier for this operation
          type: string
        status:
          description: HTTP status code
          examples:
            - 400
          format: int64
          type: integer
        title:
          description: >-
            A short, human-readable summary of the problem type. This value
            should not change between occurrences of the error.
          examples:
            - Bad Request
          type: string
        type:
          default: about:blank
          description: A URI reference to human-readable documentation for the error.
          examples:
            - https://example.com/errors/example
          format: uri
          type: string
        upgrade_url:
          description: Where to upgrade
          type: string
      type: object
    BuilderFillRow:
      additionalProperties: false
      properties:
        builderFeeUsd:
          format: double
          type: number
        coin:
          type: string
        marketType:
          description: >-
            '@N' coins = spot, '#N' = HIP-4 outcome, else perp (native or
            builder-dex)
          enum:
            - perp
            - spot
            - hip4
          type: string
        oid:
          description: Order id the fill attributes to; null if untracked
          format: int64
          type:
            - integer
            - 'null'
        pnl:
          format: double
          type: number
        price:
          format: double
          type: number
        side:
          enum:
            - BUY
            - SELL
          type: string
        size:
          format: double
          type: number
        tid:
          format: int64
          type: integer
        time:
          description: Fill time (RFC3339)
          type: string
        volumeUsd:
          format: double
          type: number
        wallet:
          type: string
      required:
        - time
        - wallet
        - coin
        - marketType
        - side
        - price
        - size
        - volumeUsd
        - pnl
        - builderFeeUsd
        - oid
        - tid
      type: object
    BuilderStamp:
      additionalProperties: false
      properties:
        coverage:
          $ref: '#/components/schemas/BuilderCoverage'
          description: >-
            Attribution coverage vs the ledger; null until the coverage pipeline
            is provisioned
        ledger_block:
          description: >-
            Latest block in HL's builder-fee ledger this data was verified
            against
          format: int64
          type: integer
        ledger_chain_time:
          description: Chain timestamp of that ledger entry (RFC3339)
          type: string
      required:
        - ledger_block
        - ledger_chain_time
        - coverage
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Where the error occurred, e.g. 'body.items[3].tags' or
            'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
    BuilderCoverage:
      additionalProperties: false
      properties:
        attributed_fees_usd:
          description: Join-attributed fees in the rollup window
          format: double
          type: number
        computed_at:
          description: When the rollup was computed (RFC3339)
          type: string
        ledger_fees_usd:
          description: Exact ledger revenue in the rollup window
          format: double
          type: number
        ratio:
          description: >-
            attributed_fees / ledger_fees — the share of revenue the fill-level
            metrics account for
          format: double
          type: number
        window_end:
          description: End of that window (RFC3339)
          type: string
        window_start:
          description: Start of the window the coverage rollup was computed over (RFC3339)
          type: string
      required:
        - window_start
        - window_end
        - ledger_fees_usd
        - attributed_fees_usd
        - ratio
        - computed_at
      type: object
  securitySchemes:
    apiKey:
      description: Get one at https://coinversa.ai/developers
      in: header
      name: X-API-Key
      type: apiKey

````