62trust / 100

Small Body

by Space Objects in Other

x402 APIPassing, checked 7 h ago

Asteroid or comet by name or designation: orbit class, NEO/hazardous flags, size, orbit elements, MOID and discovery.

GET
https://space-objects.x402tookit.com/small-body
Price
$0.02
per call in USDC
Uptime
65.0%
last 30 days
Response time
538 ms
894 ms slowest 5%
Last check
Passed
7 h ago, next any minute now

Run a free test callHow to call it

Reliability

All checks passedSome failedAll failedNot checked

Status and outage history · Atom feed · Watch with other listings

How to call it

GET https://space-objects.x402tookit.com/small-body

Each call costs $0.02 in USDC on Polygon, paid with the request over x402.

Run a free test callOne unpaid request, the way an agent sends it. You see the payment challenge it gets back. Nothing is charged.

Example request

From the listing.

GET https://space-objects.x402tookit.com/small-body?name=99942

Parameters

ParameterTypeRequiredDescription
namestringYesName, number or designation, for example Apophis, 433, 1P or 2004 MN4

Example response

The provider's example. We can't check it without paying.

Example response, 61 lines
{
  "asOf": "2026-10-11T08:41:45.114Z",
  "degraded": false,
  "designation": "99942",
  "disclaimer": "Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting.",
  "discovery": {
    "date": "2004-Jun-19",
    "discoverer": "Tholen, D. J.",
    "site": "Kitt Peak"
  },
  "fullName": "99942 Apophis (2004 MN4)",
  "kind": "asteroid",
  "nearEarthObject": true,
  "notChecked": [
    "close-approach dates (see /close-approaches and /body-approaches)",
    "impact monitoring status (see /impact-risk-object)",
    "…2 more"
  ],
  "orbit": {
    "aphelionAu": 1.1,
    "conditionCode": "0",
    "eccentricity": 0.191,
    "epochJd": 2461200.5,
    "hyperbolic": false,
    "inclinationDeg": 3.34,
    "moidEarthAu": 0.000108,
    "moidEarthLunar": 0,
    "observationArc": {
      "days": 6599,
      "first": "2004-03-15",
      "last": "2022-04-09",
      "observations": 7370
    },
    "perihelionAu": 0.746,
    "periodDays": 324,
    "periodYears": 0.887,
    "semiMajorAxisAu": 0.922
  },
  "orbitClass": "Aten",
  "orbitClassCode": "ATE",
  "physical": {
    "absoluteMagnitudeH": 19.09,
    "albedo": 0.35,
    "diameterKm": 0.34,
    "estimatedDiameterKm": null,
    "rotationPeriodHours": 30.56,
    "spectralType": "Sq"
  },
  "potentiallyHazardous": true,
  "reasons": [
    "JPL flags it a potentially hazardous asteroid: orbit passes within 0.05 au of Earth's and it is larger than about 140 m. That is a category, not a prediction of impact.",
    "Minimum orbit intersection distance with Earth 0.000108 au (0 lunar distances).",
    "…1 more"
  ],
  "shortName": "99942 Apophis",
  "source": "NASA JPL Solar System Dynamics",
  "sourceUrl": "https://ssd-api.jpl.nasa.gov",
  "spkId": "20099942",
  "summary": "99942 Apophis (2004 MN4) is an Aten asteroid (near-Earth object, potentially hazardous asteroid), measured diameter 0.34 km, orbital period 0.89 years.",
  "verdict": "POTENTIALLY_HAZARDOUS_ASTEROID"
}

Call it from code

The curl command shows the payment challenge. The JavaScript and Python versions pay and call, and never pay more than $0.02.

curl: see the payment challenge
# bash or zsh: see the payment challenge. Nothing is charged.
curl -sS -g -i 'https://space-objects.x402tookit.com/small-body?name=99942'

# x402 v2 sends the challenge base64-encoded in the PAYMENT-REQUIRED header (v1 sends it in the body).
# To read the header:
curl -sS -g -o /dev/null -D - 'https://space-objects.x402tookit.com/small-body?name=99942' \
  | grep -i '^payment-required:' | cut -d' ' -f2 | tr -d '\r' | base64 --decode
JavaScript: pay and call
// npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

// Pays at most $0.02 per call.
const client = new x402Client().setSpendControls({ maxAmountPerPayment: "$0.02" });
registerExactEvmScheme(client, { signer: privateKeyToAccount(process.env.EVM_PRIVATE_KEY) });
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? ToolVet checks it first for $0.005. Pay for that from a separate
// client: this one is capped at $0.02 per payment. GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fspace-objects.x402tookit.com%2Fsmall-body
const res = await pay("https://space-objects.x402tookit.com/small-body?name=99942");
console.log(res.status, await res.text());
Python: pay and call
# pip install "x402[requests,evm]"
import os
from eth_account import Account
from x402 import x402ClientSync
from x402.http.clients import x402_requests
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client

# Pays at most $0.02 per call.
client = x402ClientSync().set_spend_controls({"max_amount_per_payment": "$0.02"})
register_exact_evm_client(client, EthAccountSigner(Account.from_key(os.environ["EVM_PRIVATE_KEY"])))

with x402_requests(client) as session:
    res = session.get("https://space-objects.x402tookit.com/small-body?name=99942")
    print(res.status_code, res.text)

Security scan

No findings

We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
7 h agoPassed402505 ms$0.02
19 h agoExpected HTTP 402, got 530530118 ms-
31 h agoPassed402552 ms$0.02
43 h agoExpected HTTP 402, got 53053099 ms-
2 days agoPassed402538 ms$0.02
Show 10 older checks
3 days agoPassed402479 ms$0.02
3 days agoExpected HTTP 402, got 53053095 ms-
4 days agoPassed402529 ms$0.02
4 days agoExpected HTTP 402, got 530530178 ms-
5 days agoExpected HTTP 402, got 53053090 ms-
5 days agoPassed402539 ms$0.02
5 days agoExpected HTTP 402, got 530530178 ms-
5 days agoExpected HTTP 402, got 530530173 ms-
5 days agoPassed402521 ms$0.02
5 days agoPassed402283 ms$0.02