09. Data Contracts and Events

Key API contracts (observed)

Producer Endpoint Consumer Purpose Status
Public app /api/leads Leads backend Create lead Implemented
Public app /api/leads/{leadId}/trigger-generation Leads backend Start prototype generation Implemented
Public app /subscriptions/api/subscription-plans/ IDK subscriptions Retrieve plans Implemented
Public app /subscriptions/api/checkout-session/ IDK subscriptions Start Stripe checkout Implemented
Public app /subscriptions/api/checkout-status/ IDK subscriptions Confirm payment/session Implemented
Public app /api/support/tickets Support backend Create support ticket Implemented
Stripe /subscriptions/webhooks/stripe IDK subscriptions Billing lifecycle events Implemented

Event lifecycle (simplified)

sequenceDiagram participant U as User participant P as Public App participant S as Stripe participant I as IDK Subscriptions participant A as Provisioning/Activation U->>P: Choose plan and submit checkout form P->>I: POST checkout-session I->>S: Create Checkout Session S-->>U: Hosted checkout S-->>I: checkout.session.completed (webhook) I->>I: sync subscription/payment state I->>A: provision account artifacts A-->>U: activation email token

Contract gaps

  • No clearly documented canonical contract tying prototype artifact identity to final IDK Site identity.