Skip to main content
GET
/
token-launch
/
fee-share
/
wallet
/
v2
Get fee share wallet (v2)
curl --request GET \
  --url https://public-api-v2.bags.fm/api/v1/token-launch/fee-share/wallet/v2 \
  --header 'x-api-key: <api-key>'
import requests

url = "https://public-api-v2.bags.fm/api/v1/token-launch/fee-share/wallet/v2"

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/token-launch/fee-share/wallet/v2', 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/token-launch/fee-share/wallet/v2",
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/token-launch/fee-share/wallet/v2"

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/token-launch/fee-share/wallet/v2")
.header("x-api-key", "<api-key>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://public-api-v2.bags.fm/api/v1/token-launch/fee-share/wallet/v2")

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": {
    "provider": "twitter",
    "platformData": {
      "id": "<string>",
      "username": "<string>",
      "display_name": "<string>",
      "avatar_url": "<string>"
    },
    "wallet": "<string>",
    "chain": "SOL"
  }
}
{
"success": false,
"response": "<string>"
}
{
"success": false,
"error": "<string>"
}
{
"success": false,
"response": "<string>"
}
{
"success": false,
"response": "<string>"
}

Choosing a chain

The optional chain parameter selects which embedded wallet to resolve:
  • SOL (default when omitted) — returns the user’s Solana embedded wallet as a base58 address.
  • EVM — resolves the user’s Ethereum embedded wallet from Privy, creating one if the user has none, and returns a 0x… address.
The resolved chain is always echoed back in the response, defaulting to SOL when the parameter was omitted.
The solana provider is a raw wallet-address passthrough (the username is the Solana public key) and only supports SOL. Combining provider=solana with chain=EVM returns a 400 error.

Authorizations

x-api-key
string
header
required

API key authentication. Provide your API key as the header value.

Query Parameters

provider
enum<string>
required

Social provider (e.g., twitter, instagram, github) Supported social/auth providers

Available options:
apple,
google,
email,
solana,
twitter,
tiktok,
kick,
instagram,
onlyfans,
github,
moltbook
Example:

"twitter"

username
string
required

Username/handle on the provider platform

Required string length: 1 - 100
chain
enum<string>
default:SOL

Blockchain to resolve the wallet on (SOL or EVM). Defaults to SOL. The solana provider only supports SOL. Blockchain to resolve the wallet on. SOL returns the user's Solana embedded wallet (base58). EVM returns the user's Ethereum embedded wallet from Privy (0x…). Defaults to SOL when omitted. The solana provider only supports SOL.

Available options:
SOL,
EVM

Response

Successfully retrieved wallet address

success
enum<boolean>
required
Available options:
true
response
object
required