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

# pm_getERC20TokenQuotes

> get token exchange quotes

Example values you use to demo the API:

```json theme={null}
{
  "jsonrpc": "2.0",
  "method": "pm_getERC20TokenQuotes",
  "params": [
    {
      "sender": "0xB3aF6CFDDc444B948132753AD8214a20605692eF",
      "nonce": "0x6",
      "initCode": "0x",
      "callData": "0x47e1da2a000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000000200000000000000000000000080a1874e1046b1cc5defdf4d3153838b72ff94ac0000000000000000000000000fd9e8d3af1aaee056eb9e802c3a762a667b1904000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044095ea7b3000000000000000000000000386ed13ba07e1c409693b299bbb9839d05af20c3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000",
      "callGasLimit": "0x88b8",
      "verificationGasLimit": "0x186a0",
      "maxFeePerGas": "0x8dcac078f",
      "maxPriorityFeePerGas": "0x8dcac078f",
      "paymasterAndData": "0x0101010101010101010101010101010101010101000000000000000000000000000000000000000000000000000001010101010100000000000000000000000000000000000000000000000000000000000000000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101",
      "signature": "0x",
      "preVerificationGas": "0xcb78"
    },
    "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",
    [{ token: "0x0Fd9e8d3aF1aaee056EB9e802c3A762a667b1904" }]
  ],
  "id": 1
}
```

Example response:

```json theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    etherUSDExchangeRate: "0x1e"
    paymasterAddress: "0x386eD13Ba07E1C409693b299BbB9839d05aF20c3"
    gasEstimates: {
      "preVerificationGas": "0xc01c",
      "verificationGasLimit": "0xf4f1",
      "callGasLimit": "0x15971"
    }
    feeEstimates: {
      "maxFeePerGas": "0x8dcac078f",
      "maxPriorityFeePerGas": "0x8dcac078f"
    }
    quotes: [
      {
        "token": "0x0Fd9e8d3aF1aaee056EB9e802c3A762a667b1904",
        "symbol": "LINK",
        "decimals": 18,
        "etherTokenExchangeRate": "0x01a055690d9db80000",
        "serviceFeePercent": 15
      }
    ]
    unsupportedTokens: []
  }
}
```


## OpenAPI

````yaml arkageterc20tokenquotes post /
openapi: 3.0.3
info:
  title: Etherspot Arka Paymaster API
  version: 3.1.3
servers:
  - url: https://rpc.etherspot.io/paymaster
security: []
tags:
  - name: Arka
    externalDocs:
      description: Find out more about Arka
      url: https://etherspot.fyi/arka
externalDocs:
  description: Find out more about Arka
  url: https://etherspot.fyi/arka
paths:
  /:
    post:
      tags:
        - Arka
      summary: pm_getERC20TokenQuotes
      description: get token exchange quotes
      operationId: pm_getERC20TokenQuotes
      parameters:
        - in: query
          name: apiKey
          schema:
            type: string
          description: Arka API key
        - in: query
          name: chainId
          schema:
            type: string
          description: Chain ID
      requestBody:
        description: >-
          get Token exchange quotes for the supported tokens with fee and gas
          estimates
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetERC20TokenQuotes'
        required: true
      responses:
        '200':
          description: Successful operation
components:
  schemas:
    GetERC20TokenQuotes:
      type: object
      required:
        - jsonrpc
        - method
        - params
        - id
      properties:
        jsonrpc:
          type: string
          enum:
            - '2.0'
          default: '2.0'
        method:
          type: string
          enum:
            - pm_getERC20TokenQuotes
          default: pm_getERC20TokenQuotes
        params:
          type: array
          minItems: 3
          maxItems: 3
          items:
            oneOf:
              - $ref: '#/components/schemas/UserOperation'
                description: User Operation
              - type: string
                description: EntryPoint contract address
                default: '0x5ff137d4b0fdcd49dca30c7cf57e578a026d2789'
              - $ref: '#/components/schemas/Addresses'
        id:
          type: integer
    UserOperation:
      type: object
      description: User Operation
      required:
        - sender
        - nonce
        - initCode
        - callData
      properties:
        sender:
          type: string
        nonce:
          type: string
        initCode:
          type: string
        callData:
          type: string
        callGasLimit:
          type: string
        verificationGasLimit:
          type: string
        preVerificationGas:
          type: string
        maxPriorityFeePerGas:
          type: string
        maxFeePerGas:
          type: string
        paymasterAndData:
          type: string
        signature:
          type: string
    Addresses:
      type: array
      items:
        oneOf:
          - type: object
            properties:
              token:
                type: string

````