Account

Your tier, your API usage, and your download allowance.

HTTP endpoints on this page

  • GET/profile
  • GET/profile/usage
  • GET/profile/downloads

Parameters and response shapes for each are in the API reference.

Three read-only calls on client.profile tell you who you are to the API, what you have spent, and what you have left. All three work on any active key and take no arguments. Call profile.get() first when a 403 surprises you: it is the cheapest way to confirm a key works and see its tier.

Methods

  • profile.getYour account record, including the tier that gates everything.any
  • profile.usageRequests this calendar month, by endpoint.any
  • profile.downloadsFree-tier download allowance and the groups you own.any

Your tier

tier is one of free, pro or demo, and it gates every endpoint. A method marked "pro" accepts pro or demo keys. The is_admin flag governs user administration, not simulator access: an admin flag on a free-tier key still cannot run a simulation. When a call returns 403, read tier, not is_admin. Your user_id doubles as your FIX CompID where FIX is enabled.

python
me = client.profile.get()

print(f"{me['email']} — tier {me['tier']}")
print(f"download limit: {me['download_limit']}")
Output
you@example.com — tier pro
download limit: 3

Usage

profile.usage() counts requests in the current calendar month, resetting on the 1st. One run() of 100 Monte Carlo runs is a single request. by_endpoint is keyed by route template (for example /simulation/jobs/{job_id}/status), and only usage-logged routes are counted.

Download allowance

On the free tier, downloads are limited per rolling 24-hour window. The unit is a simulation group: every Monte Carlo run of one symbol/date/scenario, not a call, a run, or a file. On pro and demo, profile.downloads() reports limit, remaining and downloaded_groups as None (unlimited).

Membership is permanent. Once you have downloaded a group, re-fetching it is free forever: more runs, a different file format, a different endpoint, or the web explorer. Only a new group consumes allowance, and your own job runs are never charged at all. Every download path counts the same way: get_sim_data(), get_bulk_data() and the explorer.

A request that would exceed the allowance returns 429 without charging anything, so a partial download never silently eats your quota. See Errors for handling it, and the bulk download recipe for fetching many runs in one call.

One exemption: the first run's mid-price series on a shared cached group is free, so the explorer can draw a thumbnail of a scenario before you commit any allowance to it.

If you need more than the default, email support@simudyne.com — we can raise your limit without a Pro upgrade.