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

# Track a gasless deposit job

> Returns the state of a deposit address or a gasless funding job. Valid lookups return 200; unknown IDs report status unknown.

Returns the state of a deposit address (`address`) or a gasless funding job (`jobId`). One filter is required. A valid lookup returns `200`; an unknown address or job is reported with `status: "unknown"`. Job status covers the funding transaction; the deposit lookup covers the deposit itself.

No API key is required: Circle Gateway operations are open so that any wallet or relay can create and fund a deposit address. A supplied key that is unknown, revoked, or not enabled for v1 is still rejected with `401 invalid-api-key`, so send no key rather than a wrong one. No requests-per-second quota is published. Handle `429` and honor `Retry-After` when present. See [Errors and retries](/api-reference/errors) for common errors and retry handling.

Examples use mainnet token and contract addresses with placeholder wallets, hashes, signatures, and IDs. They are illustrative and must not be used to transfer funds.


## OpenAPI

````yaml api-v1.openapi.json GET /v1/circle-gateway/deposit-addresses/status
openapi: 3.1.0
info:
  title: Eco API
  version: v1
  description: >-
    Reference for the Eco API at https://api.eco.com/v1: quotes, chain and token
    discovery, gasless funding, intent status, and Circle Gateway fast deposits.
    Every operation requires an API key except the Circle Gateway operations,
    which are open.
servers:
  - url: https://api.eco.com
    description: Eco API
security: []
tags:
  - name: quotes
  - name: intents
  - name: status
  - name: discovery
  - name: circle-gateway
