curl --request GET \
--url https://pulsarpay.io/api/v1/agents/charge/{id} \
--header 'x-agent-key: <x-agent-key>'import requests
url = "https://pulsarpay.io/api/v1/agents/charge/{id}"
headers = {"x-agent-key": "<x-agent-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-agent-key': '<x-agent-key>'}};
fetch('https://pulsarpay.io/api/v1/agents/charge/{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://pulsarpay.io/api/v1/agents/charge/{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-agent-key: <x-agent-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://pulsarpay.io/api/v1/agents/charge/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-agent-key", "<x-agent-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://pulsarpay.io/api/v1/agents/charge/{id}")
.header("x-agent-key", "<x-agent-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://pulsarpay.io/api/v1/agents/charge/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-agent-key"] = '<x-agent-key>'
response = http.request(request)
puts response.read_body{
"id": "cmnf6jwup00091rcvo4qevr42",
"idempotencyKey": "2207f602-c751-4b9b-98ae-456653bfe7b7",
"amount": 50,
"currency": "USDC",
"description": "AI Inference Service",
"status": "FAILED",
"createdAt": "2026-03-31T22:20:03.217Z"
}{
"error": "invalid agent key"
}{
"error": "charge not found"
}Get Charge
Returns the full object of a specific charge. Use this to poll the status of a transaction or to retrieve metadata for reconciliation.
curl --request GET \
--url https://pulsarpay.io/api/v1/agents/charge/{id} \
--header 'x-agent-key: <x-agent-key>'import requests
url = "https://pulsarpay.io/api/v1/agents/charge/{id}"
headers = {"x-agent-key": "<x-agent-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-agent-key': '<x-agent-key>'}};
fetch('https://pulsarpay.io/api/v1/agents/charge/{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://pulsarpay.io/api/v1/agents/charge/{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-agent-key: <x-agent-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://pulsarpay.io/api/v1/agents/charge/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-agent-key", "<x-agent-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://pulsarpay.io/api/v1/agents/charge/{id}")
.header("x-agent-key", "<x-agent-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://pulsarpay.io/api/v1/agents/charge/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-agent-key"] = '<x-agent-key>'
response = http.request(request)
puts response.read_body{
"id": "cmnf6jwup00091rcvo4qevr42",
"idempotencyKey": "2207f602-c751-4b9b-98ae-456653bfe7b7",
"amount": 50,
"currency": "USDC",
"description": "AI Inference Service",
"status": "FAILED",
"createdAt": "2026-03-31T22:20:03.217Z"
}{
"error": "invalid agent key"
}{
"error": "charge not found"
}Headers
The secret API key of the agent. This key ensures that only the agent who created the charge (or has administrative access) can view its details.
Path Parameters
The unique Cuids-based identifier for the charge. This is the chargeId returned during the creation process.
Response
Charge details retrieved successfully
Unique identifier for the charge record.
"cmnf6jwup00091rcvo4qevr42"
The unique string provided during creation to prevent duplicate processing.
"2207f602-c751-4b9b-98ae-456653bfe7b7"
The transaction amount in decimal format (e.g., 50.00).
50
The currency used for the transaction.
USDC, USD "USDC"
The purpose of the charge as defined by the agent.
"AI Inference Service"
The current state of the charge in its lifecycle.
PENDING, SUCCESS, FAILED, EXPIRED "FAILED"
Timestamp when the charge was first initialized.
"2026-03-31T22:20:03.217Z"

