How Brigade sends data into ChefTec.
This separates the customer experience, Brigade’s existing application, the proposed AWS integration layer, and Dan’s ChefTec importer. It covers account linking, recipe transfer, invoice transfer, and the receipt back to the chef.
Brigade handles the experience. ChefBridge handles the transfer.
The chef saves first, then explicitly sends approved data. The transfer continues in the background.
Open the detailed component and endpoint map
Detailed component reference.
Use the controls to isolate one path. The full view shows where each service runs and which system owns each record.
- POST /api/v1/recipes/capture/
- POST /api/v1/invoices/capture/
- GET /api/v1/.../status
- POST /integrations/cheftec/link/
- POST /integrations/cheftec/operations/
- GET /integrations/cheftec/operations/{id}/
CustDetID + site scope + token reference. No ChefTec password.
Target: the ChefTec connector claims work and returns results through the protected ChefBridge API. Direct SQL polling is permitted only for a restricted, disposable pilot.
Each store has one job.
Brigade Postgres
Product truth- Recipes and invoice captures
- Chef decisions and kitchen memory
- Cost projections and evidence
- Connection and operation receipts (proposed)
S3
Source artifacts- Recipe photos/files
- Invoice PDFs/images
- Checksums and retention policy
- No customer SQL tables
ChefBridge Integration DB
Pilot transfer truth- Authorized customer/site connections
- Versioned transfer envelopes
- Queued/claimed/result states
- ChefTec read-back receipts
ChefTec SQL Server
Legacy truth- ChefTec recipe/item IDs
- Imported invoices and mappings
- Local or hosted customer data
- Written only by ChefTec code
What exists and what must be added.
Brigade product API
| Status | Endpoint | Job |
|---|---|---|
| Current | POST /api/v1/recipes/capture/ | Upload one recipe source. |
| Current | GET /api/v1/recipes/capture/{id}/status | Return recipe extraction state. |
| Current | POST /api/v1/invoices/capture/ | Upload an invoice source. |
| Current | POST /api/v1/invoices/{id}/confirm/ | Confirm invoice and learn eligible evidence. |
| Proposed | POST /api/v1/integrations/cheftec/link/ | Create a scoped ChefTec account connection. |
| Proposed | POST /api/v1/integrations/cheftec/operations/ | Create an approved recipe or invoice transfer. |
| Proposed | GET /api/v1/integrations/cheftec/operations/{id}/ | Return the server-owned transfer state. |
ChefBridge / ChefTec contract
| Owner | Endpoint or operation | Job |
|---|---|---|
| ChefBridge | POST /v1/connections/validate | Validate route through the supported read-only Calypso contract; fail closed. |
| ChefBridge | POST /v1/operations | Accept recipe.create.v1 or invoice.post.v1. |
| ChefTec | POST /v1/operations/{id}/claim | Claim work once for an authorized customer. |
| ChefTec | POST /v1/operations/{id}/result | Return imported, needs-review, or failed receipt. |
| ChefBridge | GET /v1/operations/{id} | Return status and read-back evidence. |
| Pilot fallback | restricted SQL claim | Time-boxed only: private connectivity, restricted stored procedures, per-installation least-privilege SQL credentials, and a documented removal date. |
Recipe and invoice use the same delivery controls.
Recipe → ChefTec
recipe.create.v1Invoice → ChefTec
invoice.post.v1Who builds which connection.
Brigade product
Connection UI, recipe/invoice review, explicit publish action, progress, result, retry, and history.
Brigade platform
Product endpoints and local transfer records; transactional outbox; Celery dispatcher; protected edge; private ChefBridge Django service; private RDS SQL Server; security and observability.
Dan provides
A supported read-only Calypso contract and network path; validation rules; CustDetID/site meanings; test account; mapping rules; and expected responses.
Dan builds
The ChefTec connector that claims approved work, invokes existing import logic, and returns ChefTec IDs, warnings, and final status.