> ## Documentation Index
> Fetch the complete documentation index at: https://docs.astral.global/llms.txt
> Use this file to discover all available pages before exploring further.

# Staging

> Test against the staging API on Base Sepolia

## Base URL

```
https://staging-api.astral.global
```

## Endpoints

```bash theme={null}
# Health check
curl https://staging-api.astral.global/health

# API info
curl https://staging-api.astral.global/
```

## Configuration

| Setting          | Value                                        |
| ---------------- | -------------------------------------------- |
| Chain            | Base Sepolia (84532)                         |
| EAS Contract     | `0x4200000000000000000000000000000000000021` |
| Attester Address | `0x590fdb53ed3f0B52694876d42367192a5336700F` |

## Example Request

```bash theme={null}
curl -X POST https://staging-api.astral.global/compute/v0/distance \
  -H "Content-Type: application/json" \
  -d '{
    "chainId": 84532,
    "from": {"type": "Point", "coordinates": [-122.4194, 37.7749]},
    "to": {"type": "Point", "coordinates": [-73.9352, 40.7128]}
  }'
```

<Note>
  `chainId` only tells the service which EAS chain to format the delegated attestation for, so the result *could* be submitted onchain later. Nothing here touches a blockchain unless you choose to submit the result yourself — the call above just returns a signed result.
</Note>

## Verifying signatures

<Warning>
  **What a matching signature proves.** Checking the attester address proves the result was signed by a key Astral controls. It does **not**, on its own, prove the result was produced inside an independently attested TEE enclave: Astral has run the service on real TEE hardware in test deployments but does not currently fund continuous attested operation. Treat the staging signer as "Astral's staging key," not as a hardware-attestation guarantee. To evaluate against real TEEs, reach out at [contact@astral.global](mailto:contact@astral.global).
</Warning>

All attestations from the staging service are signed by the attester address above. To verify a result came from Astral's staging environment:

```solidity theme={null}
require(attestation.attester == 0x590fdb53ed3f0B52694876d42367192a5336700F, "Not from Astral staging");
```

```typescript theme={null}
const ASTRAL_STAGING_SIGNER = '0x590fdb53ed3f0B52694876d42367192a5336700F';
// Verify the EAS attestation's attester field matches
```

## Notes

* No authentication required
* Rate limited to 100 requests/hour per IP
* Attestations are signed with the staging key — a different key will be used for production
