Skip to main content

SDKs & Shared Libraries

API clients

Public APIs use HTTPS, JSON, a consistent error/envelope contract, and service OpenAPI documents. Consumers can generate clients with their preferred OpenAPI generator, point them at the platform gateway, and attach an OIDC access token. A single first-party client SDK is Planned.

dx-common-go platform modules

The shared Go platform supplies infrastructure capabilities without owning business policy:

AreaCapability
IdentityJWT/JWKS validation, workload-token acquisition/validation, caller allowlists, subject-context validation
AuthorizationComposite PDP client, typed decision/obligation contract, carried-decision verification
TransportPublic HTTP middleware and internal gRPC interceptors, request/trace propagation, graceful servers
API contractResponse envelope, typed errors, validation, pagination, OpenAPI integration
PersistencePostgreSQL lifecycle, transactions, query helpers, migration runner
CacheNamespaced cache, expiry, invalidation, and safe fallback conventions
EventsPublisher confirms, outbox relay, consumer retry, idempotency, dead-letter support
Search/storageElasticsearch/OpenSearch and S3-compatible client foundations
WorkersBounded concurrency, leases, cancellation, retry, and scheduler lifecycle
ObservabilityStructured logs, Prometheus metrics, OpenTelemetry traces, health/readiness

Adoption varies by service; see Shared Platform Architecture for the current matrix and developer package boundaries.

The library must not contain service-specific business rules, resource schemas, policy authoring logic, or data-plane query semantics. Those remain with the owning service.