openapi: 3.0.3 info: title: NESO Data Portal Datastore API description: 'The National Energy System Operator (NESO) Data Portal API is a CKAN v3 API providing programmatic access to NESO datasets including wind forecasts, demand predictions, balancing services, transmission constraints, and other UK energy system data. Rate limits: maximum 1 request per second for the CKAN API and 2 requests per minute for the Datastore API.' version: '3' contact: name: NESO Data Portal url: https://www.neso.energy/data-portal termsOfService: https://www.neso.energy/data-portal/api-guidance servers: - url: https://api.neso.energy/api/3/action description: NESO CKAN API production endpoint tags: - name: Datastore description: Query tabular data with filters or PostgreSQL-style SQL. paths: /datastore_search: get: tags: - Datastore summary: Query tabular data description: Queries the datastore for tabular records with optional filters and pagination. operationId: datastoreSearch parameters: - name: resource_id in: query required: true description: Resource identifier whose datastore is being queried. schema: type: string - name: limit in: query required: false description: Maximum number of records to return. schema: type: integer default: 100 - name: offset in: query required: false description: Offset into the result set. schema: type: integer default: 0 - name: q in: query required: false description: Free-text query against indexed fields. schema: type: string responses: '200': description: Datastore records. content: application/json: schema: $ref: '#/components/schemas/CkanResponse' /datastore_search_sql: get: tags: - Datastore summary: Query datastore via SQL description: Queries the datastore using PostgreSQL syntax. Field IDs and Resource IDs must be enclosed in double quotes. operationId: datastoreSearchSql parameters: - name: sql in: query required: true description: PostgreSQL-syntax SQL query. schema: type: string responses: '200': description: SQL query results. content: application/json: schema: $ref: '#/components/schemas/CkanResponse' components: schemas: CkanResponse: type: object description: Standard CKAN API response envelope. properties: help: type: string description: URL to the help endpoint for the action. success: type: boolean description: Whether the request was successful. result: description: Action-specific payload.