curl --request GET \
--url https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me \
--header 'X-Monaco-Signature: <api-key>'import requests
url = "https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me"
headers = {"X-Monaco-Signature": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Monaco-Signature': '<api-key>'}};
fetch('https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me', 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://staging.apimonaco.xyz/api/v1/pitpass/referrals/me",
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-Monaco-Signature: <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://staging.apimonaco.xyz/api/v1/pitpass/referrals/me"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Monaco-Signature", "<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://staging.apimonaco.xyz/api/v1/pitpass/referrals/me")
.header("X-Monaco-Signature", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Monaco-Signature"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"referrer": "0x0000000000000000000000000000000000000002",
"totalEarned": "1400000",
"referrerDisplay": "cooltrader123",
"rewards": [
{
"source": "0x0000000000000000000000000000000000000002",
"level": 1,
"amount": "1200000",
"token": "0x0000000000000000000000000000000000000002",
"rateApplied": "0.30",
"createdAt": "2026-07-07T18:00:00Z",
"sourceDisplay": "cooltrader123"
}
],
"upline": [
{
"wallet": "0x0000000000000000000000000000000000000002",
"display": "<string>",
"level": 5
}
]
}Get your referral position (deprecated PitPass path)
Read your own referral position (self-scoped).
Return the authenticated caller’s referral position: their referral chain
upward (L1, L2 and onward — who referred them, who referred that wallet, and
so on, as many levels as their trades on this client application pay), the
total rewards they have earned, and their most recent reward rows.
Self-scoped — identity comes only from the session, never a path id,
so a caller can only ever read their own chain. Every other user is
identified by their public wallet address, never an internal id. An empty
referrer means the caller was not referred.
curl --request GET \
--url https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me \
--header 'X-Monaco-Signature: <api-key>'import requests
url = "https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me"
headers = {"X-Monaco-Signature": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Monaco-Signature': '<api-key>'}};
fetch('https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me', 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://staging.apimonaco.xyz/api/v1/pitpass/referrals/me",
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-Monaco-Signature: <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://staging.apimonaco.xyz/api/v1/pitpass/referrals/me"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Monaco-Signature", "<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://staging.apimonaco.xyz/api/v1/pitpass/referrals/me")
.header("X-Monaco-Signature", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://staging.apimonaco.xyz/api/v1/pitpass/referrals/me")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Monaco-Signature"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"referrer": "0x0000000000000000000000000000000000000002",
"totalEarned": "1400000",
"referrerDisplay": "cooltrader123",
"rewards": [
{
"source": "0x0000000000000000000000000000000000000002",
"level": 1,
"amount": "1200000",
"token": "0x0000000000000000000000000000000000000002",
"rateApplied": "0.30",
"createdAt": "2026-07-07T18:00:00Z",
"sourceDisplay": "cooltrader123"
}
],
"upline": [
{
"wallet": "0x0000000000000000000000000000000000000002",
"display": "<string>",
"level": 5
}
]
}Authorizations
Ed25519 session-key request signing. Every authenticated request carries three headers: X-Monaco-PublicKey (64-char lowercase-hex session public key), X-Monaco-Timestamp (Unix milliseconds, within 30s of server time), and X-Monaco-Signature (hex ed25519 signature). The signature is over METHOD\npath?query\ntimestamp_ms\nSHA256_hex(body), where the body hash is the SHA-256 of the empty byte string when there is no body. Obtain the session keypair from POST /api/v1/auth/challenge followed by POST /api/v1/auth/verify.
Response
OK
Public wallet address of the caller's direct (L1) referrer — who referred them. Empty when the caller was not referred. The same wallet as the first upline entry whenever upline is not empty; never an internal id.
"0x0000000000000000000000000000000000000002"
Total reward amount the caller has earned, summed across every level and token, in RAW atomic units.
"1400000"
Human-facing name for the referrer: their custom TraderCode handle when they have claimed one, otherwise the wallet address (same as referrer). Empty when the caller was not referred. Render this instead of raw hex.
"cooltrader123"
The caller's most recent reward rows, newest first. Bounded server-side — not the full history.
Show child attributes
Show child attributes
The caller's referral chain upward, nearest first: L1 (who referred the caller), then L2 (who referred them), and so on: the levels the caller's trades on this client application pay (at most 10). Shorter when the chain ends; empty when the caller was not referred or this client application pays no referral levels. These are the wallets the caller's own trades on this client application pay referral rewards to.
Show child attributes
Show child attributes
Was this page helpful?

