---
title: "Sign a sponsored x402 payment with the Keyban sponsor wallet"
method: POST
path: "/v1/policy/intents/{id}/sponsored-signature"
tags: ["Wallet Policy"]
---

# Sign a sponsored x402 payment with the Keyban sponsor wallet

`POST /v1/policy/intents/{id}/sponsored-signature`

## Request

- Base URL: `https://api.prod.keyban.io`
- URL: `https://api.prod.keyban.io/v1/policy/intents/{id}/sponsored-signature`
- Auth: API key in header `X-Api-Key`

Counterpart of the agent signature for an x402 intent the Keyban welcome offer pays (`sponsored: true` at evaluate-intent).
- 200: the offer was debited, the intent moved `approved → consumed`, and the sponsor signature is returned.
  Replayable: once the intent was consumed by this endpoint, the same call returns the same signature without a second debit.
  Resumable: a call interrupted after the debit, on an intent still `approved` and unexpired, resumes on retry without a second debit.
- 403: the policy refuses (`policy/missing`, `policy/emergency-stop`, or the intent is not `approved`: pending, declined, expired, already consumed…); the reason is `policy/…`.
- 404: no sponsored intent with this id on the calling wallet.
- 409 `AGENT_WALLET_SPONSOR_UNAVAILABLE`: the offer can no longer cover the payment (expired, spent, taken by a concurrent payment, or sponsor wallet no longer available); the intent stays `approved` and nothing is debited. Evaluate the payment again.

## Path parameters

- `id` string, required

## Response `200`

Sponsor signature

- SponsoredSignatureDtoOutput
  - `signature` string, required: EIP-3009 TransferWithAuthorization signature of the Keyban sponsor wallet, to send as the x402 payment payload signature

## Other responses

- `403`
- `404`
- `409`

---

[API](https://skmtc.dev/keyban/apis/keyban-rest-apis.md) · [All operations](https://skmtc.dev/keyban/apis/keyban-rest-apis/llms.txt) · [OpenAPI document](https://skmtc.dev/keyban/apis/keyban-rest-apis/revisions/0bb79a1da961?raw)
