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

# Get asset metadata

> Authenticated asset lookup. GET accepts required ids and fields as comma-separated or repeated query parameters; at most 100 IDs before deduplication. Supported fields: name, symbol, decimals, price, logo. QUERY /assets is also supported (not representable as an OpenAPI 3.1 operation): send application/json {"ids":["eip155:1:native"],"fields":["symbol","price"]}, at most 100 IDs and a 64 KiB body. Both methods return exact submitted ID keys, omit unrequested fields and use null for unresolved requested fields; item errors remain HTTP 200. An invalid request returns 400 with {"error":{"code":"invalid_request","message":"..."}}.



## OpenAPI

````yaml https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /assets
openapi: 3.1.0
info:
  title: Deposit Service API
  version: 1.0.0
  description: >-
    Rhinestone Deposits API: accept deposits from any chain, asset or payment
    method, and settle them as one token on one chain.
servers:
  - url: https://v1.orchestrator.rhinestone.dev/deposit-processor
security: []
paths:
  /assets:
    get:
      tags:
        - Utilities
      summary: Get asset metadata
      description: >-
        Authenticated asset lookup. GET accepts required ids and fields as
        comma-separated or repeated query parameters; at most 100 IDs before
        deduplication. Supported fields: name, symbol, decimals, price, logo.
        QUERY /assets is also supported (not representable as an OpenAPI 3.1
        operation): send application/json
        {"ids":["eip155:1:native"],"fields":["symbol","price"]}, at most 100 IDs
        and a 64 KiB body. Both methods return exact submitted ID keys, omit
        unrequested fields and use null for unresolved requested fields; item
        errors remain HTTP 200. An invalid request returns 400 with
        {"error":{"code":"invalid_request","message":"..."}}.
      parameters:
        - schema:
            type: string
            description: >-
              Required comma-separated asset IDs (or repeated ids); at most 100
              submitted IDs
            example: eip155:1:native
          required: true
          description: >-
            Required comma-separated asset IDs (or repeated ids); at most 100
            submitted IDs
          name: ids
          in: query
        - schema:
            type: string
            description: >-
              Required comma-separated fields (or repeated fields):
              name,symbol,decimals,price,logo
            example: symbol,price
          required: true
          description: >-
            Required comma-separated fields (or repeated fields):
            name,symbol,decimals,price,logo
          name: fields
          in: query
        - schema:
            type: string
            description: Billable project API key
          required: true
          description: Billable project API key
          name: x-api-key
          in: header
      responses:
        '200':
          description: Requested asset fields keyed by exact submitted ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetsResponse'
        '400':
          description: Invalid asset request (or invalid API key)
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/AssetsError'
                  - $ref: '#/components/schemas/AssetsAuthError'
        '403':
          description: Organization is not billable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetsAuthError'
        '502':
          description: Asset upstream unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetsError'
components:
  schemas:
    AssetsResponse:
      type: object
      properties:
        data:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/AssetItem'
      required:
        - data
    AssetsError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
          required:
            - code
            - message
      required:
        - error
    AssetsAuthError:
      type: object
      properties:
        error:
          type: string
      required:
        - error
    AssetItem:
      type: object
      properties:
        name:
          type:
            - string
            - 'null'
        symbol:
          type:
            - string
            - 'null'
        decimals:
          type:
            - number
            - 'null'
        logo:
          type:
            - string
            - 'null'
        price:
          type:
            - object
            - 'null'
          properties:
            usd:
              type: string
            updatedAt:
              type: string
          required:
            - usd
            - updatedAt
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - invalid_id
                - unsupported_chain
                - not_found
                - upstream_error
            message:
              type: string
          required:
            - code
            - message
      additionalProperties: {}

````