PhoenixPerpetualsDocs API v1
Get an API key

API reference ยท Platform

GET/v1/me

Get your key⁠.

Read

The key you called with: its access, the accounts it reaches, the limits you set on it and its budgets.

Responses#

200OK
  • credentialobjectrequired
    Show 7 fields
    • kindstringrequired

      What you called with: an API key, or an app you signed in to.

      One ofkeyapp

    • idstringrequired

      The key's id (the part after ppk_test_ or ppk_live_), or the app access's id.

    • namestringrequired

      Its name (an app: the app's name).

    • environmentstringrequired

      Its environment.

      One oflivesandbox

    • accessstringrequired

      read: look only. trade: also place and cancel.

      One ofreadtrade

    • expires_atinteger, Unix ms or nullrequired

      When it expires; null: never.

    • created_atinteger, Unix ms or nullrequired

      When it was made.

  • accountsarray of stringrequired

    The accounts it reaches.

  • account_scopestringrequired

    all: every account of the environment, new ones too. selected: only those listed.

    One ofallselected

  • controlsobjectrequired

    The limits you set on the key.

    Show 5 fields
    • marketsarray of stringrequired

      The markets the key may trade; empty: every market.

    • reduce_onlybooleanrequired

      The key may only reduce positions.

    • max_order_usddecimal string or nullrequired

      The largest order the key may place, in USD.

    • max_position_usddecimal string or nullrequired

      The largest position the key may hold, in USD.

    • daily_loss_usddecimal string or nullrequired

      The loss in a trading day at which the key stops trading the account.

  • budgetsobjectrequired
    Show 2 fields
401The request has no Authorization header.
{
  "error": {
    "type": "authentication",
    "code": "missing_api_key",
    "message": "No API key: send it as Authorization: Bearer <key>.",
    "request_id": "req_0f9c2a7d8e1b4c6a9f3e5d7b1a2c4e6f",
    "retryable": false,
    "doc_url": "https://docs.phoenixperpsfunding.com/reference/errors#missing_api_key"
  }
}
403The key only works from the addresses you listed.
{
  "error": {
    "type": "permission",
    "code": "ip_not_allowed",
    "message": "This address is not on the key's allowlist.",
    "request_id": "req_0f9c2a7d8e1b4c6a9f3e5d7b1a2c4e6f",
    "retryable": false,
    "doc_url": "https://docs.phoenixperpsfunding.com/reference/errors#ip_not_allowed"
  }
}
429A request budget is used up (details.scope says which).
{
  "error": {
    "type": "rate_limit",
    "code": "rate_limited",
    "message": "Too many requests: slow down.",
    "request_id": "req_0f9c2a7d8e1b4c6a9f3e5d7b1a2c4e6f",
    "retryable": true,
    "doc_url": "https://docs.phoenixperpsfunding.com/reference/errors#rate_limited"
  }
}
500An error we did not expect.
{
  "error": {
    "type": "server",
    "code": "internal_error",
    "message": "Something went wrong on our side.",
    "request_id": "req_0f9c2a7d8e1b4c6a9f3e5d7b1a2c4e6f",
    "retryable": true,
    "doc_url": "https://docs.phoenixperpsfunding.com/reference/errors#internal_error"
  }
}
503The API is starting and has not loaded your keys yet.
{
  "error": {
    "type": "engine",
    "code": "not_ready",
    "message": "The API is starting. Try again in a moment.",
    "request_id": "req_0f9c2a7d8e1b4c6a9f3e5d7b1a2c4e6f",
    "retryable": true,
    "doc_url": "https://docs.phoenixperpsfunding.com/reference/errors#not_ready"
  }
}

Errors#

Codes this endpoint can return. Match on the code, never on the message.

Guides, endpoints, fields and error codes.