Routing
List Routings
Lists all routings of an account, optionally filtered by payment method.
GET
/
routing
List Routings
curl --request GET \
--url https://api-sandbox.y.uno/v1/routing \
--header 'PRIVATE-SECRET-KEY: <api-key>' \
--header 'PUBLIC-API-KEY: <api-key>'import requests
url = "https://api-sandbox.y.uno/v1/routing"
headers = {
"PUBLIC-API-KEY": "<api-key>",
"PRIVATE-SECRET-KEY": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'PUBLIC-API-KEY': '<api-key>', 'PRIVATE-SECRET-KEY': '<api-key>'}
};
fetch('https://api-sandbox.y.uno/v1/routing', 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-sandbox.y.uno/v1/routing",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"PRIVATE-SECRET-KEY: <api-key>",
"PUBLIC-API-KEY: <api-key>"
],
]);
$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-sandbox.y.uno/v1/routing"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("PUBLIC-API-KEY", "<api-key>")
req.Header.Add("PRIVATE-SECRET-KEY", "<api-key>")
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-sandbox.y.uno/v1/routing")
.header("PUBLIC-API-KEY", "<api-key>")
.header("PRIVATE-SECRET-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.y.uno/v1/routing")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["PUBLIC-API-KEY"] = '<api-key>'
request["PRIVATE-SECRET-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "8f2c1d3e-4b5a-4c7d-8e9f-0a1b2c3d4e5f",
"account_id": "acc-uuid",
"payment_method": "CARD",
"name": "Card routing — Stripe primary, Adyen fallback",
"default_route": {
"start_split": [
{
"index": 1,
"percentage": 45
}
],
"steps": [
{
"index": 1,
"provider_id": "STRIPE",
"connection_id": "f1a3c4d5-...",
"provider_type": "PAYMENT",
"timeout": 60,
"network_token_enable": true,
"network_token_on": true,
"three_d_secure_exemptions": [
"LOW_VALUE"
],
"action": "CANCEL",
"action_delay": "PT5M",
"output": [
{
"status": "DECLINED",
"decline_types": [
"<string>"
],
"group_id": 1044,
"group_name": "Soft declines",
"retry": false,
"next": 2,
"next_split": [
{
"index": 2,
"percentage": 70
}
]
}
],
"fraud": {
"rules": "rule-a,rule-b",
"blocklists": "<string>",
"allowlists": "<string>",
"reviewlists": "<string>",
"preset": "<string>",
"report_only": true
},
"smart_routing": {
"type": "LATENCY",
"providers": [
{
"provider_id": "ADYEN",
"connection_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"network_token_on": true
}
],
"no_retry_decline_types": [
"<string>"
],
"no_retry_failure_causes": [
"<string>"
]
}
}
]
},
"condition_sets": [
{
"sort_number": 1,
"name": "High Value US",
"description": "<string>",
"conditions": [
{
"condition_type": "COUNTRY",
"conditional": "ONE_OF",
"values": [
"US",
"CA"
],
"key": "<string>",
"currency": "USD",
"time_period_repeat_amount": 1,
"time_period_repeat_frequency": "DAILY",
"time_period_repetition_days": [
"MONDAY"
],
"time_period_start_time": "09:00:00",
"time_period_end_time": "18:00:00",
"timezone": "-03:00",
"limit_by": "PAYMENTS",
"payments_count": "ALL"
}
],
"route": {}
}
],
"created_at": "2026-05-12T14:30:00Z",
"updated_at": "2026-05-12T14:30:00Z"
}
]{
"code": "ROUTING_VALIDATION_FAILED",
"messages": [
"account_id is required."
]
}{
"code": "NOT_AUTHENTICATED",
"messages": [
"Not authenticated"
]
}Lists the routings configured on an account. Each item returns the routing’s current live configuration, with the same shape as Retrieve a Routing.
Pass
payment_method to list only the routings for that payment method, and omit it to list all of them.
Query Parameters
The account to list routings for. Must belong to the organization your API credentials are scoped to.
Optional filter by payment method (e.g.,
CARD, PIX). Same values as the payment_method field in routing responses.Response
The routings configured on the account, or an empty array if it has none. Each routing contains:Optional list of non-blocking orchestration warnings (e.g.,
MONITOR_REDISTRIBUTION_DEFERRED).curl -X GET 'https://api.y.uno/v1/routing?account_id=7825fc5e-e50a-4248-9ae8-5d3786afb0be&payment_method=CARD' \
-H 'public-api-key: <YOUR_PUBLIC_KEY>' \
-H 'private-secret-key: <YOUR_SECRET_KEY>'
[
{
"id": "8f2c1d3e-4b5a-4c7d-8e9f-0a1b2c3d4e5f",
"account_id": "acc-uuid",
"payment_method": "CARD",
"name": "Card routing — Stripe primary, Adyen fallback",
"default_route": {
"steps": [
{
"index": 1,
"provider_id": "STRIPE",
"connection_id": "f1a3c4d5-7b8e-4a2c-9d1e-3f4a5b6c7d8e",
"output": [
{ "status": "DECLINE_GROUP", "next": 2 },
{ "status": "TIMEOUT", "next": 2 }
]
},
{ "index": 2, "provider_id": "ADYEN", "connection_id": "b2c4d5e6-..." }
]
},
"created_at": "2026-05-12T14:30:00Z",
"updated_at": "2026-05-12T14:30:00Z"
}
]
{
"code": "ROUTING_VALIDATION_FAILED",
"messages": ["account_id is required."]
}
{
"code": "INVALID_ACCOUNT_ID",
"messages": ["account_id 'acc-uuid' does not belong to your organization."]
}
Errors
| HTTP | code | When |
|---|---|---|
400 | ROUTING_VALIDATION_FAILED | Missing account_id query parameter. |
400 | INVALID_ACCOUNT_ID | account_id belongs to an organization your API key doesn’t own. |
401 | NOT_AUTHENTICATED | Missing public-api-key or private-secret-key header. |
401 | INVALID_CREDENTIALS | Wrong key pair, or a Dashboard Customized API key was used. Use an account key or organization key instead. |
Authorizations
Query Parameters
Response
The routings configured on the account, or an empty array if it has none.
Was this page helpful?
⌘I
List Routings
curl --request GET \
--url https://api-sandbox.y.uno/v1/routing \
--header 'PRIVATE-SECRET-KEY: <api-key>' \
--header 'PUBLIC-API-KEY: <api-key>'import requests
url = "https://api-sandbox.y.uno/v1/routing"
headers = {
"PUBLIC-API-KEY": "<api-key>",
"PRIVATE-SECRET-KEY": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'PUBLIC-API-KEY': '<api-key>', 'PRIVATE-SECRET-KEY': '<api-key>'}
};
fetch('https://api-sandbox.y.uno/v1/routing', 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-sandbox.y.uno/v1/routing",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"PRIVATE-SECRET-KEY: <api-key>",
"PUBLIC-API-KEY: <api-key>"
],
]);
$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-sandbox.y.uno/v1/routing"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("PUBLIC-API-KEY", "<api-key>")
req.Header.Add("PRIVATE-SECRET-KEY", "<api-key>")
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-sandbox.y.uno/v1/routing")
.header("PUBLIC-API-KEY", "<api-key>")
.header("PRIVATE-SECRET-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.y.uno/v1/routing")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["PUBLIC-API-KEY"] = '<api-key>'
request["PRIVATE-SECRET-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "8f2c1d3e-4b5a-4c7d-8e9f-0a1b2c3d4e5f",
"account_id": "acc-uuid",
"payment_method": "CARD",
"name": "Card routing — Stripe primary, Adyen fallback",
"default_route": {
"start_split": [
{
"index": 1,
"percentage": 45
}
],
"steps": [
{
"index": 1,
"provider_id": "STRIPE",
"connection_id": "f1a3c4d5-...",
"provider_type": "PAYMENT",
"timeout": 60,
"network_token_enable": true,
"network_token_on": true,
"three_d_secure_exemptions": [
"LOW_VALUE"
],
"action": "CANCEL",
"action_delay": "PT5M",
"output": [
{
"status": "DECLINED",
"decline_types": [
"<string>"
],
"group_id": 1044,
"group_name": "Soft declines",
"retry": false,
"next": 2,
"next_split": [
{
"index": 2,
"percentage": 70
}
]
}
],
"fraud": {
"rules": "rule-a,rule-b",
"blocklists": "<string>",
"allowlists": "<string>",
"reviewlists": "<string>",
"preset": "<string>",
"report_only": true
},
"smart_routing": {
"type": "LATENCY",
"providers": [
{
"provider_id": "ADYEN",
"connection_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"network_token_on": true
}
],
"no_retry_decline_types": [
"<string>"
],
"no_retry_failure_causes": [
"<string>"
]
}
}
]
},
"condition_sets": [
{
"sort_number": 1,
"name": "High Value US",
"description": "<string>",
"conditions": [
{
"condition_type": "COUNTRY",
"conditional": "ONE_OF",
"values": [
"US",
"CA"
],
"key": "<string>",
"currency": "USD",
"time_period_repeat_amount": 1,
"time_period_repeat_frequency": "DAILY",
"time_period_repetition_days": [
"MONDAY"
],
"time_period_start_time": "09:00:00",
"time_period_end_time": "18:00:00",
"timezone": "-03:00",
"limit_by": "PAYMENTS",
"payments_count": "ALL"
}
],
"route": {}
}
],
"created_at": "2026-05-12T14:30:00Z",
"updated_at": "2026-05-12T14:30:00Z"
}
]{
"code": "ROUTING_VALIDATION_FAILED",
"messages": [
"account_id is required."
]
}{
"code": "NOT_AUTHENTICATED",
"messages": [
"Not authenticated"
]
}