Account

The key's owner, the tokens campaigns pay out in, and the server clock.

3 endpoints, generated from openapi.yaml. New to the API? Start with the Overview.

Base URL
https://app.airaa.xyz

Every tool is a POST to /api/ai/mcp/tools/{tool}/execute with arguments wrapped in an args object, authorised with Authorization: Bearer airaa_<key>.

get_tokens

List payout tokens

POST/api/ai/mcp/tools/get_tokens/execute

Returns active payout tokens. Tokens are either POINTS (community points, no chain) or ERC20 (onchain, with an address, chain id and decimals).

Pass projectId to get the tokens a specific community pays in. When projectId is set the type filter is ignored.

With no arguments this returns every active token on the platform, which includes the points tokens of communities the key does not manage.

Arguments

typeenum | null

Ignored when projectId is set.

ERC20POINTS
projectIdstring | null

A community id from list_manageable_projects.

Returns

Fields inside result.

Array item
idstring
symbolstring
namestring
logostring | null
addressstring | null

Contract address. Null for POINTS tokens.

chainIdstring | null
decimalsinteger
statusenum
ACTIVEINACTIVE
typeTokenType
ERC20POINTS

Errors

  • 400An argument failed schema validation. The message names the offending field and its allowed values.
  • 401The key is missing or not valid.
  • 403The key is valid but the user does not administer the requested community.
  • 405Execute endpoints accept POST only.

Request

curl -X POST https://app.airaa.xyz/api/ai/mcp/tools/get_tokens/execute \
  -H "Authorization: Bearer $AIRAA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"args": {"projectId": "3f2a9c7e-1b84-4d5a-9e60-7c1af2b83d41"}}'

Response

200
{
  "result": [
    {
      "id": "4e8c1a95-7d20-4f63-b8a1-06d9e5c34f27",
      "symbol": "USDC",
      "name": "USD Coin",
      "logo": "https://basescan.org/token/images/centre-usdc_28.png",
      "address": "0x3AF9cB6000b310c909e10f79A9Ec642960eeEe99",
      "chainId": "8453",
      "decimals": 18,
      "status": "ACTIVE",
      "type": "ERC20"
    },
    {
      "id": "b81c4d02-5f6a-4e33-a1d7-92e845bc0f16",
      "symbol": "LUM",
      "name": "Lumen Points",
      "logo": "https://cdn.airaa.xyz/images/tokens/lumen.jpg",
      "address": null,
      "chainId": null,
      "decimals": 0,
      "status": "ACTIVE",
      "type": "POINTS"
    }
  ]
}

get_user_info

Get the key owner

POST/api/ai/mcp/tools/get_user_info/execute

Returns the profile of the user the key belongs to: account flags, X profile, connected social accounts, wallets, aura points and the last known request location.

Useful for confirming which account a key is acting as before you run anything else.

Arguments

No arguments. Send {"args": {}}.

Returns

Fields inside result.

idstring
emailstring | null
badgestring | null
statusstring | null
isActiveboolean
verifiedboolean
isScoutboolean
twitterProfileIdstring | null
turnkeyExternalUserIdstring | null
telegramIdstring | null
telegramUsernamestring | null
privacyApprovedboolean
isClaimedboolean
profileTwitterProfile | null
totalBalancestring | null
totalVolumestring | null
totalDappsInteractedinteger | null
totalAuraPointsinteger
primaryWalletAddressstring | null
primaryWalletBalancestring | null
createdAtstring
updatedAtstring
namestring | null
photoUrlstring | null
userNichearray of string
usernamestring
biostring | null
nichearray of string
spamMultipliernumber | null
walletsarray of object
isAiraaCreatorboolean
isCampaignCreatorboolean
onboardingCompletedboolean
accountsarray of object

Connected social accounts.

locationobject | null

Errors

  • 401The key is missing or not valid.
  • 405Execute endpoints accept POST only.

Request

curl -X POST https://app.airaa.xyz/api/ai/mcp/tools/get_user_info/execute \
  -H "Authorization: Bearer $AIRAA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"args": {}}'

Response

