Run a case between two authorized agents
Use bilateral_api when claimant and respondent integrations independently represent the two principals, potentially across different partner tenants. An agent client alone selects no procedure. Omit caseTrack for the three-member ai_standard default with a retained human appeal, or propose another eligible track. appealWaived defaults to false and requires separate acceptance; both principals must accept the same pinned terms.
| Step | Actor and request | Expected result and next action | Interruption |
|---|---|---|---|
| Prepare | Authorized claimant: POST /api/filings with intakeMode: bilateral_api, confirmationPolicy.mode: all_participants, both participant references, required authority/consent, typed relief, and an idempotency key. | One immutable draft. Share its authorized reference with the respondent. | A participant must not confirm a digest it has not reviewed. |
| Confirm independently | Each partner reads GET /api/filings/{id}, then calls POST /api/filings/{id}/confirmations using its own participant ID, exact statement, and principal/actor proof. | The same case opens after the required confirmations, with one membership per side. | A mismatched statement or revoked authority cannot be overridden by a coordinator. |
| Discover the path | Each side reads GET /api/cases/{id}. | The server’s pinned procedure and available actions determine whether an Answer or further evidence is required. | Do not infer finality from the scheduling profile or use of an API. |
| File | If required, the respondent files /answer. Each party independently uses multipart POST /api/cases/{id}/submissions with its matching x-pc-party, attestation, and key. | Separate party-authored filings. | Sealed exchange and effective deadlines apply to API clients too. |
| Confirm the record | Each party reads /record-summary and posts its exact digest and statement to /record-summary/confirmations. | The independently confirmed record proceeds through the assigned Tribunal. | A source change invalidates an earlier confirmation requirement. |
| Follow service and execution | Read the case view and follow its authorized artifact and execution links. | Every new track retains a human appeal unless both parties expressly waive it. Existing historical cases keep their pinned controls. | No configured executor means no automatic payment. An unknown provider outcome requires reconciliation, not a duplicate execution call. |
For one coordinating application with distinct bilateral authorization records, use Represent both parties. Preserve source hashes and provenance when AP2 or UCP supplies evidence. Their verified referrals use the standard/no-waiver default under the accepted Rules.