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

# Check the status of a deposit

> Returns a deposit address's state, quoted amount, deadline, and destination intent hash.

Returns a deposit address's state, quoted amount, deadline, and destination `intentHash`. `sourceChainId` is required. An unknown address returns `404` in the deposit-address error format. Responses keep the `{ data: … }` envelope.

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/{vaultAddress}
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/{vaultAddress}:
    get:
      tags:
        - circle-gateway
      summary: Check the status of a deposit
      description: >-
        Returns a deposit address's state, quoted amount, deadline, and
        destination `intentHash`. `sourceChainId` is required. An unknown
        address returns `404` in the deposit-address error format. Responses
        keep the `{ data: … }` envelope.


        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-lookup
      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: vaultAddress
          in: path
          required: true
          schema:
            $ref: '#/components/schemas/EvmAddress'
          example: '0x379BAB257e7Eb159538F01165B766A1BEaf2D954'
          description: The `vaultAddress` returned when the deposit address was created.
        - name: sourceChainId
          in: query
          required: true
          description: >-
            The `sourceChainId` the deposit address was created for. Required;
            omitting it returns `400`.
          schema:
            type: number
            example: 8453
          example: 8453
      responses:
        '200':
          description: Quoted vault record retrieved successfully
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    $ref: >-
                      #/components/schemas/CircleGatewayDepositAddressStatusResponseDTO
              examples:
                pending:
                  summary: Deposit address created, not yet funded
                  value:
                    data:
                      vaultAddress: '0x379BAB257e7Eb159538F01165B766A1BEaf2D954'
                      amount: '1000000'
                      deadline: 1789526504
                      state: PENDING
                      intentHash: >-
                        0x3f1886e7c3a4cab62b4a0661e393600f0917d5a514652e96623b0f17ce0d3749
                      sourceChainId: 8453
                published:
                  summary: Deposit address funded and deposit intent published
                  value:
                    data:
                      vaultAddress: '0x379BAB257e7Eb159538F01165B766A1BEaf2D954'
                      amount: '1000000'
                      deadline: 1789526504
                      state: PUBLISHED
                      intentHash: >-
                        0x3f1886e7c3a4cab62b4a0661e393600f0917d5a514652e96623b0f17ce0d3749
                      sourceChainId: 8453
        '400':
          description: Validation failure in the deposit-address service's format.
          content:
            application/json:
              example:
                statusCode: 400
                createdBy: ValidationFilter
                validationErrors:
                  sourceChainId: >-
                    sourceChainId must not be less than 1, sourceChainId should
                    not be empty, sourceChainId must be an integer number,
                    sourceChainId must be a number conforming to the specified
                    constraints
        '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.
        '404':
          description: >-
            No quoted deposit address at this address on the requested source
            chain.
          content:
            application/json:
              example:
                statusCode: 404
                createdBy: HttpExceptionFilter
                details:
                  message: >-
                    No quoted gateway intent found for vault
                    0x379BAB257e7Eb159538F01165B766A1BEaf2D954
                  error: Not Found
                  statusCode: 404
        '429':
          description: Rate limit; honor Retry-After when supplied.
        '500':
          description: Service failure; preserve identifiers before retrying.
      security: []
components:
  schemas:
    EvmAddress:
      type: string
      description: EIP-55 / lowercase hex 20-byte address
      example: '0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb'
    CircleGatewayDepositAddressStatusResponseDTO:
      type: object
      required:
        - vaultAddress
        - amount
        - deadline
        - state
        - intentHash
        - sourceChainId
      properties:
        vaultAddress:
          $ref: '#/components/schemas/EvmAddress'
          description: Vault address on the source chain.
        amount:
          type: string
          description: Requested source-chain USDC amount in base units.
          example: '1000000'
        deadline:
          type: number
          description: Unix seconds quote deadline.
          example: 1798915200
        state:
          $ref: '#/components/schemas/QuotedGatewayIntentState'
        intentHash:
          $ref: '#/components/schemas/Hex32'
          description: >-
            Intent hash for this quoted vault, assigned at quote creation and
            preserved through publish.
        sourceChainId:
          type: number
          description: Source chain ID where the vault is funded.
          example: 8453
        stitched:
          type: object
          required:
            - finalDestinationChainID
            - destinationIntentHash
          description: >-
            Present for stitched deposits. PUBLISHED is source-leg publication,
            not destination delivery.
          properties:
            finalDestinationChainID:
              type: integer
              example: 42161
            destinationIntentHash:
              $ref: '#/components/schemas/Hex32'
    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
    QuotedGatewayIntentState:
      type: string
      description: >-
        Current quoted gateway intent state. `PENDING`: vault created, waiting
        for funds. `FUNDING_DETECTED`: vault balance reached the quoted amount.
        `PUBLISHED`: deposit intent published onchain. `EXPIRED_UNFUNDED`: quote
        deadline passed without funding. `FAILED`, `REFUNDED_BY_USER`,
        `RECOVERY_PUBLISHED`: terminal recovery outcomes.
      enum:
        - PENDING
        - FUNDING_DETECTED
        - PUBLISHED
        - FAILED
        - REFUNDED_BY_USER
        - RECOVERY_PUBLISHED
        - EXPIRED_UNFUNDED
    Hex32:
      type: string
      description: 0x-prefixed 32-byte hex (64 hex chars)

````

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