Services Overview
| Service | API root | Coverage |
|---|---|---|
| Identity (IAM) | /20160918/… |
Compartments, users, groups, memberships, policies, reference data, work requests |
| Object Storage | /n/{ns}/b/{bucket}/o/{object} |
Buckets, objects, listing, rename, copy, multipart, pre-authenticated requests |
| Queue | /20210201/… |
Queues (work-request driven), messages with visibility timeouts and DLQ, stats, channels |
| Vault, KMS & Secrets | /20180608/…, /20190301/… |
Vaults, keys and versions, real AES-GCM/RSA/ECDSA crypto, secrets and bundles |
| Streaming | /20180418/… |
Streams, partitioned log, cursors (incl. group cursors), commit/heartbeat |
| Functions | /20181201/… |
Applications, functions, real invocation via an fnproject/fnserver sidecar |
Wire contract
Every service follows the OCI wire contract:
- Errors are
{"code": "...", "message": "..."}with the correct HTTP status; missing resources report404 NotAuthorizedOrNotFoundexactly as real OCI does. - Every response carries an
opc-request-idheader (echoing yours if provided), andopc-client-request-idis echoed back. - Lists paginate via
limit/pagequery parameters and theopc-next-pageresponse header. Identity lists return bare JSON arrays. - Mutations carry
etagheaders and honourif-match/if-none-match. - Async operations return 202 +
opc-work-request-id, pollable via the work-request endpoints.
Disabling a service
FLOCI_OCI_SERVICES_IDENTITY_ENABLED=false
FLOCI_OCI_SERVICES_OBJECTSTORAGE_ENABLED=false
FLOCI_OCI_SERVICES_QUEUE_ENABLED=false
FLOCI_OCI_SERVICES_KMS_ENABLED=false
FLOCI_OCI_SERVICES_VAULT_ENABLED=false
FLOCI_OCI_SERVICES_STREAMING_ENABLED=false
FLOCI_OCI_SERVICES_FUNCTIONS_ENABLED=false
Disabled services answer 503 ServiceUnavailable.