Internal implementation reference
GET /operations/{operation_id}
Get operation. Permissions, parameters, responses and examples.
Private service protocols are unsupported for external integration. Their schemas describe source declarations; they are not public service endpoints.
Read pinned handler: services/scanner/kodesec_scanner/updater_routes.py:72
Get operation
Get operation through GET /operations/{operation_id}. The parameters and declared response shapes below come from this exact source snapshot.
Internal protocol; unsupported for external integration. This page makes no request to a local installation.
Authority
Private service protocol. No public or third-party integration authority.
Parameters and headers
| Name | Location | Contract |
|---|---|---|
operation_id | path Required | string Schema |
X-KodeSec-Request-Digest | header Conditional / optional | string | null Schema |
Request body
No typed JSON body is declared by this handler. That does not rule out source-level request parsing; inspect the pinned implementation, especially for internal connector protocols.
Responses
| Status | Meaning and declared shape |
|---|---|
200 | Successful Response application/json · OperationRecord |
404 | Refresh the collection and verify the resource identity before retrying. See source-linked error catalog. |
409 | Refresh current revision and identity. A conflicting command must not be blindly repeated. See source-linked error catalog. |
422 | Validation Error application/json · HTTPValidationError |
500 | Keep the operation identity and collect bounded, reviewed diagnostics. See source-linked error catalog. |
An empty or broad schema preserves the source contract. It is not a promise of an empty response.
Source-linked errors
Literal HTTP errors in this handler and same-file helper call graph, plus control middleware. Dynamic and cross-module failures may add other errors; source links are authoritative.
4 source error observations
| Status | Source detail | Recovery |
|---|---|---|
| 422 ↗ | request_digest_required | Correct the field or semantic validation error. Input values are omitted from control validation errors. |
| 404 ↗ | operation_missing | Refresh the collection and verify the resource identity before retrying. |
| 409 ↗ | operation_conflict | Refresh current revision and identity. A conflicting command must not be blindly repeated. |
| 500 ↗ | operation_ledger_invalid | Keep the operation identity and collect bounded, reviewed diagnostics. |
Synthetic examples
These examples validate declared JSON shapes and formats. They contain no real installation data and do not prove runtime admission, cross-field validation, authority or successful work.
Response 200 JSON
{
"attempt": 1,
"created_at": "synthetic",
"kind": "catalog_check",
"max_attempts": 1,
"operation_id": "00000000-0000-4000-8000-000000000001",
"request_digest": "0000000000000000000000000000000000000000000000000000000000000000",
"requested_components": [],
"schema_version": 1,
"stage": "synthetic",
"status": "queued",
"updated_at": "synthetic"
}All referenced models remain in its components section. Browse control model definitions.