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

# Partner Executable Quote

> Returns calldata, approval target, minimum output, lifecycle metadata, and structured payer issues in one response.

<Info>
  This is the recommended endpoint for new wallet, router, and meta-aggregator
  integrations. It returns an exact-input executable quote and does not
  broadcast a transaction.
</Info>

`payer` supplies the input and sends the returned transaction. `recipient` receives the output and defaults to `payer`.

A successful response can contain balance, allowance, or native gas entries in `issues`. Resolve them before broadcasting. A validation status of `UNKNOWN` means AKKA could not complete that RPC check; validate it independently.

Use `simulation.status`, not HTTP status alone, to decide whether your own simulation is required. Refresh after `expiresAt`, any approval transaction, user delay, failed simulation, or nonce replacement. Executable calldata is single-use and must not be cached or retried after broadcast.

Inspect `tx.type`: send only `gasPrice` for `legacy`, or only `maxFeePerGas` and `maxPriorityFeePerGas` for `eip1559`. Preserve `tx.to`, `tx.data`, and `tx.value` exactly.

<Warning>
  Keep the partner API key on a backend. Browser and mobile clients should call
  an authenticated proxy owned by the integrator.
</Warning>


## OpenAPI

````yaml GET /partner/v1/{chainId}/quote
openapi: 3.0.0
info:
  title: AKKA Finance Backend API
  description: >-
    Use the Partners endpoints for new integrations. Swap endpoints are
    maintained for the AKKA UI and internal compatibility.
  version: 1.0.0
  contact:
    name: AKKA Finance
    url: https://akka.finance
    email: support@akka.finance
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://api.akka.finance
    description: Production
security:
  - api-key: []
tags:
  - name: Partners
    description: >-
      Recommended external integration contract for discovery, executable
      quotes, and outcome reporting.
  - name: Tokens
    description: Token metadata used by partner integrations.
  - name: Health
    description: Service health and readiness.
externalDocs:
  description: AKKA API Documentation
  url: https://docs.akka.finance/
