Corvus
Corvus is an HTTP proxy that extends NGSI-LD context brokers with delete-by-query functionality. The NGSI-LD API only supports deleting entities by ID; there is no standard way to delete all entities matching a filter. Corvus fills that gap.
Overview
The NGSI-LD specification defines entity deletion by ID. Deleting entities by type, idPattern, or attribute query requires fetching matching entities and deleting them one by one—a tedious and error-prone process. Corvus automates this: you send a single DELETE request with query parameters, and Corvus fetches all matching entities, paginates through results, and performs the deletions with concurrency and retries built in.
Key Features
-
Delete entities by query —
DELETE /ngsi-ld/v1/entitieswith query parameters; Corvus finds all matches and batch-deletes them -
Delete temporal entities by query —
DELETE /ngsi-ld/v1/temporal/entitiesfor whole entities or specific attribute instances -
Automatic pagination — Drains all pages; no manual
limit/offsethandling -
Concurrent deletes — Configurable parallelism for temporal purges
-
Retry logic — Exponential backoff on transient errors (429, 5xx)
-
RFC 7807 Problem Details — Structured error responses
-
Graceful shutdown — Handles SIGTERM and Ctrl+C cleanly
Use Cases
-
Data lifecycle management — Purge entities by type or filter when datasets are deprecated or refreshed
-
Temporal data cleanup — Remove old temporal observations or attribute instances
-
Integration workflows — Bulk deletion as part of ETL or migration pipelines
Next Steps
-
How It Works — Entity purge and temporal purge flow
-
Configuration — Quick start and configuration reference
-
API Reference — Endpoint documentation
-
Error Handling — Problem Details and error types