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

Examples use real mainnet token and contract addresses with placeholder wallets, hashes, signatures, and IDs.


## 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 real mainnet token and contract addresses with placeholder
        wallets, hashes, signatures, and IDs.
      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)

````