Account

Register, login, manage API keys, and view usage statistics.

Base URLhttps://api.apps.myallies.com/v1
POST/account/registerRegister a new API accountexpand_less

Register a new API account

No Auth Required

Create a new API account. No authentication required. Returns your user ID, email, first API key, and subscription tier. Store the API key securely — it will not be shown again.

Request Body

NameTypeDescription
email *string
Email address for the new account
password *string
Account password (min 8 characters)

Responses

200Account created successfully
400Invalid email or password format
curl -X POST "https://api.apps.myallies.com/v1/account/register" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "demo@myallies.com",
  "password": "demo"
}'
Response Example
{
  "success": true,
  "data": {
    "userId": 42,
    "email": "demo@myallies.com",
    "apiKey": "ma_live_k8x2mN4pQ7...",
    "tier": "free",
    "message": "Account created. Store your API key securely."
  },
  "error": null,
  "meta": {
    "requestId": "req_a1b2c3",
    "timestamp": "2026-03-17T10:00:00Z",
    "version": "v1"
  }
}

terminal Try It

expand_more
POST/account/loginLogin and get JWT tokenexpand_less

Login and get JWT token

No Auth Required

Authenticate with email and password to receive a JWT token. No authentication required. The JWT is used for account management endpoints (managing API keys). For data endpoints, use your API key instead.

Request Body

NameTypeDescription
email *string
Account email address
password *string
Account password

Responses

200Login successful
401Invalid email or password
curl -X POST "https://api.apps.myallies.com/v1/account/login" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "demo@myallies.com",
  "password": "demo"
}'
Response Example
{
  "success": true,
  "data": {
    "token": "eyJhbGciOiJIUzI1NiIs...",
    "userId": 42,
    "email": "demo@myallies.com"
  },
  "error": null,
  "meta": {
    "requestId": "req_d4e5f6",
    "timestamp": "2026-03-17T10:01:00Z",
    "version": "v1"
  }
}

terminal Try It

expand_more
GET/account/keysList all API keysexpand_less

List all API keys

JWT Bearer Token

Retrieve all API keys associated with the authenticated user. Shows key prefix, name, status, and usage info. Requires JWT authentication (from login).

Responses

200List of API keys
curl -X GET "https://api.apps.myallies.com/v1/account/keys" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json"
Response Example
{
  "success": true,
  "data": [
    {
      "id": 1,
      "keyPrefix": "ma_live_k8x2...",
      "name": "Production Key",
      "isActive": true,
      "created": "2026-03-01T10:00:00Z",
      "lastUsedAt": "2026-03-17T09:45:00Z"
    },
    {
      "id": 2,
      "keyPrefix": "ma_live_p3n7...",
      "name": "Development Key",
      "isActive": true,
      "created": "2026-03-10T14:00:00Z",
      "lastUsedAt": null
    }
  ],
  "error": null,
  "meta": {
    "requestId": "req_g7h8i9",
    "timestamp": "2026-03-17T10:02:00Z",
    "version": "v1"
  }
}

terminal Try It

expand_more
POST/account/keysGenerate a new API keyexpand_less

Generate a new API key

JWT Bearer Token

Create a new API key with the given name. The full key is returned only once — store it securely. Requires JWT authentication (from login).

Request Body

NameTypeDescription
name *string
Descriptive name for the key (e.g., "Production", "Testing")

Responses

200API key generated
curl -X POST "https://api.apps.myallies.com/v1/account/keys" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Trading Bot Key"
}'
Response Example
{
  "success": true,
  "data": {
    "apiKey": "ma_live_r5t8uV2wX9...",
    "name": "Trading Bot Key",
    "message": "Store this key securely. It will not be shown again."
  },
  "error": null,
  "meta": {
    "requestId": "req_j1k2l3",
    "timestamp": "2026-03-17T10:03:00Z",
    "version": "v1"
  }
}

terminal Try It

expand_more
DELETE/account/keys/{keyId}Revoke an API keyexpand_less

Revoke an API key

JWT Bearer Token

Permanently revoke an API key. Any requests using this key will immediately fail. Requires JWT authentication (from login).

Parameters

NameTypeDescription
keyId *
path
integer
ID of the API key to revoke

Responses

200API key revoked
curl -X DELETE "https://api.apps.myallies.com/v1/account/keys/1" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json"
Response Example
{
  "success": true,
  "data": null,
  "error": null,
  "meta": {
    "requestId": "req_m4n5o6",
    "timestamp": "2026-03-17T10:04:00Z",
    "version": "v1"
  }
}

terminal Try It

expand_more
GET/account/usageGet usage statisticsexpand_less

Get usage statistics

API Key (X-Api-Key)

Retrieve your current subscription tier, rate limit, and daily request limit. Useful for monitoring API consumption.

Responses

200Usage statistics
curl -X GET "https://api.apps.myallies.com/v1/account/usage" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"
Response Example
{
  "success": true,
  "data": {
    "subscriptionTier": "free",
    "rateLimit": 120,
    "dailyLimit": 1000
  },
  "error": null,
  "meta": {
    "requestId": "req_p7q8r9",
    "timestamp": "2026-03-17T10:05:00Z",
    "version": "v1"
  }
}

terminal Try It

expand_more
GET/account/tiersGet subscription tiersexpand_less

Get subscription tiers

No Auth Required

Retrieve all available API subscription tiers with rate limits, daily call limits, and monthly pricing. No authentication required.

Responses

200Available subscription tiers
curl -X GET "https://api.apps.myallies.com/v1/account/tiers" \
  -H "Content-Type: application/json"
Response Example
{
  "success": true,
  "data": [
    {
      "id": 0,
      "name": "Free",
      "perMinuteLimit": 5,
      "dailyLimit": 100,
      "monthlyPrice": 0,
      "description": "No API key required. Rate limited by IP address."
    },
    {
      "id": 1,
      "name": "Starter",
      "perMinuteLimit": 60,
      "dailyLimit": 10000,
      "monthlyPrice": 49,
      "description": "For individual developers and small projects."
    },
    {
      "id": 2,
      "name": "Professional",
      "perMinuteLimit": 300,
      "dailyLimit": 50000,
      "monthlyPrice": 199,
      "description": "For growing applications with moderate traffic."
    }
  ],
  "error": null,
  "meta": {
    "requestId": "req_tr01",
    "timestamp": "2026-03-27T10:00:00Z",
    "version": "v1"
  }
}

terminal Try It

expand_more
POST/account/contactSubmit a contact messageexpand_less

Submit a contact message

No Auth Required

Send a contact form message to the MyAllies team. Used by the marketing site contact form and partner outreach. No authentication required.

Request Body

NameTypeDescription
name *string
Contact name
email *string
Valid email address
company string
Company name
role string
Job title / role
subject string
Message subject
inquiryType string
Inquiry category (e.g., sales, support, partnership)
message *string
Message body

Responses

200Message delivered to the MyAllies team
400Missing or invalid fields (email, name, message)
curl -X POST "https://api.apps.myallies.com/v1/account/contact" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Jane Doe",
  "email": "jane@example.com",
  "company": "Acme Corp",
  "inquiryType": "sales",
  "subject": "Enterprise pricing",
  "message": "Interested in enterprise plan."
}'

terminal Try It

expand_more