PRODUCT — PLATFORM

REST API

REST

Every live dataset sits behind one REST API: clean endpoints, JSON responses, and a single API key. No SDK required.

One API, every dataset

All six live datasets mount at the root of one base URL: /insider-transactions, /institutions/holdings, /proposed-sales, /funds/list, /supply-chain/{ticker}, and /ipos. There is no versioned path maze to memorize.

Auth is one header, Authorization: Bearer YOUR_API_KEY, and every response is JSON. Conventions stay consistent across endpoints: uppercase tickers, ISO dates, _gte and _lte suffixes for range filters, and a limit parameter for page size.

The whole API is described by a public OpenAPI 3.1 spec. Generate a client in your language, build a mock server for tests, or import the spec into Postman. The spec and the API ship together, so they don't drift.

What you get

Base URL
One for all datasets
Auth
Authorization: Bearer YOUR_API_KEY
Format
JSON, consistent field names across datasets
Spec
OpenAPI 3.1, public
Rate limits
X-RateLimit-* headers on every response

Why teams use it

One base URL

Dataset endpoints mount at the API root: /insider-transactions, /ipos, and the rest. Integrate once, then add datasets by adding paths.

OpenAPI 3.1 spec

The full API is described by a public spec, so you can generate clients, mock servers, and tests in any language.

JSON in, JSON out

Every response is normalized JSON with consistent field names across datasets. Parse once, reuse everywhere.

Rate limits you can read

Per-endpoint limits are exposed in X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers. Your retry logic works off facts, not guesses.

See it in code

terminal
bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://ryxel.io/api/insider-transactions?ticker=AAPL"

What teams build with it

Backend integration

One Bearer key, JSON responses, predictable conventions. Most integrations start returning data in an afternoon.

Generated clients

Point your generator at the OpenAPI spec and get a typed client in Python, TypeScript, Go, or anything else with a generator.

Notebooks and research

Requests plus pandas is a complete stack. Pull a slice, plot it, iterate.

Agents and automation

Structured JSON and a machine-readable spec make the API callable by LLM agents and workflow tools without custom parsing.

Frequently asked questions

How do I authenticate API requests?

Send your API key in the Authorization header as a Bearer token. Contact us at [email protected] to get a key.

What response format does the API use?

All endpoints return JSON. Schemas are documented in the OpenAPI 3.1 spec and the dataset docs.

Where are dataset endpoints mounted?

At the API root: /insider-transactions, /ipos, and so on. There is no /api/ prefix to add.

What are the rate limits?

Limits are per endpoint and depend on your plan. Every response carries X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers, so client code can back off before hitting a 429.

Is there an OpenAPI spec?

Yes, OpenAPI 3.1 and public. Use it to generate clients, mocks, and tests, or to import the API into tools like Postman.

TALK TO US

Talk to us about access

Tell us what you're building and which datasets you need — we'll set you up with an account, an API key, and access to the data.