The intelligence.
Your application.
Use the same research infrastructure behind AskPumpGPT. Secure access, bounded queries, and evidence you can inspect.
Source
Pump Intelligence
Existing data and research engine
Shared infrastructure
One API gateway
Authentication, limits and metering
Build
Your application
AskPumpGPT · Research tools · Integrations
Developer workspace
Your access. Your usage.
Loading your developer workspace…
API configuration status
View status JSONChecking gateway configuration… This reports configuration readiness; it does not verify source liveness or promise real-time coverage.
REST API · OpenAPI 3.1
Build from a verified contract.
Authentication
Call the API from your own server over HTTPS with Authorization: Bearer YOUR_API_KEY. API keys have individual scopes and share the owning account’s developer credit and request limits. Your application does not need an AskPumpGPT browser session.
Create and manage keys above using a verified account. Only a prefix is available after creation. Rotation replaces a key and immediately revokes the previous one; revocation blocks further authentication. Internal service credentials are separate from public developer keys.
Endpoints and credits
These routes use one shared gateway and existing data services. Source configuration, read-only access, licensing approval and dataset coverage control availability. A listed route does not promise a connected source or a complete blockchain history.
| Endpoint | Permission | Credits |
|---|---|---|
GET Observed token aggregates. Supports bounded search, filters and sorting. | tokens:read | 1 |
GET One observed token aggregate. Returns 404 when no matching row is available. | tokens:read | 1 |
GET One observed wallet aggregate. Individual trades and current positions are not included. | wallets:read | 3 |
GET Unavailable: returns 501 without a credit charge. A verified standalone transaction source is not connected. | transactions:read | 0 |
GET One observed creator aggregate from the connected dataset. | creators:read | 3 |
GET Hourly market aggregates for a bounded lookback. No arbitrary analytics queries. | analytics:read | 5 |
POST Evidence-backed research through the same engine used by AskPumpGPT. | research:read | 10 |
GET Retrieve a report belonging to your account without starting a new research job. | research:read | 0 |
GET Bounded market_hourly, market_daily or coverage rows for a stated period. | historical:read | 5 |
Credits are reserved atomically before work starts. Failed data reads and work refused before execution are refunded. If research completion is uncertain, its credits remain reserved. Reusing the same request identifier cannot start another job. Check research history before creating a new request. Unavailable capabilities do not consume credits. Developer credits are separate from AskPumpGPT questions; existing Quant Research entitlement still applies to backtesting. Future API plans remain inactive.
Query parameters and resource limits
Collection requests accept limit (1–100) and offset. Every request is bounded by gateway and source timeouts, response limits, permissions and account limits. Use the returned pagination metadata to request the next page.
GET /v1/tokenslimit=20&offset=0; optional q (1–80 characters), date (YYYY-MM-DD), graduated (true or false), and sort (create_ms, ath_mc_q, n_trades, unique_buyers or volume_q). Maximum offset: 10,000.
GET /v1/analyticshours=24&limit=24&offset=0; hours: 1–168, maximum offset: 168. Returns hourly market aggregates.
GET /v1/historicaldataset=market_daily&start=2026-10-01&end=2026-10-07&limit=20&offset=0; dataset: market_hourly, market_daily or coverage. Both dates are required; maximum inclusive date range: 31 days. A valid date range can still have no source coverage.
POST /v1/research
Send JSON containing question (5–2,000 characters) and an Idempotency-Key header (8–128 letters, numbers, dots, colons, underscores or hyphens). Research reads available evidence; no trading or data mutation is exposed.
Request examples
Read observed token data
# Run from your server. Store the key in a secret manager.
# Reuse this idempotency value only for retries of this exact request.
curl 'https://askpumpgpt.ai/v1/tokens?limit=20&offset=0' \
-H "Authorization: Bearer $PUMP_API_KEY" \
-H 'Idempotency-Key: token-page-2026-10-19-001'Ask the shared research engine
curl 'https://askpumpgpt.ai/v1/research' \
-X POST \
-H "Authorization: Bearer $PUMP_API_KEY" \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: research-2026-10-19-001' \
--data '{"question":"What does the available dataset show about recent token launches?"}'Use from a JavaScript server
// Server-side JavaScript. Never expose this key in a browser bundle.
const response = await fetch('https://askpumpgpt.ai/v1/analytics?hours=24&limit=24', {
headers: {
Authorization: 'Bearer ' + process.env.PUMP_API_KEY,
'Idempotency-Key': requestId, // Keep stable when retrying this request.
},
signal: AbortSignal.timeout(30_000),
})
const result = await response.json()
if (!response.ok) throw new Error(result.error.message)
// Inspect result.meta.limitations and result.meta.pagination.Responses, evidence and retries
Data routes return data and meta. Collection metadata includes pagination.limit, offset, nextOffset and hasMore. Metadata describes the dataset, data version, observation time and limitations. Research returns its report and evidence in the research contract documented in OpenAPI.
Provide a unique Idempotency-Key for each logical request and keep it unchanged when retrying the same method, path, parameters and body. Research requires this header. Reusing a key for different input causes a conflict. A completed successful request can replay without another credit charge. Failed, running or uncertain requests return 409 rather than starting another job.
Honor Retry-After for rate limits. If a response is lost, retry with the same identifier to avoid duplicate work. A 409 requires checking the existing request or research history; it does not resume the job. Inspect source limitations before comparing datasets. Available aggregates do not establish full historical coverage, and this API does not promise real-time data.
Error reference
Errors use { "error": { "code": "…", "message": "…" }, "requestId": "…" }. Keep the response request ID for support; exclude your API key from logs and error reports.
| HTTP | Meaning | Next step |
|---|---|---|
| 400 | Invalid request | Check filters, address format, date range and required headers against the OpenAPI contract. |
| 401 | Authentication required | Send a valid active key using Authorization: Bearer. Rotate a lost or invalid key. |
| 403 | Access not permitted | Check key scopes and whether the requested dataset is approved for external access. |
| 404 | No matching data | The requested record was not observed in the connected dataset. This does not prove on-chain absence. |
| 405 / 415 | Unsupported method or content type | Use the documented method and send application/json for research requests. |
| 409 | Request conflict | The identifier belongs to running, failed or uncertain work, or was reused for different input. Check research history before starting another job. |
| 413 / 414 | Request exceeds limits | Keep request bodies within 8 KiB and URLs within 2,048 characters. |
| 429 | Request or credit limit exceeded | Honor Retry-After for request limits. If credits are exhausted, check the period and remaining allowance in this portal. Commercial checkout is inactive. |
| 501 | Capability unavailable | The requested capability has no verified source implementation. |
| 502 | Invalid or oversized source response | Reduce the requested result size. Responses are capped at 256 KiB. |
| 503 / 504 | Service unavailable or timed out | Configuration or source access may need attention. Preserve the request identifier; failed or uncertain work returns 409 on replay instead of executing again. |