List quotes
curl --request GET \
--url https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"quote_request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment": "sandbox",
"provider_id": "<string>",
"provider_name": "<string>",
"source_amount": "<string>",
"destination_amount": "<string>",
"fx_rate": "<string>",
"fee_amount": "<string>",
"eta_seconds": 123,
"expires_at": "2023-11-07T05:31:56Z",
"payout_method": "<string>",
"price_score": 123,
"speed_score": 123,
"reliability_score": 123,
"metadata": {}
}
]
},
"error": null,
"request_id": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
},
"request_id": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
},
"request_id": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
},
"request_id": "<string>"
}Provider API
List quotes
Beta route. Quotes are currently either synthetic mock responses or hybrid responses derived from the core provider capability API. They should still be treated as beta routing data until transfer-intent and settlement execution are fully normalized in Onstacks. Inspect X-Onstacks-Provider-Network-Mode to determine the active backing mode.
GET
https://api.onstacks.io
/
v1
/
quote-requests
/
{quoteRequestId}
/
quotes
List quotes
curl --request GET \
--url https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onstacks.io/v1/quote-requests/{quoteRequestId}/quotes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"quote_request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment": "sandbox",
"provider_id": "<string>",
"provider_name": "<string>",
"source_amount": "<string>",
"destination_amount": "<string>",
"fx_rate": "<string>",
"fee_amount": "<string>",
"eta_seconds": 123,
"expires_at": "2023-11-07T05:31:56Z",
"payout_method": "<string>",
"price_score": 123,
"speed_score": 123,
"reliability_score": 123,
"metadata": {}
}
]
},
"error": null,
"request_id": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
},
"request_id": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
},
"request_id": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
},
"request_id": "<string>"
}Authorizations
Workspace API key. Send it as Authorization: Bearer <api_key>.
Path Parameters
Query Parameters
Environment scope for environment-partitioned resources. Defaults to sandbox when omitted.
Available options:
sandbox, live 