curl --request GET \
--url https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId} \
--header 'Api-Key: <api-key>'import requests
url = "https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId}"
headers = {"Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'Api-Key': '<api-key>'}};
fetch('https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId}', 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-dev.rain.xyz/v1/payment-routes/{paymentRouteId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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-dev.rain.xyz/v1/payment-routes/{paymentRouteId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Api-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-dev.rain.xyz/v1/payment-routes/{paymentRouteId}")
.header("Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"userId": "11111111-1111-1111-1111-111111111111",
"status": "active",
"source": {
"currency": "usd",
"rail": "ach"
},
"destination": {
"currency": "usdc",
"rail": "base",
"address": {
"type": "onchain",
"address": "0x1234567890abcdef1234567890abcdef12345678"
}
},
"depositAddress": {
"type": "fiat",
"beneficiaryName": "RAIN PAYMENTS INC",
"beneficiaryAddress": "123 Finance St, New York, NY 10001, US",
"beneficiaryBankName": "Partner Bank, N.A.",
"beneficiaryBankAddress": "456 Bank Ave, New York, NY 10002, US",
"accountNumber": "9876543210",
"routingNumber": "021000021",
"transferMessage": "REF-A1B2C3D4"
},
"createdAt": "2025-01-15T10:00:00Z",
"updatedAt": "2025-01-15T10:00:00Z"
}{
"statusCode": 401,
"error": "Unauthorized",
"message": "Invalid or missing API key"
}{
"statusCode": 403,
"error": "ForbiddenError",
"message": "Forbidden - automations not enabled for tenant"
}{
"statusCode": 404,
"error": "NotFoundError",
"message": "Payment route not found"
}{
"statusCode": 500,
"error": "InternalServerError",
"message": "Internal server error"
}Get a payment route
Returns a single payment route by ID.
Deprecation Notice: This endpoint was previously named
/v1/automations/{automationId}. The old path remains available as a deprecated alias. Update your integrations to use/v1/payment-routes/{paymentRouteId}.
curl --request GET \
--url https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId} \
--header 'Api-Key: <api-key>'import requests
url = "https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId}"
headers = {"Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'Api-Key': '<api-key>'}};
fetch('https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId}', 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-dev.rain.xyz/v1/payment-routes/{paymentRouteId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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-dev.rain.xyz/v1/payment-routes/{paymentRouteId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Api-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-dev.rain.xyz/v1/payment-routes/{paymentRouteId}")
.header("Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.rain.xyz/v1/payment-routes/{paymentRouteId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"userId": "11111111-1111-1111-1111-111111111111",
"status": "active",
"source": {
"currency": "usd",
"rail": "ach"
},
"destination": {
"currency": "usdc",
"rail": "base",
"address": {
"type": "onchain",
"address": "0x1234567890abcdef1234567890abcdef12345678"
}
},
"depositAddress": {
"type": "fiat",
"beneficiaryName": "RAIN PAYMENTS INC",
"beneficiaryAddress": "123 Finance St, New York, NY 10001, US",
"beneficiaryBankName": "Partner Bank, N.A.",
"beneficiaryBankAddress": "456 Bank Ave, New York, NY 10002, US",
"accountNumber": "9876543210",
"routingNumber": "021000021",
"transferMessage": "REF-A1B2C3D4"
},
"createdAt": "2025-01-15T10:00:00Z",
"updatedAt": "2025-01-15T10:00:00Z"
}{
"statusCode": 401,
"error": "Unauthorized",
"message": "Invalid or missing API key"
}{
"statusCode": 403,
"error": "ForbiddenError",
"message": "Forbidden - automations not enabled for tenant"
}{
"statusCode": 404,
"error": "NotFoundError",
"message": "Payment route not found"
}{
"statusCode": 500,
"error": "InternalServerError",
"message": "Internal server error"
}Authorizations
Path Parameters
ID of the payment route to retrieve
Response
Successful operation
The unique identifier of the payment route
Status of the payment route
active, frozen, deleted Crypto source configuration
- Crypto Source
- Fiat Source
Show child attributes
Show child attributes
Onchain destination with direct address
- Onchain Destination
- Fiat Destination
Show child attributes
Show child attributes
The deposit address for funds to be sent to this payment route
- Fiat Deposit Address
- Onchain Deposit Address
Show child attributes
Show child attributes
When the payment route was created
When the payment route was last updated
User ID (present for individual teams; omit for company teams)
Company ID (present for company teams; omit for individual teams)
The onchain address where funds are returned if a transaction cannot be completed. Present when the source is a crypto rail.
Array of sender fee configurations for this payment route. Present when sender fees are configured.
Show child attributes
Show child attributes
Deprecated: use senderFees instead. Returns the same values as senderFees for backward compatibility.
Show child attributes
Show child attributes