Impossible through the deployed API
The entry point is authorizeRedemption(uint256 requestId, uint32 generation). There is no destination parameter to change. A 256-run fuzz over caller addresses asserts one request id yields one payload for every caller.
Impossible through the deployed API
Same reason. The amount is read from the FAssets obligation by the contract, so a caller has nothing to alter.
Impossible through the deployed API
The reference is the obligation's identity on the ledger and is resolved on chain, not accepted from a caller.
Refused · S021_PAYMENT_ALREADY_OBSERVED
This is not hypothetical. It happened on live Coston2 with request 44928272, and it is why schema V2 requires the signing boundary's own XRP ledger observation.
Refused · S022_UNDERLYING_STATE_UNAVAILABLE
Refusing is the default. There is no input that authorizes without an observation, and too few agreeing sources counts as no observation.
Refused · S023_UNDERLYING_STATE_DISAGREEMENT
Endpoints that disagree fail closed, and this one is deliberately never retried automatically.
Refused · S024_UNDERLYING_OBSERVATION_STALE
An observation too old to rely on is refused rather than accepted with a warning.
Refused by the XRP ledger itself
The identical signed blob resubmitted returns tefPAST_SEQ: the account sequence is already consumed. Signet does not have to be trusted for this one.