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

# Bridge Integrator Fee Claim Submit

> [Alpha Preview] Submit the fee wallet's signature for a prepared claim; Mobula then pays it in USDC.

> [!WARNING]
>
> **Alpha Preview** — Endpoints and response shape may change without notice.

`POST /api/2/bridge/integrator-fees/claims/{claimId}` verifies the fee wallet's
signature over the [prepared](https://docs.mobula.io/rest-api-reference/endpoint/bridge-integrator-fees-claim)
message, debits the claim from the balance, and queues the USDC payout.

* The balance is checked again at submit, one claim at a time per wallet, so two
  claims can never spend the same balance.
* Submitting a claim that is already booked returns it unchanged, so retrying
  is safe.

## Path parameter

| Name | Notes |
| - | - |
| `claimId` | The `claimId` returned by prepare. |

## Request body

```json theme={null}
{ "signature": "0x…" }
```

`signature` is `0x…` hex on EVM and base58 on Solana. See [Signing](https://docs.mobula.io/rest-api-reference/endpoint/bridge-integrator-fees-claim#signing).

## Response

The booked claim, in the same shape as the [balance](https://docs.mobula.io/rest-api-reference/endpoint/bridge-integrator-fees) `claims[]`:

```json theme={null}
{
  "data": {
    "claimId": "6f1c2a9e-4b7d-4c1e-9a53-2d8f0e7b1c44",
    "status": "pending",
    "chainId": "evm:8453",
    "recipient": "0xYourFeeWallet",
    "amountUsd": 120.5,
    "networkFeeUsd": 0.0041,
    "receiveAmount": "120.4959",
    "txHash": null,
    "error": null,
    "createdAt": "2026-10-20T09:14:40.000Z",
    "updatedAt": "2026-10-20T09:14:40.000Z"
  }
}
```

## Claim statuses

Follow the claim with [`GET /integrator-fees/{address}`](https://docs.mobula.io/rest-api-reference/endpoint/bridge-integrator-fees).

| Status | Meaning |
| - | - |
| `pending` | Booked, waiting to be sent. |
| `sending` | Payout being sent; `txHash` appears once it is broadcast. |
| `paid` | USDC delivered. Final. |
| `failed` | Nothing was paid. `error` says why, and the amount is back in `availableUsd`. Final. |

A claim fails when the payout chain doesn't hold enough USDC for it right now.
Claim a smaller amount or pick another `chainId`.

On EVM the payout comes from the Mobula bridge contract; on Solana it is a USDC
transfer from the solver wallet with the memo `claim:<claimId>`.

## Errors

| HTTP | `message` |
| - | - |
| `400` | `Signature is not …'s over the prepared message` |
| `400` | `Claim expired — prepare a new one` |
| `400` | `Balance no longer covers this claim — prepare a new one` |
| `404` | `Unknown or expired claim — prepare a new one` |


## OpenAPI

````yaml post /2/bridge/integrator-fees/claims/{claimId}
openapi: 3.0.0
info:
  version: 1.0.0
  title: Mobula API
  description: >-
    Documentation of the Mobula API


    **Demo API**: The default server (demo-api.mobula.io) is a demo API with
    rate limits.

    For production use, please use api.mobula.io with an API key from
    https://admin.mobula.io
servers:
  - url: https://demo-api.mobula.io/api/
    description: Demo API (rate limited, for testing only)
  - url: https://api.mobula.io/api/
    description: Production API (requires API key)
security: []
tags:
  - name: V2 - Token
    description: Token details, price, security, ATH, and holder data
  - name: V2 - Market Data
    description: Market details, OHLCV history, and lighthouse metrics
  - name: V2 - Trades
    description: Token trades, enriched trades, and trade filters
  - name: V2 - Wallet
    description: Wallet positions, activity, trades, analysis, and labels
  - name: V2 - Assets
    description: Cross-chain asset details and price history
  - name: V2 - Swap
    description: Swap quoting and execution
  - name: V2 - Perps
    description: Perpetual futures quoting, execution, and positions
  - name: V2 - Bridge
    description: Cross-chain bridge quoting and intent status (Alpha Preview)
  - name: V2 - DeFi
    description: Bonding pools and pulse data
  - name: V2 - Search
    description: Universal fast search
  - name: V2 - Usage
    description: Per-key API and WebSocket usage history
  - name: V2 - Blockchains
    description: System metadata and chain listings
  - name: V2 - Prediction Markets
    description: >-
      Polymarket markets/events, wallet positions, and the full execution stack
      (auth, order build/submit/cancel, approvals, pUSD wrap/unwrap, deploy,
      deposit/withdraw, redeem). Alpha — see /api/2/pm/*.
  - name: V1 - Market Data
    description: Market prices, history, sparklines, pairs, and multi-data
  - name: V1 - Wallet
    description: Wallet portfolio, transactions, history, and NFTs
  - name: V1 - Token
    description: First buyers
  - name: V1 - Trades
    description: Market trades by pair
  - name: V1 - Metadata
    description: Token metadata, categories, and news
  - name: V1 - Assets
    description: List all assets
  - name: V1 - Search
    description: Search for assets, tokens, and pairs
  - name: V1 - DeFi
    description: Bonding pool pulse data
  - name: V1 - Blockchains
    description: Blockchain listings, pairs, and stats
  - name: V1 - Webhooks
    description: Webhook management
  - name: V1 - Feed
    description: Custom feed creation
paths:
  /2/bridge/integrator-fees/claims/{claimId}:
    post:
      tags:
        - V2 - Bridge
      summary: Submit an integrator fee claim
      description: >-
        [Alpha Preview] Verify the fee wallet's signature over the prepared
        message, debit the claim from the balance (re-checked, one claim at a
        time per wallet) and queue the USDC payout. Submitting an already booked
        claim returns it unchanged.
      parameters:
        - schema:
            type: string
            description: The claimId returned by prepare.
          required: true
          description: The claimId returned by prepare.
          name: claimId
          in: path
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                signature:
                  type: string
                  description: 0x hex on EVM, base58 on Solana.
              required:
                - signature
      responses:
        '200':
          description: The booked claim.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      claimId:
                        type: string
                      status:
                        type: string
                        enum:
                          - pending
                          - sending
                          - paid
                          - failed
                      chainId:
                        type: string
                      recipient:
                        type: string
                      amountUsd:
                        type: number
                      networkFeeUsd:
                        type: number
                      receiveAmount:
                        type: string
                        nullable: true
                      txHash:
                        type: string
                        nullable: true
                      error:
                        type: string
                        nullable: true
                      createdAt:
                        type: string
                      updatedAt:
                        type: string
                required:
                  - data
        '400':
          description: Bad signature, expired claim, or the balance no longer covers it.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
        '404':
          description: Unknown or expired claim, prepare a new one.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string

````

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