paths:
  /v1/circle-gateway/deposit-addresses/status:
    get:
      tags:
        - circle-gateway
      summary: Track a gasless deposit job
      description: >-
        Returns the state of a deposit address (`address`) or a gasless funding
        job (`jobId`). One filter is required. A valid lookup returns `200`; an
        unknown address or job is reported with `status: "unknown"`. Job status
        covers the funding transaction; the deposit lookup covers the deposit
        itself.


        No API key is required: Circle Gateway operations are open so that any
        wallet or relay can create and fund a deposit address. A supplied key
        that is unknown, revoked, or not enabled for v1 is still rejected with
        `401 invalid-api-key`, so send no key rather than a wrong one.


        No requests-per-second quota is published. Handle `429` and honor
        `Retry-After` when present.


        Examples use mainnet token and contract addresses with placeholder
        wallets, hashes, signatures, and IDs. They are illustrative and must not
        be used to transfer funds.
      operationId: gateway-status
      parameters:
        - name: x-api-key
          in: header
          required: false
          schema:
            type: string
          description: >-
            Optional. A key that is unknown, revoked, or not enabled for v1 is
            rejected with 401.
        - name: address
          in: query
          required: false
          schema:
            type: string
          description: The deposit address to track.
          example: '0x379BAB257e7Eb159538F01165B766A1BEaf2D954'
        - name: jobId
          in: query
          required: false
          schema:
            type: string
          description: >-
            The gasless funding job to track, as a bare UUID or a 24-character
            legacy job ID, without the `gasless:` prefix.
          example: 0f450218-1b2c-4d3e-8f9a-0b1c2d3e4f5a
        - name: cursor
          in: query
          required: false
          schema:
            type: string
            minLength: 1
          description: Opaque cursor from a previous `nextCursor`.
        - name: limit
          in: query
          required: false
          schema:
            default: 20
            type: integer
            minimum: 1
            maximum: 50
          description: Page size, 1-50. Default 20.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        type:
                          type: string
                          enum:
                            - intent
                            - quote
                            - gasless
                            - deposit-address
                        status:
                          type: string
                        updatedAt:
                          type:
                            - integer
                            - 'null'
                        intentHashes:
                          type: array
                          items:
                            type: string
                        txHash:
                          type:
                            - string
                            - 'null'
                        subStatuses:
                          type: array
                          items:
                            type: object
                            properties:
                              chainId:
                                type: integer
                              quoteIds:
                                type: array
                                items:
                                  type: string
                              txHash:
                                type:
                                  - string
                                  - 'null'
                              intentHashes:
                                type: array
                                items:
                                  type: string
                              state:
                                type: string
                                enum:
                                  - pending
                                  - submitted
                                  - published
                                  - failed
                            required:
                              - chainId
                              - quoteIds
                              - txHash
                              - intentHashes
                              - state
                        sourceTx:
                          type: object
                          properties:
                            chainId:
                              type: integer
                            txHash:
                              type: string
                            token:
                              type: string
                            amount:
                              type: string
                          required:
                            - chainId
                            - txHash
                            - token
                            - amount
                        destinationTx:
                          type: object
                          properties:
                            chainId:
                              type: integer
                            txHash:
                              type: string
                            token:
                              type: string
                            amount:
                              type: string
                          required:
                            - chainId
                            - txHash
                            - token
                            - amount
                        steps:
                          type: array
                          items:
                            type: object
                            properties:
                              type:
                                type: string
                                enum:
                                  - SWAP
                                  - BRIDGE
                              intentHash:
                                type: string
                              status:
                                type: string
                              from:
                                type: object
                                properties:
                                  token:
                                    type: string
                                  amount:
                                    type: string
                                  chainId:
                                    type: integer
                                required:
                                  - token
                                  - amount
                                  - chainId
                              to:
                                type: object
                                properties:
                                  token:
                                    type: string
                                  amount:
                                    type: string
                                  chainId:
                                    type: integer
                                required:
                                  - token
                                  - amount
                                  - chainId
                              transactions:
                                type: object
                                properties:
                                  created:
                                    type: object
                                    properties:
                                      chainId:
                                        type: integer
                                      txHash:
                                        type: string
                                    required:
                                      - chainId
                                      - txHash
                                  fulfilled:
                                    type: object
                                    properties:
                                      chainId:
                                        type: integer
                                      txHash:
                                        type: string
                                    required:
                                      - chainId
                                      - txHash
                                  refunded:
                                    type: object
                                    properties:
                                      chainId:
                                        type: integer
                                      txHash:
                                        type: string
                                    required:
                                      - chainId
                                      - txHash
                            required:
                              - type
                              - intentHash
                              - status
                              - from
                              - to
                              - transactions
                      required:
                        - id
                        - type
                        - status
                        - updatedAt
                  nextCursor:
                    type:
                      - string
                      - 'null'
                required:
                  - results
                  - nextCursor
              examples:
                job-completed:
                  summary: A gasless funding job that landed on chain
                  value:
                    results:
                      - id: gasless:0f450218-1b2c-4d3e-8f9a-0b1c2d3e4f5a
                        type: gasless
                        status: published
                        updatedAt: 1789522704
                        intentHashes:
                          - >-
                            0x3f1886e7c3a4cab62b4a0661e393600f0917d5a514652e96623b0f17ce0d3749
                        subStatuses:
                          - chainId: 8453
                            quoteIds: []
                            txHash: >-
                              0x3ef97346fd076aadb54c851f33ba9234feb34d27442b9bb0abc7a0d75827af13
                            intentHashes:
                              - >-
                                0x3f1886e7c3a4cab62b4a0661e393600f0917d5a514652e96623b0f17ce0d3749
                            state: published
                    nextCursor: null
                address-unknown:
                  summary: 'Live: a deposit address the service has not seen (still 200)'
                  value:
                    results:
                      - id: >-
                          deposit-address:0x379BAB257e7Eb159538F01165B766A1BEaf2D954
                        type: deposit-address
                        status: unknown
                        updatedAt: null
                    nextCursor: null
                job-unknown:
                  summary: 'Live: a job ID the service has not seen (still 200)'
                  value:
                    results:
                      - id: gasless:0f450218-1b2c-4d3e-8f9a-0b1c2d3e4f5a
                        type: gasless
                        status: unknown
                        updatedAt: null
                    nextCursor: null
        '400':
          description: Request failed validation
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://api.eco.com/v1/errors/missing-parameter
                title: A required parameter is missing
                status: 400
                code: missing-parameter
                detail: >-
                  at least one filter required (address, jobId); paging controls
                  alone are not a filter
                requestId: 180e4b3e4bfeff1dec42814b33e66dba
        '401':
          description: >-
            The supplied x-api-key is unknown, revoked, or not enabled for the
            v1 API. Returned for every v1 endpoint by the gateway, with
            Content-Type application/json.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://api.eco.com/v1/errors/invalid-api-key
                title: API key is missing, unknown, or revoked
                status: 401
                code: invalid-api-key
                requestId: 98e4c42f-9c70-4539-843e-8d31803001e6
        '403':
          description: Access denied for the supplied key.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://api.eco.com/v1/errors/permission-denied
                title: The caller may not perform this operation
                status: 403
                code: permission-denied
                requestId: a9a151aa45c9dbf44c78513905f6606a
        '429':
          description: Rate limit exceeded
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://api.eco.com/v1/errors/rate-limit-exceeded
                title: Rate limit exceeded
                status: 429
                code: rate-limit-exceeded
                requestId: 1eac3d6cc2aafa524b0c47a039576f8c
        '500':
          description: Internal error
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
              example:
                type: https://api.eco.com/v1/errors/internal-error
                title: Internal error
                status: 500
                code: internal-error
                requestId: 02dabcf0f4e3def9a6091526d3d21022
        default:
          description: Error (RFC 9457 problem+json; see x-error-catalog)
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
      security: []
components:
  schemas:
    Problem:
      type: object
      properties:
        type:
          type: string
          format: uri
        title:
          type: string
          minLength: 1
        status:
          type: integer
          minimum: 400
          maximum: 599
        code:
          type: string
          description: >-
            Stable, machine-readable error code from the catalog. Branch on this
            and `status`, not on `title` or `detail`.
        detail:
          type: string
        instance:
          type: string
        legacyCode:
          type: string
          description: >-
            The pre-v1 numeric error code this problem maps to, for integrations
            migrating from the older services.
        solverErrors:
          type: array
          items:
            type: object
            properties:
              solver:
                type: string
                description: >-
                  Address on the relevant chain: `0x…` hex for EVM chains,
                  base58 for Solana, `T…` base58 for Tron.
              solverName:
                type: string
                minLength: 1
              code:
                type: string
                minLength: 1
              message:
                type: string
            required:
              - solver
              - message
        errors:
          type: array
          items:
            type: object
            properties:
              field:
                type: string
                minLength: 1
              detail:
                type: string
                minLength: 1
            required:
              - field
              - detail
          description: Field-level validation failures.
        requestId:
          type: string
          description: >-
            Correlation ID for support. Present on router-served errors;
            deposit-address-served errors carry a short numeric value.
      required:
        - type
        - title
        - status
        - code

````

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