curl --request POST \
--url https://prices.rekt.trading/v1/quote \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"feed": "SOL/USD",
"payload_version": 2,
"idempotency_key": "3f6c1d2e9a8b4c7d0e1f2a3b4c5d6e7f"
}
'{
"payload": "<string>",
"signatures": [
{
"pubkey": "<string>",
"signature": "<string>"
}
],
"ed25519_instruction_data": "<string>",
"status": "<string>",
"feed_id": "<string>",
"ed25519_program_id": "Ed25519SigVerify111111111111111111111111111",
"decoded": {},
"instance_id": "<string>",
"current_slot": 123,
"expires_at_slot": 123,
"policy_revision": 123
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}Quotes
A signed quote
A signed quote for one feed. The Knockout program verifies the signatures on chain. Fetch a new quote for each attempt, with a new idempotency_key. For a window quote, send min_slot and payload_version: 2. 409 and 429 are retryable after retry_after_ms. Every other 4xx is not: fix the request.
POST
/
v1
/
quote
curl --request POST \
--url https://prices.rekt.trading/v1/quote \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"feed": "SOL/USD",
"payload_version": 2,
"idempotency_key": "3f6c1d2e9a8b4c7d0e1f2a3b4c5d6e7f"
}
'{
"payload": "<string>",
"signatures": [
{
"pubkey": "<string>",
"signature": "<string>"
}
],
"ed25519_instruction_data": "<string>",
"status": "<string>",
"feed_id": "<string>",
"ed25519_program_id": "Ed25519SigVerify111111111111111111111111111",
"decoded": {},
"instance_id": "<string>",
"current_slot": 123,
"expires_at_slot": 123,
"policy_revision": 123
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}{
"status": "<string>",
"reason": "<string>",
"error": "<string>",
"detail": "<string>",
"retry_after_ms": 123,
"retryable": true
}Authorizations
Body
application/json
A request for one signed quote.
Response
The signed quote.
One signed quote. Only the signed bytes are authoritative. Decide on payload, not on decoded.
