Research preview — APIs may change. GitHub
Location records
A location record is signed, verifiable location data artifact. It takes raw geospatial data and adds what GeoJSON alone cannot provide: attribution (who created it) and integrity (proof it hasn’t been tampered with). In the Astral ecosystem, location records conform to v0.2 of the Location Protocol specification. The Location Protocol provides a lightweight data schema that wraps spatial data in any format, to improve interoperability so that spatial data can be parsed and interpreted across distributed systems.What signing adds
| Property | Raw GeoJSON | Signed location record |
|---|---|---|
| Geometry | Yes | Yes |
| Attribution | No — anyone could have created it | Yes — cryptographic signature ties it to a specific identity |
| Integrity | No — could be modified silently | Yes — any modification invalidates the signature |
| Verifiable timestamp | No | Sometimes — if the attestation was anchored or registered on a blockchain or other timestamp server |
| Correspondence | No | No — signing proves who claimed this location, not that they were there |
EAS attestations
Astral’s v0 implementation uses Ethereum Attestation Service (EAS) for signed location records. EAS provides:- Onchain attestations — stored directly on EAS contracts, referenced by UID (unique identifier), permanent and immutable
- Offchain attestations — stored on user devices, centralized servers, IPFS or other infrastructure, referenced by UID + URI, no gas cost, EIP-712 signed
Location Protocol v0.2 schema
Location records conform to the Location Protocol v0.2 schema:| Field | Type | Description |
|---|---|---|
lp_version | string | Protocol version (e.g., “0.2”) |
location_type | string | Type of location data (e.g., “GeoJSON”) |
location | bytes | Encoded location data |
srs | string | Spatial reference system as OGC URI |
Storage options
Onchain
- Stored on EAS contracts
- Referenced by chain ID + UID //@claude: right?
- Higher gas cost
- Permanent, immutable
Offchain
- Held on user devices or stored on IPFS, servers, etc.
- Referenced by UID + URI
- No gas cost to create
- EIP-712 signed
Next: Location proofs
Adding evidence of physical correspondence
See also:
- SDK: Location module — creating, fetching, and querying location records
- API: Types — input format reference