Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions references/api/api_core_concepts/execution-errors.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ Once a request is submitted, execution can still fail during the fill or, if a f
| `INVALID_GAS_PRICE` | The submitted gas price is outside acceptable bounds. |
| `QUOTED_GAS_LIMIT_EXCEEDED` | The gas limit required at fill time was significantly higher than the gas limit quoted, so the fill was aborted. |
| `JUPITER_INVALID_TOKEN_ACCOUNT` | The token account required for the swap doesn't exist or is invalid (Solana/Jupiter). |
| `TRANSACTION_SUBMISSION_FAILED` | The fill transaction could not be broadcast to the network — for example, the RPC was unavailable, the signer was unavailable, or the transaction was rejected before broadcast (nonce or fee issue). No transaction hash exists for this failure. |
| `TRANSACTION_NOT_INCLUDED` | The fill transaction was broadcast successfully and a transaction hash was recorded, but the transaction was not included onchain before Relay's retry and gas-bump window elapsed. The transaction may still confirm afterwards, so the recorded hash is worth checking. |

### Onchain Execution & Revert Errors

Expand Down
6 changes: 6 additions & 0 deletions references/api/changelog.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@ title: "API Changelog"
description: "Record of breaking changes, deprecations, and notable additions to the Relay API"
---

## 2026-07-27 — More specific `failReason` values for submission failures

**Added** — `GET /requests/v3`, `GET /intents/status/v3`, and the `request.status.updated` webhook: the response `failReason` enum gains **`TRANSACTION_SUBMISSION_FAILED`**, returned when the fill transaction could not be broadcast to the network (RPC unavailable, signer unavailable, or pre-broadcast rejection — no transaction hash exists), and **`TRANSACTION_NOT_INCLUDED`**, returned when the fill transaction was broadcast but never included onchain before Relay's retry and gas-bump window elapsed. See [Handling Execution Errors](/references/api/api_core_concepts/execution-errors#transaction-construction--gas-errors) for the full enum.

**Behavior change** — `GET /requests/v3`, `GET /intents/status/v3`, and the `request.status.updated` webhook: gasless `/execute` failure rows that previously returned `failReason: "UNKNOWN"` when a broadcast succeeded but the transaction was never included, or when the transaction was never accepted for broadcast, now return one of the two new reasons.

## 2026-07-22 — `GET /requests/v3` is live; `GET /requests/v2` deprecated & scheduled for sunset

**Added** — `GET /requests/v3`: the recommended Requests API. It requires `x-api-key`, adds a broad filter/search/sort surface, and returns a cleaner, consolidated response. See the [migration guide](/references/api/api_guides/migrating-to-requests-v3).
Expand Down
Loading