200
{
  "result": {
    "id": "8d15b4c7-3e29-4a60-9f81-6b2c7e04d5a3",
    "email": "alex@lumenlabs.example",
    "badge": null,
    "status": null,
    "isActive": true,
    "verified": true,
    "isScout": false,
    "twitterProfileId": "f61a2c48-9b73-4d05-8e2f-30c7a95b1e64",
    "turnkeyExternalUserId": "5b0d9e37-2a46-4c81-b7f3-89e14d6a02c5",
    "telegramId": null,
    "telegramUsername": null,
    "privacyApproved": false,
    "isClaimed": false,
    "profile": {
      "id": "f61a2c48-9b73-4d05-8e2f-30c7a95b1e64",
      "externalId": "766921563169959936",
      "name": "Alex Morgan",
      "username": "alexmorgan",
      "url": "https://twitter.com/alexmorgan",
      "description": "Building Lumen Labs",
      "profileImageUrl": "https://pbs.twimg.com/profile_images/example/avatar.jpg",
      "followersCount": 2419,
      "smartFollowersCount": 6,
      "followingCount": 1743,
      "profileCreatedAt": "2016-08-20T08:55:24.000Z",
      "contentCount": 4516,
      "accountBasedIn": null
    },
    "totalBalance": null,
    "totalVolume": null,
    "totalDappsInteracted": null,
    "totalAuraPoints": 90,
    "primaryWalletAddress": "0x7a3f9c21e845bd06f1a2c9e37b508d4a6f2e1c93",
    "primaryWalletBalance": null,
    "createdAt": "2026-05-31T11:02:45.414Z",
    "updatedAt": "2026-08-15T20:54:13.718Z",
    "name": "Alex",
    "photoUrl": "https://cdn.airaa.xyz/images/profile-placeholders/image2.webp",
    "userNiche": [
      "Creator",
      "Tech",
      "Business"
    ],
    "username": "alexmorgan",
    "bio": "Building in public",
    "niche": [
      "SOCIAL/CONSUMER"
    ],
    "spamMultiplier": 0.01,
    "wallets": [
      {
        "updatedAt": "2026-06-18T12:35:44.412Z",
        "address": "0x7a3f9c21e845bd06f1a2c9e37b508d4a6f2e1c93",
        "type": "EVM",
        "projectSlug": null,
        "isPrimary": true
      }
    ],
    "isAiraaCreator": true,
    "isCampaignCreator": false,
    "onboardingCompleted": true,
    "accounts": [
      {
        "platformId": "2b8e4a6c-9d03-4f17-c5b2-0a38e6d94f71",
        "platformName": "Instagram",
        "externalId": "2981370973",
        "externalUsername": "alexmorgan",
        "connectedAt": "2026-07-31T14:51:10.812Z"
      }
    ],
    "location": {
      "country": "United States",
      "countryCode": "US",
      "proxy": false,
      "hosting": false,
      "lastUpdatedAt": "2026-08-15T16:17:53.558Z"
    }
  }
}

get_current_datetime

Get the server clock

POST/api/ai/mcp/tools/get_current_datetime/execute

Returns the current date and time, optionally in a given IANA timezone. Mainly useful for agents that need to resolve relative dates such as "this month" before calling get_project_leaderboard.

Over HTTP this returns a locale formatted string such as 8/16/2026, 2:12:52 AM. The same tool called over MCP returns an ISO 8601 timestamp. Parse defensively.

Arguments

timezonestring | null

IANA timezone name. Defaults to UTC.

defaults to "UTC"

Returns

Fields inside result.

datetimestring

Locale formatted date and time over HTTP.

timezonestring

Errors

  • 400An argument failed schema validation. The message names the offending field and its allowed values.
  • 401The key is missing or not valid.
  • 405Execute endpoints accept POST only.

Request

curl -X POST https://app.airaa.xyz/api/ai/mcp/tools/get_current_datetime/execute \
  -H "Authorization: Bearer $AIRAA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"args": {"timezone": "UTC"}}'

Response

200
{
  "result": {
    "datetime": "8/16/2026, 2:12:52 AM",
    "timezone": "Asia/Kolkata"
  }
}