Get deployer claimable positions
curl --request GET \
--url https://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions \
--header 'x-api-key: <api-key>'import requests
url = "https://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions"
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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions', 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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions",
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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions"
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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions")
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{
"success": true,
"response": {
"wallet": "<string>",
"quoteMint": "So11111111111111111111111111111111111111112",
"positions": [
{
"tokenMint": "<string>",
"pendingDbcLamports": "<string>",
"pendingDammLamports": "<string>",
"accruedLamports": "<string>",
"totalClaimableLamports": "<string>"
}
],
"vaultClaimableLamports": "<string>",
"unattributedVaultLamports": "<string>",
"totalClaimableLamports": "<string>"
}
}{
"success": false,
"response": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"response": "<string>"
}{
"success": false,
"response": "<string>"
}Fee Share
Get Deployer Claimable Positions
Return exact token-specific pending and accrued SOL deployer earnings for a wallet. Computations use fresh finalized pool/config state and event attribution reconciled with the aggregate vault. Amounts are decimal strings. Normal creator/recipient earnings remain on the existing creator endpoints. A successful response may be cached for 5 seconds with a 2-second stale window; unavailable attribution is an error, not a zero balance.
GET
/
fee-share
/
deployer
/
claimable-positions
Get deployer claimable positions
curl --request GET \
--url https://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions \
--header 'x-api-key: <api-key>'import requests
url = "https://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions"
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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions', 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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions",
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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions"
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://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://public-api-v2.bags.fm/api/v1/fee-share/deployer/claimable-positions")
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{
"success": true,
"response": {
"wallet": "<string>",
"quoteMint": "So11111111111111111111111111111111111111112",
"positions": [
{
"tokenMint": "<string>",
"pendingDbcLamports": "<string>",
"pendingDammLamports": "<string>",
"accruedLamports": "<string>",
"totalClaimableLamports": "<string>"
}
],
"vaultClaimableLamports": "<string>",
"unattributedVaultLamports": "<string>",
"totalClaimableLamports": "<string>"
}
}{
"success": false,
"response": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"response": "<string>"
}{
"success": false,
"response": "<string>"
}Returns token-attributed pending and accrued SOL deployer revenue. All amounts are decimal lamport strings. The wallet-wide residual remains separate, and unavailable attribution returns an error rather than a zero balance.
See Deployer Fees for the accounting formula and the separate creator claim flow.
Authorizations
API key authentication. Provide your API key as the header value.
Query Parameters
Base58 deployer public key; for newly created SOL fee-share v2 configs this is the config payer.
