curl --request GET \
--url https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId}', 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.nevermined.app/api/v1/delegation/{delegationId}",
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.sandbox.nevermined.app/api/v1/delegation/{delegationId}"
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.sandbox.nevermined.app/api/v1/delegation/{delegationId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId}")
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{
"delegationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"provider": "stripe",
"providerPaymentMethodId": "pm_1Abc2Def3Ghi4Jkl",
"status": "Active",
"spendingLimitCents": "10000",
"amountSpentCents": "2500",
"remainingBudgetCents": "7500",
"currency": "usd",
"transactionCount": 12,
"expiresAt": "2026-02-20T00:00:00Z",
"createdAt": "2026-02-13T10:30:00Z",
"planId": "123456789",
"maxTransactions": 50,
"lastUsedAt": "2026-02-13T14:00:00Z",
"apiKeyId": "sk-abc123",
"fundingWalletAddress": "0x1234abcd5678ef901234abcd5678ef901234abcd",
"lockedInChannels": [
{
"network": 4217,
"token": "0x20C000000000000000000000b9537d11c60E8b50",
"symbol": "USDC.e",
"decimals": 6,
"atomic": "6000000",
"formatted": "6"
}
]
}Get Delegation
Returns the full details of a single delegation owned by the authenticated user, including remaining budget and last-used timestamp. Requires a Nevermined API key.
curl --request GET \
--url https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId}', 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.nevermined.app/api/v1/delegation/{delegationId}",
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.sandbox.nevermined.app/api/v1/delegation/{delegationId}"
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.sandbox.nevermined.app/api/v1/delegation/{delegationId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.nevermined.app/api/v1/delegation/{delegationId}")
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{
"delegationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"provider": "stripe",
"providerPaymentMethodId": "pm_1Abc2Def3Ghi4Jkl",
"status": "Active",
"spendingLimitCents": "10000",
"amountSpentCents": "2500",
"remainingBudgetCents": "7500",
"currency": "usd",
"transactionCount": 12,
"expiresAt": "2026-02-20T00:00:00Z",
"createdAt": "2026-02-13T10:30:00Z",
"planId": "123456789",
"maxTransactions": 50,
"lastUsedAt": "2026-02-13T14:00:00Z",
"apiKeyId": "sk-abc123",
"fundingWalletAddress": "0x1234abcd5678ef901234abcd5678ef901234abcd",
"lockedInChannels": [
{
"network": 4217,
"token": "0x20C000000000000000000000b9537d11c60E8b50",
"symbol": "USDC.e",
"decimals": 6,
"atomic": "6000000",
"formatted": "6"
}
]
}Authorizations
Your Nevermined API Key (starts with 'nvm:'). Get one at nevermined.app under Settings > API Keys.
Path Parameters
UUID v4 of the delegation to fetch.
Query Parameters
When "true", also resolve fundingWalletAddress — the wallet the Router crypto rail spends from (EOA / 7702 kernel, or the org wallet) — and lockedInChannels, what that wallet has locked in MPP payment channels. Opt-in because it adds a wallet lookup and a channel read.
true, false Response
"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
"stripe"
"pm_1Abc2Def3Ghi4Jkl"
Active, Revoked, Expired, Exhausted "Active"
"10000"
"2500"
"7500"
"usd"
12
"2026-02-20T00:00:00Z"
"2026-02-13T10:30:00Z"
"123456789"
50
"2026-02-13T14:00:00Z"
NVM API Key ID restricted to this delegation. Null = any key can use it.
"sk-abc123"
On-chain wallet the Router crypto rail spends from for this delegation — the caller EOA (7702 kernel address for migrated wallets) for a personal delegation, or the organization wallet for an org-wallet delegation. Fund/check THIS wallet before a Router call. Only returned when requested with ?withPayer=true. null on card-backed delegations (a card is not funded from a wallet), or on a crypto delegation whose payer wallet could not be resolved.
"0x1234abcd5678ef901234abcd5678ef901234abcd"
Money fundingWalletAddress has deposited into MPP session payment channels and can still get back, per chain and token. It has left the wallet but it is not spent and it is not charged to this budget: it comes back to the wallet when the channel closes. It is the FUNDING WALLET’s total, not a per-delegation figure: every delegation spending from the same wallet reports the same channels. Only returned when requested with ?withPayer=true. An empty list means nothing is locked, and is what a card-backed delegation reports. null means it could not be determined (the funding wallet could not be resolved, or the read failed), which is not the same as nothing locked.
Show child attributes
Show child attributes
Was this page helpful?