Reports API
Retrieve a report by its unique key.
Endpoint
GET /v2/reports
Authentication
| Header | Required | Description |
|---|
X-API-Key | Yes | Your API key |
Query Parameters
| Parameter | Type | Required | Description |
|---|
reportKey | string | Yes | The report key (must be exactly 27 characters) |
Example
curl "https://api.experiaapp.com/v2/reports?reportKey=abc123xyzABC123XYZ012345xyz" \
-H "X-API-Key: YOUR_API_KEY"
Response
{
"Name": "Report name",
"CreatedAt": "2026-01-15 08:03:57 +0000 UTC",
"IsPublic": true,
"Sheets": [
{
"SheetID": "sheet_001",
"SheetName": "Sheet 1",
"Rows": [
{
"A": "ROW 1 - column A",
"B": "ROW 1 - column B",
"C": "ROW 1 - column C",
"D": "ROW 1 - column D"
},
{
"A": "ROW 2 - column A",
"B": "ROW 2 - column B",
"C": "ROW 2 - column C",
"D": "ROW 2 - column D"
}
]
}
]
}
Response Fields
| Field | Type | Description |
|---|
Name | string | Report name |
CreatedAt | string | Report creation timestamp |
IsPublic | boolean | Whether the report is public |
Sheets | array | Array of sheet objects, each containing rows of data |
Sheets[].SheetID | string | Unique sheet identifier |
Sheets[].SheetName | string | Human-readable sheet name |
Sheets[].Rows | array | Array of row objects with columns keyed A, B, C, ... |
The Sheets field is automatically decoded from its underlying encoded form, so you receive structured JSON ready to use.
Errors
| Status | Error | Cause |
|---|
| 400 | reportKey must be 27 characters | reportKey query parameter missing or incorrect length |
| 401 | Unauthorized | Missing or invalid API key |
| 404 | Report not found | No report exists for the given key |
| 500 | Internal server error | Server-side error |
| 502 | Bad gateway | Service temporarily unavailable |
Rate Limiting
- 200 requests per hour per API key
- HTTP
429 returned when limit is exceeded