API reference
Astral provides two REST APIs for working with location proofs and geospatial data:| API | Purpose | Base URL |
|---|---|---|
| Verify API | Verify location proofs and stamps | /verify/v0 |
| Compute API | Verifiable geospatial operations | /compute/v0 |
The Records API (query location attestations across chains) is not yet integrated into the service. See the roadmap for timeline.
Verify API
Verify stamps, evaluate proofs, list plugins
Compute API
Distance, containment, proximity checks with signed attestations
Base URLs
Authentication
All requests require an API key, passed as a header:Rate limits
| Tier | Limit | How to get |
|---|---|---|
| Public | 100 requests/hour | Default — no signup required |
| Developer | 1,000 requests/hour | Request a developer key |
| Internal | 10,000 requests/hour | Astral team only |
Input types
All compute endpoints accept geometry inputs in these formats:| Format | Description | Example |
|---|---|---|
| Onchain UID | Onchain attestation reference | {"uid": "0xabc123..."} |
| GeoJSON | Raw geometry | {"type": "Point", "coordinates": [2.29, 48.85]} |
| UID + URI | Offchain attestation (not yet implemented) | {"uid": "0xabc...", "uri": "ipfs://Qm..."} |
| Verified proof | Full verified proof response object | {"verifiedProof": { ... }} |
Response format
Numeric operations (distance, area, length)
Boolean operations (contains, within, intersects)
Same shape, butresult is true/false and there is no units field.
Error format
Errors follow RFC 7807 (Problem Details for HTTP APIs):Error types
| Type | Status | Description |
|---|---|---|
bad-request | 400 | Malformed request body |
invalid-input | 400 | Bad request data, missing fields, invalid geometry |
validation | 400 | Input validation failed |
unauthorized | 401 | Invalid or missing API key |
not-implemented | 501 | Requested operation or plugin not yet supported |
internal | 500 | Internal server error |
database | 500 | Database operation failed |
rate-limited | 429 | Too many requests — check rate limit headers |
Chain configuration
The Attester Address is the address that signs delegated attestations. Resolver contracts must verify attestations come from this address.| Chain | Chain ID | EAS | Schema Registry | Attester Address |
|---|---|---|---|---|
| Base Sepolia | 84532 | 0x4200000000000000000000000000000000000021 | 0x4200000000000000000000000000000000000020 | 0x590fdb53ed3f0B52694876d42367192a5336700F |
Endpoints
Verify API
POST /verify/v0/stamp
Verify a single stamp’s internal validity
POST /verify/v0/proof
Verify a proof with cross-correlation analysis
GET /verify/v0/plugins
List available verification plugins