paths:
  /partner/v1/{chainId}/quote:
    get:
      tags:
        - Partners
      summary: Get a partner-ready executable exact-input quote
      description: >-
        Returns calldata, approval target, minimum output, lifecycle metadata,
        and structured payer issues in one response.
      operationId: PartnerController_getQuote
      parameters:
        - name: src
          required: true
          in: query
          description: Exact-input source token address
          schema:
            type: string
        - name: dst
          required: true
          in: query
          description: Destination token address
          schema:
            type: string
        - name: amount
          required: true
          in: query
          description: Sell amount in the token smallest unit
          schema:
            type: string
        - name: payer
          required: true
          in: query
          description: Transaction sender and token payer
          schema:
            type: string
        - name: recipient
          required: false
          in: query
          description: Output recipient; defaults to payer
          schema:
            type: string
        - name: slippage
          required: true
          in: query
          description: Slippage percentage
          schema:
            $ref: '#/components/schemas/Object'
        - name: chainId
          required: true
          in: path
          schema:
            example: 999
            type: integer
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PartnerQuoteResponseDto'
components:
  schemas:
    Object:
      type: object
      properties: {}
    PartnerQuoteResponseDto:
      type: object
      properties:
        dstAmount:
          type: string
          description: Expected output amount in wei (destination amount)
          example: '12723902882990271'
        srcToken:
          description: Source token information
          allOf:
            - $ref: '#/components/schemas/TokenInfoDto'
        dstToken:
          description: Destination token information
          allOf:
            - $ref: '#/components/schemas/TokenInfoDto'
        gas:
          type: string
          description: Estimated gas amount for the swap (decimal-string uint256)
          example: '231973'
        tx:
          description: Transaction data to execute the swap
          allOf:
            - $ref: '#/components/schemas/TransactionDataDto'
        encodedTx:
          type: string
          description: >-
            ABI-encoded transaction tuple (from, to, data, value, gasPrice, gas)
            as a hex string. Allows the frontend to decode and execute the swap
            without needing the contract ABI.
        quoteId:
          type: string
          description: Unique identifier for this executable quote
        blockNumber:
          type: string
          description: Block used for quote metadata
        generatedAt:
          type: string
          description: ISO-8601 quote generation time
        expiresAt:
          type: string
          description: Advisory ISO-8601 refresh deadline
        minAmountOut:
          type: string
          description: Minimum output encoded in the transaction
        allowanceTarget:
          type: object
          description: ERC-20 approval target; null for native input
        simulationIncomplete:
          type: boolean
          description: True when RPC simulation/gas estimation did not complete
        simulationStatus:
          type: string
          enum:
            - SUCCESS
            - INCOMPLETE
            - SKIPPED_METRIC_STATE
        chainId:
          type: number
        sellToken:
          type: string
        buyToken:
          type: string
        sellAmount:
          type: string
        buyAmount:
          type: string
        payer:
          type: string
        recipient:
          type: string
        issues:
          type: array
          items:
            $ref: '#/components/schemas/PartnerIssueDto'
        validation:
          $ref: '#/components/schemas/PartnerValidationDto'
        simulation:
          $ref: '#/components/schemas/PartnerSimulationDto'
        quotedAtBlock:
          type: string
        validForSeconds:
          type: number
        validitySource:
          type: string
          enum:
            - ADVISORY
            - ROUTE_DEADLINE
        partnerId:
          type: string
      required:
        - dstAmount
        - tx
        - encodedTx
        - chainId
        - sellToken
        - buyToken
        - sellAmount
        - buyAmount
        - payer
        - recipient
        - issues
        - validation
        - simulation
        - validForSeconds
        - validitySource
        - partnerId
    TokenInfoDto:
      type: object
      properties:
        address:
          type: string
          description: Token address
        symbol:
          type: string
          description: Token symbol
        name:
          type: string
          description: Token name
        decimals:
          type: number
          description: Token decimals
        logoUri:
          type: object
          description: Token logo URI
      required:
        - address
        - symbol
        - name
        - decimals
    TransactionDataDto:
      type: object
      properties:
        from:
          type: string
          description: From address
        to:
          type: string
          description: To address (contract)
        data:
          type: string
          description: Transaction data
        value:
          type: string
          description: Value to send (in wei)
        gasPrice:
          type: string
          description: Gas price (in wei)
        gas:
          type: string
          description: Gas limit (decimal-string uint256)
        type:
          type: string
          enum:
            - legacy
            - eip1559
        maxFeePerGas:
          type: string
        maxPriorityFeePerGas:
          type: string
      required:
        - to
        - data
        - value
        - gasPrice
        - gas
    PartnerIssueDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INSUFFICIENT_BALANCE
            - INSUFFICIENT_ALLOWANCE
            - INSUFFICIENT_GAS_BALANCE
        message:
          type: string
        actual:
          type: string
        expected:
          type: string
        spender:
          type: string
        token:
          type: string
      required:
        - code
        - message
        - actual
        - expected
        - token
    PartnerValidationDto:
      type: object
      properties:
        balance:
          $ref: '#/components/schemas/PartnerValidationCheckDto'
        allowance:
          $ref: '#/components/schemas/PartnerValidationCheckDto'
        gas:
          $ref: '#/components/schemas/PartnerValidationCheckDto'
      required:
        - balance
        - allowance
        - gas
    PartnerSimulationDto:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - INCOMPLETE
            - SKIPPED_METRIC_STATE
        method:
          type: string
          enum:
            - estimateGas
            - routeGasFloor
        blockNumber:
          type: string
        gas:
          type: string
      required:
        - status
        - method
        - gas
    PartnerValidationCheckDto:
      type: object
      properties:
        status:
          type: string
          enum:
            - VALID
            - ISSUE
            - UNKNOWN
            - NOT_REQUIRED
        actual:
          type: string
        expected:
          type: string
        reason:
          type: string
      required:
        - status
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: apikey
      description: >-
        API key. basic-test-key is a shared, rate-limited evaluation credential;
        use a dedicated key in production.
      x-default: basic-test-key

````