Skip to main content

Overview

API keys provide secure programmatic access to the GDELT Cloud Developer API — the /api/v2/* surface: Events, Stories, Entities, Situations, country context, publication activity, summaries, geo discovery, and cursor pagination.
API keys require API access on the active organization. Keys are scoped to the organization that creates them.
A new account starts a 7-day evaluation with 1,000 QU, the full UI, REST API and MCP access, and up to three daily email Monitors (one 7-day extension on request). Bulk downloads remain paid-only. When the evaluation ends, Free keeps the web app, API Arena, saved Monitor settings and previews with 50 QU a month. API keys, OAuth, the MCP server and scheduled Monitor execution require active access; Monitor webhooks and bulk downloads remain paid-only. A key without active access answers 403 PROGRAMMATIC_ACCESS_DENIED (errors). Eligible existing personal Free workspaces can claim a one-time 500 QU grant, valid 7 days from activation.
Choose an explicit date window when its bounds matter. Core responses disclose the effective predicates in meta.query_window, separately from the available history in meta.coverage. A partial valid Event or Story range returns every safely published date and names the exact served_dates, missing_dates and window_complete state; a retryable snapshot error remains only when no partition can safely answer. See each endpoint’s parameter reference for defaults and limits.

Generating an API Key

1

Navigate to API Keys

Switch to the workspace the key should belong to, then go to gdeltcloud.com/api-keys.
2

Create a new key

Click Create New Key and give it a descriptive name (e.g. “Production”, “Dev Environment”).
3

Copy your key immediately

Your API key is shown only once. Copy it now and store it securely.
Keys use the format: gdelt_sk_<64-hex-chars>Example: gdelt_sk_a1b2c3d4... (64 hex characters after the prefix)
4

Store securely

Use environment variables or a secrets manager. Never commit keys to version control.

Using Your API Key

Include the key as a Bearer token in the Authorization header:
Before choosing filter values, use the Event category values and Event taxonomy. Story topics use story_category; on Stories, category filters the linked Events and can exclude Stories with no Event.
Keep dates and filters fixed while passing pagination.next_cursor unchanged until it is null. Then start the next date chunk without a cursor. Use the endpoint’s documented maximum number of inclusive days; a calendar month can exceed it. Oversized-window errors include coverage and a suggested valid window.
v1 is retired. Every /api/v1/* path returns 410 Gone naming its v2 replacement — in the error message, in details.replacement, and in an RFC 8594 Link header — so a client that still calls one gets told where to go rather than a silent failure. /api/v2/events?event_family=conflict and ?event_family=cameoplus are strict supersets of the two event routes: same events, stable ids, a documented cursor, and the metric fields v1 never exposed.

Metering

Every REST and MCP data call consumes Query Units against your account’s allowance. Discovery calls (/api/v2/meta/*, and the MCP _tool_list / _tool_get tools) are not metered. Hosted Monitoring Brief generation is temporarily unavailable across all plans; existing Brief allowances and credits remain on your account and do not draw down Query Units while generation is paused. Quota admission uses an atomic reservation for the current billing window. The usage display is a separate report of delivered requests; it can lag pending reservations. /api/v2/meta/query-units continues to list call prices when that report is temporarily unavailable. Its usage measurement is fresh, stale (with measured_at), or pending; an unknown total is null, never zero or an unlimited allowance. Keep the exact usage_window_start and usage_window_end with any reported total when comparing billing periods. The API tells you when a limit binds rather than degrading quietly — every metering and entitlement error, with its code and what to do about it, is in the error reference.

Revoking a Key

Go to gdeltcloud.com/api-keys, find the key, and click Revoke. Revoked keys return HTTP 401 immediately.
You can generate multiple API keys, such as one per environment. Each key consumes the quota of its organization. Owners and admins can review and export organization usage by feature, member, and API key.
Keys belong to the workspace that created them, and a request is metered against that workspace.