Skip to main content

GET /resources/wrappers

Retrieve a paginated list of all generated wrappers. Use this endpoint to browse wrappers, check their status, and access their metadata.

Authentication

This endpoint requires authentication. Include your API key in the request headers.

Query Parameters

skip
integer
default:"0"
Number of wrappers to skip (for pagination)
limit
integer
default:"10"
Maximum number of wrappers to return (for pagination)

Response

Returns an array of wrapper objects. Each wrapper contains:
wrapper_id
string
Unique identifier for the wrapper
resource_id
string
Associated resource ID (if created)
metadata
object
Indicator metadata including name, domain, subdomain, description, unit, source, scale, governance_indicator, carrying_capacity, and periodicity
source_type
string
Type of data source: API, CSV, or XLSX
source_config
object
Source-specific configuration details
generated_code
string
Generated wrapper code (null if not yet generated)
created_at
string
ISO 8601 timestamp of creation
updated_at
string
ISO 8601 timestamp of last update
completed_at
string
ISO 8601 timestamp of completion (null if not completed)
status
string
Current status: pending, generating, creating_resource, executing, stopped, completed, or error
error_message
string
Error message if status is error
execution_log
array
Array of execution log messages
last_health_check
string
ISO 8601 timestamp of last health check
last_data_sent
string
ISO 8601 timestamp of last data transmission
data_points_count
integer
Number of data points processed
monitoring_details
object
Type-specific monitoring information
phase
string
Current execution phase: historical or continuous
high_water_mark
string
Newest data point timestamp ever sent
low_water_mark
string
Oldest data point timestamp ever sent
execution_result
object
Result of the last execution (if available)

Example Request

cURL
curl -X GET "https://api.example.com/resources/wrappers?skip=0&limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"

Example Response

[
  {
    "wrapper_id": "550e8400-e29b-41d4-a716-446655440000",
    "resource_id": "res_123456789",
    "metadata": {
      "name": "Average Temperature",
      "domain": "Environment",
      "subdomain": "Climate",
      "description": "Average daily temperature in degrees Celsius",
      "unit": "°C",
      "source": "National Climate Service",
      "scale": "National",
      "governance_indicator": false,
      "carrying_capacity": null,
      "periodicity": "Daily"
    },
    "source_type": "API",
    "source_config": {
      "location": "https://data-api.example.com/climate/temperature",
      "auth_type": "bearer",
      "timeout_seconds": 30,
      "date_field": "timestamp",
      "value_field": "temperature_celsius",
      "custom_headers": {},
      "query_params": {}
    },
    "generated_code": "import asyncio\n...",
    "created_at": "2026-03-03T10:30:00Z",
    "updated_at": "2026-03-03T10:35:00Z",
    "completed_at": null,
    "status": "executing",
    "error_message": null,
    "execution_log": [
      "Executed successfully at 2026-03-03T10:35:00Z"
    ],
    "last_health_check": "2026-03-03T10:40:00Z",
    "last_data_sent": "2026-03-03T10:39:45Z",
    "data_points_count": 127,
    "monitoring_details": {
      "process_id": 12345,
      "uptime_seconds": 600
    },
    "phase": "continuous",
    "high_water_mark": "2026-03-03T10:39:45Z",
    "low_water_mark": "2026-02-01T00:00:00Z",
    "execution_result": {
      "wrapper_id": "550e8400-e29b-41d4-a716-446655440000",
      "success": true,
      "message": "Wrapper executed successfully",
      "data_points_sent": 127,
      "execution_time": "2026-03-03T10:35:22Z"
    }
  },
  {
    "wrapper_id": "660e8400-e29b-41d4-a716-446655440001",
    "resource_id": "res_987654321",
    "metadata": {
      "name": "Air Quality Index",
      "domain": "Environment",
      "subdomain": "Air Quality",
      "description": "Daily air quality index measurements",
      "unit": "AQI",
      "source": "Environmental Protection Agency",
      "scale": "Regional",
      "governance_indicator": false,
      "carrying_capacity": 500,
      "periodicity": "Daily"
    },
    "source_type": "CSV",
    "source_config": {
      "file_id": "file_abc123",
      "location": "/uploads/air_quality_2026.csv"
    },
    "generated_code": "import pandas as pd\n...",
    "created_at": "2026-03-02T14:20:00Z",
    "updated_at": "2026-03-02T14:25:00Z",
    "completed_at": "2026-03-02T14:25:00Z",
    "status": "completed",
    "error_message": null,
    "execution_log": [
      "Executed successfully at 2026-03-02T14:25:00Z"
    ],
    "last_health_check": "2026-03-02T14:25:00Z",
    "last_data_sent": "2026-03-02T14:24:58Z",
    "data_points_count": 365,
    "monitoring_details": {},
    "phase": "historical",
    "high_water_mark": "2026-03-01T23:59:59Z",
    "low_water_mark": "2025-03-01T00:00:00Z",
    "execution_result": {
      "wrapper_id": "660e8400-e29b-41d4-a716-446655440001",
      "success": true,
      "message": "Wrapper executed successfully",
      "data_points_sent": 365,
      "execution_time": "2026-03-02T14:25:00Z"
    }
  }
]

Error Responses

503 Service Unavailable
Database service unavailable:
  • Connection error to database
  • Timeout querying wrappers
{
  "detail": "Database service unavailable"
}

Pagination

Use the skip and limit parameters to paginate through results:
  • First page: skip=0&limit=10
  • Second page: skip=10&limit=10
  • Third page: skip=20&limit=10

Build docs developers (and LLMs) love