Asset API Endpoint Catalog
Authoritative inventory
Every mapped Asset Service method/route pair appears exactly once below. None under authorization means no endpoint authorization metadata is enforced. Source paths are repository-relative.
| # | Method and route | Purpose | Request | Response / outcomes | AuthN / AuthZ | Validation | Event | Source |
|---|---|---|---|---|---|---|---|---|
| 1 | GET / | Service information | None | Service envelope; 200 | Not required / None | None | None | microservices/src/asset-service/Program.cs |
| 2 | GET /health | Host health | None | Health result | Not required / None | Framework | None | microservices/src/asset-service/Program.cs |
| 3 | GET /asset/health-data | Tenant counts | None | Anonymous counts; 200/400 | Not required / None | Tenant context | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 4 | GET /asset/assets | List/filter assets | Query filters | AssetDto list; 200 | Not required / None | Parseable filters; cap | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 5 | GET /asset/assets/{asset} | Asset detail | Route aggregate key | AssetDto; 200/404 | Not required / None | Route constraint | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 6 | POST /asset/assets | Create inventory | CreateAssetInput | AssetDto; 201/400/409 | Not required / None | Tenant, values, duplicate code | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 7 | POST /asset/requests | Create request | CreateAssetRequestInput | AssetDto; 201/400 | Not required / None | Tenant, requester, values | Requested | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 8 | POST /asset/assets/{asset}/assign | Assign/issue | AssignAssetInput | AssetDto; 200/400/404/409 | Not required / None | Route, lifecycle, assignee, workflow guard | Assigned | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 9 | POST /asset/assets/{asset}/return | Return | ReturnAssetInput | AssetDto; 200/400/404 | Not required / None | Route and Issued state | Returned | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 10 | POST /asset/assets/{asset}/reject | Reject request | RejectAssetInput | AssetDto; 200/400/404/409 | Not required / None | Reason, state, workflow guard | Rejected | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 11 | POST /asset/assets/{asset}/mark-damaged | Record damage | AssetConditionNoteInput | AssetDto; 200/400/404 | Not required / None | Route and lifecycle | LostOrDamaged | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 12 | POST /asset/assets/{asset}/mark-lost | Record loss | AssetConditionNoteInput | AssetDto; 200/400/404 | Not required / None | Route and lifecycle | LostOrDamaged | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 13 | POST /asset/assets/{asset}/retire | Retire | AssetConditionNoteInput | AssetDto; 200/400/404 | Not required / None | Route and lifecycle | Retired | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 14 | DELETE /asset/assets/{asset} | Delete eligible asset | Route aggregate key | Message; 200/404/409 | Not required / None | Deletable state | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 15 | GET /asset/assets/{asset}/history | Assignment history | Route aggregate key | History list; 200/404 | Not required / None | Route constraint | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 16 | GET /asset/employees/{employee}/open-assets | Exit-clearance assets | Route labor key | OpenAssetDto list; 200 | Not required / None | Integer route; positive check | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 17 | GET /asset/employees/{employee}/clearance-status | Clearance verdict | Route labor key | AssetClearanceStatusDto; 200 | Not required / None | Integer route | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 18 | POST /asset/workflow/callback | Apply terminal decision | WorkflowCallbackDto | AssetDto; 200/400/404/409 | Not required / None | Decision, subject, target, state | Assigned or Rejected | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 19 | POST /asset/assets/{asset}/documents | Upload document | UploadAssetDocumentInput | Reference DTO; 201/400/404/503 | Not required / None | Route, filename, content, asset | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 20 | GET /asset/assets/{asset}/documents | List document references | Route aggregate key | Reference list; 200/404 | Not required / None | Asset existence | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 21 | GET /asset/assets/{asset}/documents/{document}/download | Download bytes | Route keys | File; 200/404/503 | Not required / None | Asset/reference/content | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 22 | DELETE /asset/assets/{asset}/documents/{document} | Remove reference | Route keys | Message; 200/404 | Not required / None | Asset/reference | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 23 | GET /asset/audit | Audit evidence | Optional take | Anonymous list; 200 | Not required / None | Clamped take | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 24 | GET /asset/timeline | Timeline evidence | Optional take | Anonymous list; 200 | Not required / None | Clamped take | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 25 | GET /asset/outbox | Outbox evidence | Optional take | Anonymous list; 200 | Not required / None | Clamped take | None | microservices/src/asset-service/Api/AssetEndpoints.cs |
| 26 | GET /api/hr-operations/workspace | Compatibility workspace | None | Anonymous workspace; 200 | Not required / None | Tenant filter | None | microservices/src/asset-service/Api/AssetCompatEndpoints.cs |
| 27 | GET /api/hr-operations/assets/{asset} | Compatibility detail | Route compatibility key | Anonymous asset; 200/404 | Not required / None | Integer route | None | microservices/src/asset-service/Api/AssetCompatEndpoints.cs |
| 28 | POST /api/hr-operations/assets | Compatibility create/update | MonolithAssetRequest | Anonymous asset; 200/400/404/409 | Not required / None | Canonical command rules | Possible Assigned | microservices/src/asset-service/Api/AssetCompatEndpoints.cs |
| 29 | POST /api/hr-operations/assets/{asset}/status | Compatibility transition | MonolithAssetStatusUpdate | Anonymous asset; 200/400/404/409 | Not required / None | Status vocabulary and lifecycle | Possible lifecycle event | microservices/src/asset-service/Api/AssetCompatEndpoints.cs |
| 30 | DELETE /api/hr-operations/assets/{asset} | Compatibility delete | Route compatibility key | Message; 200/404/409 | Not required / None | Deletable state | None | microservices/src/asset-service/Api/AssetCompatEndpoints.cs |
| 31 | POST /api/hr-operations/asset-requests | Compatibility request | MonolithAssetRequest | Anonymous asset; 200/400 | Not required / None | Canonical request rules | Requested | microservices/src/asset-service/Api/AssetCompatEndpoints.cs |
Totals
- Native Asset group: 23
- Compatibility: 6
- Host foundation: 2
- Total unique operations: 31
Classification
The API is Transitional. Capabilities explicitly described as absent are Not implemented. Host diagnostics and evidence routes are Foundation. Production exposure, ownership, and governance Require confirmation.
Source References
microservices/src/asset-service/Program.csmicroservices/src/asset-service/Api/AssetEndpoints.csmicroservices/src/asset-service/Api/AssetCompatEndpoints.cs