Example Apps
enlace-examples has a
runnable sample app per adapter โ aspnetcore/, express/, fastapi/,
java/, nest/ โ each already wired up to Enlace, so you can see a
real chain working before you touch your own API.
๐ Try it live โ no setup at allโ
The fastapi/ example is deployed and running right now, Postgres-backed,
with real OAuth2 auth:
๐ enlace-fastapi.onrender.com/enlace
Open it, drop in the seeded demo credentials, and build the chain below โ nothing to install, nothing to run locally.
The two reference chainsโ
The four CRUD-only examples (aspnetcore/, express/, java/, nest/)
implement one shared, unauthenticated contract โ customers, products,
orders โ so a chain built against one works unmodified against any other:
POST /customersโ capture the new customer'sid.POST /products(ร2) โ capture bothids.POST /orders, mappingcustomerIdfrom step 1 and each item'sproductIdfrom step 2 โ capture the order'sidand its server-computedtotal.PUT /orders/{id}/status, withidmapped from step 3, body{ "status": "paid" }.GET /orders/{id}โ confirm the status change.
fastapi/ goes further: it's the production reference implementation
โ three real credential types across three actors (customer, admin,
carrier), a compound cartโcheckoutโpaymentโfulfillmentโshipment flow, and
an 8-step chain with two credential switches mid-run:
GET /products(no credential) โ pick a product'sid.POST /carts(customercredential) โ capture the cart'sid.POST /carts/{cartId}/items,productIdmapped from step 1.POST /carts/{cartId}/checkoutโ capture bothorder.idandpayment.idout of one compound response.POST /payments/{id}/confirm,idmapped from step 4'spayment.id.POST /orders/{id}/fulfill,idmapped from step 4'sorder.idโ switch to theadmincredential here โ capture the shipment'strackingNumber.PUT /shipments/{trackingNumber}/status, mapped from step 6 โ switch to thecarriercredential here.GET /shipments/{trackingNumber}(no credential) โ confirmstatus: "delivered".
See fastapi/README.md
for the exact demo credential values, or
CONTRACT.md
for the full API shape behind both chains. The CRUD-only examples will
grow into this same richer contract over time โ for now, fastapi/ is
the one that's actually there, and it's the one that's live.