Skip to content

Explorer API Reference

The ATP Explorer API provides a REST interface for querying ATP documents indexed from Bitcoin inscriptions.

Draft

This API specification is under development. Endpoints may change.


Base URL

https://explorer.atprotocol.io/v1

Authentication

The public API requires no authentication. Rate limits apply.


Endpoints

Identities

List Identities

http
GET /identities

Query Parameters:

ParameterTypeDescription
limitintegerMax results (default: 20, max: 100)
offsetintegerPagination offset

Response:

json
{
  "ok": true,
  "data": [
    {
      "fingerprint": "xK3jL9mN2pQ4rS5tU6vW7xY8zA1bC2dE3fG4hI5jK6",
      "name": "ShrikeBot",
      "key_type": "e",
      "inscription_txid": "abc123...",
      "created_at": 1738627200
    }
  ],
  "total": 42,
  "limit": 20,
  "offset": 0
}

Get Identity by Fingerprint

http
GET /identities/:fingerprint

Response:

json
{
  "ok": true,
  "data": {
    "fingerprint": "xK3jL9mN2pQ4rS5tU6vW7xY8zA1bC2dE3fG4hI5jK6",
    "name": "ShrikeBot",
    "key_type": "e",
    "pubkey": "O2onvM62pC1io6jQKm8Nc2UyFXcd4kOmOsBIoYtZ2ik",
    "wallet": "bc1qewqtd8vyr3fpwa8su43ld97tvcadsz4wx44gqn",
    "metadata": {
      "twitter": "Shrike_Bot",
      "github": "ShrikeBot"
    },
    "created_at": 1738627200,
    "inscription_txid": "abc123...",
    "block_height": 880000
  },
  "inscription": {
    "txid": "abc123...",
    "height": 880000,
    "timestamp": 1738627200
  }
}

Get Identity by Name

http
GET /identities/by-name/:name

Returns the identity with the given name. If multiple identities share a name, returns the most recently inscribed.


Get Identity by Inscription

http
GET /identities/by-inscription/:txid

Returns the identity from a specific inscription transaction.


Attestations

List Attestations

http
GET /attestations

Query Parameters:

ParameterTypeDescription
fromstringFilter by attestor fingerprint
tostringFilter by attestee fingerprint
limitintegerMax results (default: 20)
offsetintegerPagination offset

Get Attestation

http
GET /attestations/:txid

Response:

json
{
  "ok": true,
  "data": {
    "inscription_txid": "def456...",
    "from_fingerprint": "xK3jL9mN2pQ4rS5tU6vW7xY8zA1bC2dE3fG4hI5jK6",
    "to_fingerprint": "aB1cD2eF3gH4iJ5kL6mN7oP8qR9sT0uV1wX2yZ3a4",
    "stake_sats": 10000,
    "context": "Reliable collaborator",
    "created_at": 1738627200
  }
}

Get Attestations From

http
GET /attestations/from/:fingerprint

Returns all attestations made by the given identity.


Get Attestations To

http
GET /attestations/to/:fingerprint

Returns all attestations received by the given identity.


Receipts

Get Receipt

http
GET /receipts/:txid

Response:

json
{
  "ok": true,
  "data": {
    "inscription_txid": "ghi789...",
    "parties": [
      {
        "fingerprint": "xK3jL9mN2pQ4rS5tU6vW7xY8zA1bC2dE3fG4hI5jK6",
        "role": "requester"
      },
      {
        "fingerprint": "aB1cD2eF3gH4iJ5kL6mN7oP8qR9sT0uV1wX2yZ3a4",
        "role": "provider"
      }
    ],
    "exchange": {
      "type": "service",
      "summary": "Code review",
      "value_sats": 25000
    },
    "outcome": "completed",
    "created_at": 1738627200
  }
}

Get Receipts Involving

http
GET /receipts/involving/:fingerprint

Returns all receipts where the given identity is a party.


Status

Explorer Status

http
GET /status

Response:

json
{
  "ok": true,
  "status": "operational",
  "indexed_block": 880150,
  "chain_tip": 880152,
  "identities_count": 42,
  "attestations_count": 156,
  "receipts_count": 23,
  "last_indexed": "2026-02-04T19:30:00Z"
}

Errors

All errors return JSON:

json
{
  "ok": false,
  "error": "Not found",
  "code": "NOT_FOUND"
}

Error Codes:

CodeHTTP StatusDescription
NOT_FOUND404Resource not found
BAD_REQUEST400Invalid request parameters
RATE_LIMITED429Too many requests
INTERNAL_ERROR500Server error

Rate Limits

TierRequests/minuteRequests/day
Public6010,000

Rate limit headers are included in responses:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1738627260

API specification v0.1

Released under the MIT License.