NASA API

Get NASA data as clean JSON with one key: 10 endpoints, 1 to 5 credits per call, the same response shape as every other platform.

What you get#

Onekey exposes NASA as 10 endpoints behind one API key: 3 endpoints return one record (data is an object) and 7 endpoints return a list (data is an array). Every answer uses the same envelope (success, data, metadata, error), the cost is reported in metadata.credits_charged, and fields are mapped onto the unified schema so the code you write for NASA also works for the rest of the maps, weather & space category.

Endpoints#

EndpointWhat it doesParametersCreditsStatus
apodAstronomy Picture of the Day (today).-1stable
apod_dateAstronomy Picture of the Day for a given date (1995-06-16 onward).date*1stable
apod_rangeAstronomy Pictures of the Day for a date range.start*, end*5stable
donki_cmeCoronal mass ejections (DONKI) in a date window (max 30 days).start*, end*5beta
donki_flaresSolar flares (DONKI) in a date window (max 30 days).start*, end*5beta
donki_stormsGeomagnetic storms (DONKI) in a date window (max 30 days).start*, end*5beta
epic_naturalLatest natural-color EPIC Earth images.-5beta
mars_latest_photosLatest photos from a Mars rover (curiosity, perseverance, opportunity, spirit).rover*5beta
neo_browseBrowse the near-earth object catalogue (paged).size, page5beta
neo_lookupNear-Earth object by NASA SPK id.id*1beta

A * marks a required parameter. Each endpoint name links to its reference page with the full parameter table, caching window and a recorded response.

Make a request#

This calls nasa.apod (1 credit, stable). Replace YOUR_API_KEY with your key; sign up, no card. 1,000 free credits cover the open-platform endpoints. Hard-to-reach platforms (X, TikTok, Instagram, Reddit, and others marked on their page) need a verified email and a purchased pack.

curl "https://api.onekey.dev/v1/nasa/apod" \
  -H "x-api-key: YOUR_API_KEY"

Fields you get back#

These unified fields come back from NASA, with the same names as on every other platform. The count is how many of its 10 mapped endpoints return the field; a field the source lacks is null, never missing. 14 platform-specific fields (ext.<name>) come on top, documented on each endpoint page.

FieldTypeEndpoints
entity.urlURL8
entity.categorystring6
content.createdAtISO 8601 date5
entity.idstring5
content.textstring4
media.urlURL4
author.displayNamestring3
content.titlestring3
entity.dateISO 8601 date3
media.thumbnailUrlURL3
content.idstring2
entity.namestring2
entity.descriptionstring1

The full schema is in Unified schema.

Pricing#

NASA calls cost 1 to 5 credits, flat per endpoint. Free when served from cache (0.2 credit for a cached response over 100 KB). Invalid, failed or not-found calls are not charged. See pricing for credit packs.