curl --request GET \
--url https://api.agentaos.ai/api/v1/gateway/payment-links/{id} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.agentaos.ai/api/v1/gateway/payment-links/{id}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.agentaos.ai/api/v1/gateway/payment-links/{id}', 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.agentaos.ai/api/v1/gateway/payment-links/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-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.agentaos.ai/api/v1/gateway/payment-links/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-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.agentaos.ai/api/v1/gateway/payment-links/{id}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.agentaos.ai/api/v1/gateway/payment-links/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"org_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"secure_link_id": "<string>",
"amount": 123,
"currency": "<string>",
"description": "<string>",
"metadata": {},
"checkout_fields": [
{
"key": "<string>",
"label": "<string>",
"required": true,
"placeholder": "<string>",
"options": [
"<string>"
]
}
],
"webhook_url": "<string>",
"success_url": "<string>",
"cancel_url": "<string>",
"tax_rate_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"payment_count": 123,
"supported_networks": [
"<string>"
],
"expires_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"name": "<string>",
"image_url": "<string>",
"max_uses": 123,
"checkoutUrl": "<string>",
"transactions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"amount": 123,
"created_at": "2023-11-07T05:31:56Z",
"payment_method": "<string>"
}
]
}{
"statusCode": 401,
"message": "Invalid API key",
"timestamp": "2026-08-06T12:00:00.000Z"
}{
"statusCode": 403,
"message": "Payment link belongs to another organization",
"timestamp": "2026-08-06T12:00:00.000Z"
}{
"statusCode": 404,
"message": "Payment link not found",
"timestamp": "2026-08-06T12:00:00.000Z"
}Retrieve a payment link
Same fields as create, plus transactions: every payment (inbound or outbound) recorded against this link, newest first, same row shape as a Transaction but without the computed money breakdown.
curl --request GET \
--url https://api.agentaos.ai/api/v1/gateway/payment-links/{id} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.agentaos.ai/api/v1/gateway/payment-links/{id}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.agentaos.ai/api/v1/gateway/payment-links/{id}', 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.agentaos.ai/api/v1/gateway/payment-links/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-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.agentaos.ai/api/v1/gateway/payment-links/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-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.agentaos.ai/api/v1/gateway/payment-links/{id}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.agentaos.ai/api/v1/gateway/payment-links/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"org_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"secure_link_id": "<string>",
"amount": 123,
"currency": "<string>",
"description": "<string>",
"metadata": {},
"checkout_fields": [
{
"key": "<string>",
"label": "<string>",
"required": true,
"placeholder": "<string>",
"options": [
"<string>"
]
}
],
"webhook_url": "<string>",
"success_url": "<string>",
"cancel_url": "<string>",
"tax_rate_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"payment_count": 123,
"supported_networks": [
"<string>"
],
"expires_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"name": "<string>",
"image_url": "<string>",
"max_uses": 123,
"checkoutUrl": "<string>",
"transactions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"amount": 123,
"created_at": "2023-11-07T05:31:56Z",
"payment_method": "<string>"
}
]
}{
"statusCode": 401,
"message": "Invalid API key",
"timestamp": "2026-08-06T12:00:00.000Z"
}{
"statusCode": 403,
"message": "Payment link belongs to another organization",
"timestamp": "2026-08-06T12:00:00.000Z"
}{
"statusCode": 404,
"message": "Payment link not found",
"timestamp": "2026-08-06T12:00:00.000Z"
}Authorizations
Your secret key, from app.agentaos.ai -> Settings -> Developers -> API Keys. The key's prefix is both its identity and its environment: sk_test_... (sandbox, free, no verification) or sk_live_... (real money, requires business verification). A missing or invalid key returns 401.
Path Parameters
Payment link UUID.
Response
The payment link, with its transaction history.
Payment link UUID.
Public ID used in the checkout URL.
Currency units.
Settlement currency or token.
Your custom data.
Show child attributes
Show child attributes
active, cancelled Successful payments against this link so far.
null means unlimited.
mor (card + bank) or crypto (on-chain). The snake_case column equivalent of the computed sellerMode.
mor, crypto one_time, subscription month, year, null test, live Full URL to share with buyers. Computed, camelCase, no snake_case equivalent.
mor, crypto Every payment (inbound or outbound) recorded against this link, newest first.
Show child attributes
Show child attributes