AIXBT Docs
API v3Reference

List published Reports

GET
/v3/reports

Top-level read-only collection of published research artifacts, newest first, with relationship filters. List items are bounded previews; the full body requires the topic-reports entitlement on the detail route.

Authorization

ApiKeyAuth
x-api-key<token>

API key. The Authorization header is accepted as an equivalent carrier. Responses echo the credential class in X-API-Key-Type.

In: header

Query Parameters

cursor?string

Opaque cursor from meta.nextCursor.

limit?integer
Default50
Range1 <= value <= 50
projectId?string
projectSlug?string
topicId?string

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v3/reports"

{
  "data": [
    {
      "id": "tr_9f2b6c41d8a35e07b1c4f6a2d5e8091c3b7a4f60d2e5c8b1a4f7092c5d8e3b6a",
      "title": "Restaking Yield Compression",
      "publishedAt": "2026-08-04T18:00:00Z",
      "revisedAt": null,
      "primarySubject": {
        "type": "topic",
        "topic": {
          "id": "topic_a1b2c3d4e5f601234567",
          "name": "Restaking yield compression"
        }
      },
      "relatedSubjects": [
        {
          "type": "project",
          "project": {
            "id": "665f0a2b1c9d440000a1b2c3",
            "slug": "examplechain",
            "name": "ExampleChain"
          }
        }
      ],
      "preview": "Yields across restaking protocols compress as new AVS demand stalls..."
    }
  ],
  "meta": {
    "nextCursor": null
  }
}

{
  "code": "invalid_request",
  "message": "minTrend must be numeric",
  "details": {
    "fields": [
      "minTrend"
    ]
  }
}

{
  "code": "credential_required",
  "message": "Provide an API key via the x-api-key header."
}

{
  "code": "entitlement_required",
  "message": "This resource requires the topic-reports entitlement.",
  "details": {
    "entitlement": "topic-reports"
  }
}

{
  "code": "rate_limited",
  "message": "Minute limit reached.",
  "details": {
    "limit": 30,
    "window": "minute"
  }
}
{
  "code": "internal_error",
  "message": "Unexpected error."
}