{"openapi":"3.1.0","info":{"title":"Stormy Control Plane","version":"0.1.0"},"paths":{"/health":{"get":{"tags":["system"],"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Health Health Get"}}}}}}},"/build":{"get":{"tags":["system"],"summary":"Build","description":"Which exact code this process is running — git rev, dirty marker,\nsource fingerprint (changes on any src edit), boot time, pid.","operationId":"build_build_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Build Build Get"}}}}}}},"/ready":{"get":{"tags":["system"],"summary":"Ready","operationId":"ready_ready_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Ready Ready Get"}}}}}}},"/v1/teams/{team_id}/harness/worker/credentials":{"post":{"tags":["harness"],"summary":"Mint Harness Worker Credentials","operationId":"mint_harness_worker_credentials_v1_teams__team_id__harness_worker_credentials_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Mint Harness Worker Credentials V1 Teams  Team Id  Harness Worker Credentials Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/":{"get":{"tags":["identity"],"summary":"Whoami","description":"Answer 'who is this credential?' — the first thing to ask when a tool 401s.","operationId":"whoami_v1_me__get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Whoami V1 Me  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me":{"get":{"tags":["identity"],"summary":"Whoami","description":"Answer 'who is this credential?' — the first thing to ask when a tool 401s.","operationId":"whoami_v1_me_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Whoami V1 Me Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/teams":{"get":{"tags":["identity"],"summary":"List My Teams","operationId":"list_my_teams_v1_me_teams_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List My Teams V1 Me Teams Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/admin/customer-teams":{"get":{"tags":["identity"],"summary":"List Customer Teams","description":"List every customer workspace for the machine-local admin console.","operationId":"list_customer_teams_v1_me_admin_customer_teams_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Customer Teams V1 Me Admin Customer Teams Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/admin/activity":{"get":{"tags":["identity"],"summary":"Admin Recent Activity","description":"Recent sessions and runs across EVERY customer workspace, in one call.\n\nTHE READ THE ADMIN CONSOLE ACTUALLY MAKES. `/v2/api/activity` wants \"what\njust happened anywhere\", and every list route below it is scoped to one team\n— so it fanned out `/sessions` + `/runs` per team and awaited all of them at\nonce. At 40 workspaces that is 80 concurrent requests against four api lanes\nsharing ~40 database slots: a single team read costs 0.44s, but the fan-out\nmeasured p95 5.76s and 24.9s end to end (2026-08-27), which is why the page\nsat on its skeletons and why everything else queued behind it.\n\nAuthorisation is `list_customer_teams`' own — the local-operator gate — and\nthe team list it returns is the exact scope of the read, so this can never\nreach a workspace the caller could not already list.","operationId":"admin_recent_activity_v1_me_admin_activity_get","parameters":[{"name":"sessions_per_team","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":8,"title":"Sessions Per Team"}},{"name":"runs_per_team","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":12,"title":"Runs Per Team"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Admin Recent Activity V1 Me Admin Activity Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/admin/onboarding-conversations":{"get":{"tags":["identity"],"summary":"Admin Onboarding Conversations","description":"Every onboarding conversation real people have had, across every shop.\n\nTHE PHONE TAB READS THIS. The onboarding a stranger opens from an ad ends in\na browser voice call, and that call is a conversation on an `agent_sessions`\nrow — it writes no `phone_calls` row, so a phone ledger has nothing to say\nabout it. This is the list of those conversations, newest first, with the\nteam they belong to, whether voice was ever heard, how much was said, what\nthe agent ran, and the calls the shop's line placed afterwards.\n\nOne statement, however many workspaces (`onboarding_conversations_across_teams`);\nauthorisation is `list_customer_teams`' own local-operator gate and the\nteam list it returns is the exact scope of the read.\n\n`rehearsal` is on every row rather than a filter here: a bench shop\n(`created_via = fresh_shop`, owner `…@rehearsal.invalid`) must never read\nas a stranger who found the product, and the console decides what to show.\n`guest` marks a person who has not signed in yet (`…@guest.invalid`).","operationId":"admin_onboarding_conversations_v1_me_admin_onboarding_conversations_get","parameters":[{"name":"per_team","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Per Team"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Admin Onboarding Conversations V1 Me Admin Onboarding Conversations Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/admin/browser-voice-calls":{"get":{"tags":["identity"],"summary":"Admin Browser Voice Calls","description":"Every browser voice call anyone has had with the product, across every shop.\n\nTHE VOICE VIEW READS THIS. A browser call is a WebRTC socket the backend is\nnot on; what it knows is the `browser_voice` receipt the browser's forwarded\nevents leave on the conversation — the words, when audio first played, how\nlong each answer took to become audible, who spoke over whom, the tools the\nmodel called, the provider's errors, and the hang-up. This is that list,\nnewest first, each row summarised by `browser_voice_receipts.summarize` so\nthe feed and the open call count the same way.\n\nOne statement however many workspaces (`browser_voice_calls_across_teams`);\nthe scope is exactly `list_customer_teams`' answer. `rehearsal` and `guest`\nride on every row for the reason the onboarding feed gives: a bench shop\nmust never read as a stranger who found the product, and the console\ndecides what to show.","operationId":"admin_browser_voice_calls_v1_me_admin_browser_voice_calls_get","parameters":[{"name":"per_team","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Per Team"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Admin Browser Voice Calls V1 Me Admin Browser Voice Calls Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/admin/rehearsal-workspaces":{"post":{"tags":["identity"],"summary":"Create Rehearsal Workspace","description":"Open a no-business workspace from the local account panel.\n\nSame starter a customer gets, minus the GitHub remote.","operationId":"create_rehearsal_workspace_v1_me_admin_rehearsal_workspaces_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Rehearsal Workspace V1 Me Admin Rehearsal Workspaces Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["identity"],"summary":"Expire Rehearsal Workspaces","description":"Forget every local rehearsal owned by this person; preserve real teams.","operationId":"expire_rehearsal_workspaces_v1_me_admin_rehearsal_workspaces_delete","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Expire Rehearsal Workspaces V1 Me Admin Rehearsal Workspaces Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/workspace":{"get":{"tags":["identity"],"summary":"Get My Workspace","description":"Resolve this customer's own Pi workspace; never select another owner.","operationId":"get_my_workspace_v1_me_workspace_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get My Workspace V1 Me Workspace Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["identity"],"summary":"Ensure My Workspace","description":"Create one team-scoped Pi/Git workspace for a new signed-in customer.","operationId":"ensure_my_workspace_v1_me_workspace_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ensure My Workspace V1 Me Workspace Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/guest/gate":{"get":{"tags":["guest"],"summary":"Guest Gate","description":"Is the door open, and what does the page need to knock on it?\n\nPublic and cheap on purpose: the landing screen paints before it mints, so\nit asks this first and renders the Turnstile widget only if there is a site\nkey to render it with.","operationId":"guest_gate_v1_guest_gate_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Guest Gate V1 Guest Gate Get"}}}}}}},"/v1/guest/workspace":{"post":{"tags":["guest"],"summary":"Open Guest Workspace","description":"Mint one workspace for one stranger and hand back its credential.","operationId":"open_guest_workspace_v1_guest_workspace_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestMintRequest"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Open Guest Workspace V1 Guest Workspace Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/guest/human-check":{"post":{"tags":["guest"],"summary":"Guest Human Check","description":"Write the server-verified receipt required before a free voice call.","operationId":"guest_human_check_v1_guest_human_check_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestHumanCheckRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Guest Human Check V1 Guest Human Check Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/guest/budget":{"get":{"tags":["guest"],"summary":"Guest Budget","description":"What is left. Read by the desk before it spends, and by the screen.","operationId":"guest_budget_v1_guest_budget_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Guest Budget V1 Guest Budget Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/guest/adopt":{"post":{"tags":["guest"],"summary":"Adopt Guest Workspace","description":"Hand the workspace they have been playing in to the account they just made.\n\nWHAT AUTH-LATER ACTUALLY COSTS, AND IT IS THIS ROUTE. Everything before it\nis real: the shop they picked, the record their agent wrote, the screen it\ndrew, the call they heard. None of it is a demo to be thrown away and\nrebuilt once they sign in — the whole argument for postponing auth is that\nthe work survives it.\n\nTWO IDENTITIES, ON PURPOSE. The GUEST token authorises the handover (it\nproves the caller is the browser that has been holding this workspace) and\nthe ACCOUNT token names the recipient. Requiring both is what stops a\nsigned-in stranger adopting a workspace by guessing a team id, and what\nstops a guest token nominating an account it does not hold.\n\nTHE EXPIRY STOPS BEING DUE BY CONSTRUCTION. `created_via` becomes\n`guest_adopted`, and `rehearsal.expire_workspace` refuses any team whose\n`created_via` it does not recognise — so the queued four-hour job answers\n`not_rehearsal` and does nothing. The queued row is cancelled as well, but\nthe metadata is the guarantee: a cancellation that failed to apply cannot\ndelete a paying customer's tree.","operationId":"adopt_guest_workspace_v1_guest_adopt_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestAdoptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Adopt Guest Workspace V1 Guest Adopt Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/decision-groups":{"get":{"tags":["governance"],"summary":"List Decision Groups","operationId":"list_decision_groups_v1_teams__team_id__decision_groups_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"run_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Run Id"}},{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Decision Groups V1 Teams  Team Id  Decision Groups Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["governance"],"summary":"Create Decision Group","operationId":"create_decision_group_v1_teams__team_id__decision_groups_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DecisionGroupCreateRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Decision Group V1 Teams  Team Id  Decision Groups Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/decision-targets":{"get":{"tags":["governance"],"summary":"List Decision Targets","operationId":"list_decision_targets_v1_teams__team_id__decision_targets_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Decision Targets V1 Teams  Team Id  Decision Targets Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/decision-groups/{decision_group_id}":{"get":{"tags":["governance"],"summary":"Get Decision Group","operationId":"get_decision_group_v1_teams__team_id__decision_groups__decision_group_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"decision_group_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Decision Group Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Decision Group V1 Teams  Team Id  Decision Groups  Decision Group Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/decision-groups/{decision_group_id}/responses":{"post":{"tags":["governance"],"summary":"Respond To Decision Group","operationId":"respond_to_decision_group_v1_teams__team_id__decision_groups__decision_group_id__responses_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"decision_group_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Decision Group Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DecisionResponseRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Respond To Decision Group V1 Teams  Team Id  Decision Groups  Decision Group Id  Responses Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/decision-groups/{decision_group_id}/cancel":{"post":{"tags":["governance"],"summary":"Cancel Decision Group","operationId":"cancel_decision_group_v1_teams__team_id__decision_groups__decision_group_id__cancel_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"decision_group_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Decision Group Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DecisionGroupCancelRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Cancel Decision Group V1 Teams  Team Id  Decision Groups  Decision Group Id  Cancel Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/decision-groups/{decision_group_id}/expire":{"post":{"tags":["governance"],"summary":"Expire Decision Group","operationId":"expire_decision_group_v1_teams__team_id__decision_groups__decision_group_id__expire_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"decision_group_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Decision Group Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Expire Decision Group V1 Teams  Team Id  Decision Groups  Decision Group Id  Expire Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/responsibilities":{"get":{"tags":["responsibilities"],"summary":"List Responsibilities","operationId":"list_responsibilities_v1_teams__team_id__responsibilities_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Responsibilities V1 Teams  Team Id  Responsibilities Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["responsibilities"],"summary":"Create Responsibility","operationId":"create_responsibility_v1_teams__team_id__responsibilities_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateResponsibilityRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Responsibility V1 Teams  Team Id  Responsibilities Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/responsibilities/{responsibility_id}":{"get":{"tags":["responsibilities"],"summary":"Show Responsibility","operationId":"show_responsibility_v1_teams__team_id__responsibilities__responsibility_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"responsibility_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Responsibility Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Show Responsibility V1 Teams  Team Id  Responsibilities  Responsibility Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/responsibilities/{responsibility_id}/accept":{"post":{"tags":["responsibilities"],"summary":"Accept Responsibility","operationId":"accept_responsibility_v1_teams__team_id__responsibilities__responsibility_id__accept_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"responsibility_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Responsibility Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptResponsibilityRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Accept Responsibility V1 Teams  Team Id  Responsibilities  Responsibility Id  Accept Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/responsibilities/{responsibility_id}/requirements":{"post":{"tags":["responsibilities"],"summary":"Add Responsibility Requirement","operationId":"add_responsibility_requirement_v1_teams__team_id__responsibilities__responsibility_id__requirements_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"responsibility_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Responsibility Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddResponsibilityRequirementRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Add Responsibility Requirement V1 Teams  Team Id  Responsibilities  Responsibility Id  Requirements Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/responsibilities/{responsibility_id}/activate":{"post":{"tags":["responsibilities"],"summary":"Activate Responsibility","operationId":"activate_responsibility_v1_teams__team_id__responsibilities__responsibility_id__activate_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"responsibility_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Responsibility Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Activate Responsibility V1 Teams  Team Id  Responsibilities  Responsibility Id  Activate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/responsibilities/{responsibility_id}/pause":{"post":{"tags":["responsibilities"],"summary":"Pause Responsibility","operationId":"pause_responsibility_v1_teams__team_id__responsibilities__responsibility_id__pause_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"responsibility_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Responsibility Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PauseResponsibilityRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Pause Responsibility V1 Teams  Team Id  Responsibilities  Responsibility Id  Pause Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sessions":{"post":{"tags":["agent runtime"],"summary":"Create Human Conversation Session","description":"Create an empty attached-human room without starting model work.\n\nA channel used to manufacture its session by running a private kickoff.\nIf the owner pressed Talk while that model was still working, their first\nspoken delegation queued behind setup work they never asked for. The room\nis durable state; opening it is not an agent turn.","operationId":"create_human_conversation_session_v1_teams__team_id__sessions_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateHumanConversationSessionRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Human Conversation Session V1 Teams  Team Id  Sessions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["agent runtime"],"summary":"List Sessions","description":"Sessions by last activity. The worker holds the conversation; the\ngrant and the record stay Stormy's — `uses_delegate_harness` marks the harness lane.","operationId":"list_sessions_v1_teams__team_id__sessions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Sessions V1 Teams  Team Id  Sessions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs":{"post":{"tags":["agent runtime"],"summary":"Create Run","operationId":"create_run_v1_teams__team_id__runs_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRunRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Run V1 Teams  Team Id  Runs Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["agent runtime"],"summary":"List Runs","operationId":"list_runs_v1_teams__team_id__runs_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["queued","running","waiting_interaction","waiting_action","waiting_children","waiting_schedule","succeeded","failed","cancelled"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"}},{"name":"parent_run_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Parent Run Id"}},{"name":"root_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Root Only"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Cursor"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"include_evidence","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Evidence"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Runs V1 Teams  Team Id  Runs Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/agents/spawn":{"post":{"tags":["agent runtime"],"summary":"Spawn Agent","description":"Start one full-harness child and return immediately to the caller.","operationId":"spawn_agent_v1_teams__team_id__agents_spawn_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpawnAgentRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Spawn Agent V1 Teams  Team Id  Agents Spawn Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/agents/launch":{"post":{"tags":["agent runtime"],"summary":"Launch Subagents","description":"Launch several subagents atomically and return their ordered handles.","operationId":"launch_subagents_v1_teams__team_id__agents_launch_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LaunchSubagentsRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Launch Subagents V1 Teams  Team Id  Agents Launch Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/agents":{"get":{"tags":["agent runtime"],"summary":"Agents List","description":"List the background-agent fleet attached to this conversation.","operationId":"agents_list_v1_teams__team_id__agents_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Agents List V1 Teams  Team Id  Agents Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/conversation/status":{"get":{"tags":["agent runtime"],"summary":"Human Conversation Status","operationId":"human_conversation_status_v1_teams__team_id__conversation_status_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Human Conversation Status V1 Teams  Team Id  Conversation Status Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/conversation/messages":{"post":{"tags":["agent runtime"],"summary":"Send Human Conversation Message","operationId":"send_human_conversation_message_v1_teams__team_id__conversation_messages_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationMessageRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Human Conversation Message V1 Teams  Team Id  Conversation Messages Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/conversation/typing":{"post":{"tags":["agent runtime"],"summary":"Set Human Conversation Typing","operationId":"set_human_conversation_typing_v1_teams__team_id__conversation_typing_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationTypingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Set Human Conversation Typing V1 Teams  Team Id  Conversation Typing Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/conversation/read":{"post":{"tags":["agent runtime"],"summary":"Mark Human Conversation Read","operationId":"mark_human_conversation_read_v1_teams__team_id__conversation_read_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Mark Human Conversation Read V1 Teams  Team Id  Conversation Read Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/conversation/ui":{"post":{"tags":["agent runtime"],"summary":"Send Human Conversation Ui","operationId":"send_human_conversation_ui_v1_teams__team_id__conversation_ui_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationUiRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Human Conversation Ui V1 Teams  Team Id  Conversation Ui Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/conversation/page":{"post":{"tags":["agent runtime"],"summary":"Send Human Conversation Page Progress","description":"Open or update a harness-authored page on an attached browser canvas.","operationId":"send_human_conversation_page_progress_v1_teams__team_id__conversation_page_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationPageProgressRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Human Conversation Page Progress V1 Teams  Team Id  Conversation Page Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/conversation/finish":{"post":{"tags":["agent runtime"],"summary":"Finish Human Conversation","description":"The agent's judgment that this conversation is done, said once.","operationId":"finish_human_conversation_v1_teams__team_id__conversation_finish_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationFinishRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Finish Human Conversation V1 Teams  Team Id  Conversation Finish Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/console/turns":{"post":{"tags":["agent runtime"],"summary":"Record Console Turn","description":"Record what a HUMAN typed at their terminal, under their own identity.\n\nStormy's terminal hands the owner's words straight to a worker, so the one\nfact that governs every human-in-the-loop gate — a person said this — had\nno record anywhere. Whoever runs the terminal writes the owner's message\nhere with the OWNER's credential, and the turn is stamped with the\nauthenticated principal.\n\nAn agent principal is refused outright. The whole value of the record is\nthat nothing which is not a human can appear in it, so no worker can\nmanufacture the human half of its own approval.","operationId":"record_console_turn_v1_teams__team_id__console_turns_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsoleTurnRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Record Console Turn V1 Teams  Team Id  Console Turns Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/presence/stream":{"get":{"tags":["agent runtime"],"summary":"Stream Presence","description":"The rail's live wire — presence pushed, not polled.\n\nONE CONNECTION PER PERSON, NOT FIFTEEN REQUESTS A MINUTE PER TAB. The poll\nthis replaces was correct and expensive in the same breath: it asked \"is\nanything working\" every four seconds forever, and was still up to four\nseconds late with the answer. The browser keeps `GET /presence` as the\nopening read and the fallback when a stream cannot be held, so nothing here\nis load-bearing for correctness — it is the difference between a light that\nis right and a light that is right IMMEDIATELY.","operationId":"stream_presence_v1_teams__team_id__presence_stream_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/presence":{"get":{"tags":["agent runtime"],"summary":"Presence","description":"Which conversation surfaces are working right now — the rail's green light.\n\nONE READ FOR THE WHOLE RAIL. A chat stream tells the mounted conversation\nthat its desk is typing; it can never tell the six OTHER rows in the sidebar\nanything, because nothing is listening there. So presence is answered where\nit is actually known — the runs table — and the browser asks one question\nabout every place at once instead of opening six streams to find out.\n\nIT REPORTS WORK, NEVER AVAILABILITY. \"Online\" is true of a server every\nsecond of every day, which makes it furniture; `LIVE_RUN_STATES` is the desk\nmid-task, which is news. A run parked on a human is not in that set on\npurpose — see the store.","operationId":"presence_v1_teams__team_id__presence_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Presence V1 Teams  Team Id  Presence Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}":{"get":{"tags":["agent runtime"],"summary":"Get Run","operationId":"get_run_v1_teams__team_id__runs__run_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Run V1 Teams  Team Id  Runs  Run Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/screens/presses":{"get":{"tags":["agent runtime"],"summary":"List Screen Presses","description":"Every control on one generated screen that has been pressed, and the\nrun each press opened — one entry per key, the latest press winning.\n\nThis is what a page reads on mount so that a button whose run is done\ncomes back DONE, with its run id in hand for the report, instead of idle\nand ready to send the same thing again (owner, 2026-09-01: \"the status of\nthis button actually has been absolutely reset … absolutely unacceptable\").","operationId":"list_screen_presses_v1_teams__team_id__screens_presses_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"screen","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":240,"title":"Screen"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScreenPressesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/report":{"get":{"tags":["agent runtime"],"summary":"Run Report","description":"What this run did, as a checklist a settled button can open.\n\nRead entirely from what the run already wrote — its event log, the\ngoverned-action ledger and its closing message — so nothing here is a\nclaim the run did not make itself. See `runtime/run_report.py`.","operationId":"run_report_v1_teams__team_id__runs__run_id__report_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunReport"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sessions/{session_id}/transcript":{"get":{"tags":["agent runtime"],"summary":"List Session Transcript","operationId":"list_session_transcript_v1_teams__team_id__sessions__session_id__transcript_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"after","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"After"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Session Transcript V1 Teams  Team Id  Sessions  Session Id  Transcript Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/children":{"get":{"tags":["agent runtime"],"summary":"List Run Children","operationId":"list_run_children_v1_teams__team_id__runs__run_id__children_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Run Children V1 Teams  Team Id  Runs  Run Id  Children Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sandbox/jobs":{"get":{"tags":["agent runtime"],"summary":"List Sandbox Jobs","operationId":"list_sandbox_jobs_v1_teams__team_id__sandbox_jobs_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["queued","running","cancel_requested","succeeded","failed","cancelled","timed_out","uncertain"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Cursor"}},{"name":"include_output","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include Output"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Sandbox Jobs V1 Teams  Team Id  Sandbox Jobs Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sandbox/jobs/{sandbox_job_id}":{"get":{"tags":["agent runtime"],"summary":"Get Sandbox Job","operationId":"get_sandbox_job_v1_teams__team_id__sandbox_jobs__sandbox_job_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"sandbox_job_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sandbox Job Id"}},{"name":"attempt_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Attempt Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Sandbox Job V1 Teams  Team Id  Sandbox Jobs  Sandbox Job Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sandbox/jobs/{sandbox_job_id}/attempts":{"get":{"tags":["agent runtime"],"summary":"List Sandbox Job Attempts","operationId":"list_sandbox_job_attempts_v1_teams__team_id__sandbox_jobs__sandbox_job_id__attempts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"sandbox_job_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sandbox Job Id"}},{"name":"before_attempt_no","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":1},{"type":"null"}],"title":"Before Attempt No"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Sandbox Job Attempts V1 Teams  Team Id  Sandbox Jobs  Sandbox Job Id  Attempts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sandbox/jobs/{sandbox_job_id}/cancel":{"post":{"tags":["agent runtime"],"summary":"Cancel Sandbox Job","operationId":"cancel_sandbox_job_v1_teams__team_id__sandbox_jobs__sandbox_job_id__cancel_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"sandbox_job_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Sandbox Job Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Cancel Sandbox Job V1 Teams  Team Id  Sandbox Jobs  Sandbox Job Id  Cancel Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/provider-receipt":{"get":{"tags":["agent runtime"],"summary":"Get Run Provider Receipt","description":"The full harness receipt behind one run, verified by hash.\n\n`provider_evidence.receipt_path` is a state-root-relative pointer; this\nroute resolves it inside the writing provider's control root only, so a\nforged path can never read outside it.\n\nWHICH root is the whole bug this resolves. The pointer is stored as\n`relative_to(provider.state_root)`, and there is more than one such root:\nthe durable lane writes under `worker-control`, the delegate lane under\n`pi-control`. This route hardcoded the first, so every run whose\n`provider` was `pi` 404'd with \"receipt is not available\" even though its\nreceipt was on disk one directory over. The registry knows each provider's\nroot, and the run records which provider wrote it — so resolve the pointer\nagainst the root of the process that WROTE it rather than against a guess.","operationId":"get_run_provider_receipt_v1_teams__team_id__runs__run_id__provider_receipt_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Run Provider Receipt V1 Teams  Team Id  Runs  Run Id  Provider Receipt Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/events":{"get":{"tags":["agent runtime"],"summary":"List Run Events","operationId":"list_run_events_v1_teams__team_id__runs__run_id__events_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"After"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Run Events V1 Teams  Team Id  Runs  Run Id  Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/stream":{"get":{"tags":["agent runtime"],"summary":"Stream Run","operationId":"stream_run_v1_teams__team_id__runs__run_id__stream_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"After"}},{"name":"Last-Event-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last-Event-Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/notes":{"post":{"tags":["agent runtime"],"summary":"Append Run Note","description":"Write one owner-readable progress line into this run's public log.\n\nTHE SAME GATE AS THE OTHER AGENT-FACING VERBS, and for the same reason: a\nnote is a claim about what a run is doing, so only that run may make it.\n`_require_agent_conversation` establishes the caller is an agent carrying a\nrun; the path then has to name that same run, because a log a second run\ncan write into is a log nobody can trust to describe the first.\n\nIt lands as an ordinary `work.note` run event, so it is readable at\n`GET /runs/{run_id}/events` and live on `GET /runs/{run_id}/stream` with no\nnew transport at all.","operationId":"append_run_note_v1_teams__team_id__runs__run_id__notes_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkNoteRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Append Run Note V1 Teams  Team Id  Runs  Run Id  Notes Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/cancel":{"post":{"tags":["agent runtime"],"summary":"Cancel Run","operationId":"cancel_run_v1_teams__team_id__runs__run_id__cancel_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelRunRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Cancel Run V1 Teams  Team Id  Runs  Run Id  Cancel Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/cancellations/{cancellation_id}":{"get":{"tags":["agent runtime"],"summary":"Get Cancellation Receipt","operationId":"get_cancellation_receipt_v1_teams__team_id__cancellations__cancellation_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"cancellation_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Cancellation Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Cancellation Receipt V1 Teams  Team Id  Cancellations  Cancellation Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/runs/{run_id}/goal":{"patch":{"tags":["agent runtime"],"summary":"Update Goal","operationId":"update_goal_v1_teams__team_id__runs__run_id__goal_patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoalUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Goal V1 Teams  Team Id  Runs  Run Id  Goal Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/interactions":{"get":{"tags":["agent interactions"],"summary":"List Interactions","operationId":"list_interactions_v1_teams__team_id__interactions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Interactions V1 Teams  Team Id  Interactions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/actions/{action_id}":{"get":{"tags":["agent interactions"],"summary":"Read Action","description":"Read ONE governed action: what it is, where it stands, what it produced.\n\nThe one read-back for every effect. It replaces a per-domain status route\nfor each new capability — a shape that made \"did my thing happen?\" a\ndifferent question depending on what the thing was.","operationId":"read_action_v1_teams__team_id__actions__action_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"action_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Action V1 Teams  Team Id  Actions  Action Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/actions/{action_id}/decision":{"post":{"tags":["agent interactions"],"summary":"Decide Action","operationId":"decide_action_v1_teams__team_id__actions__action_id__decision_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"action_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionDecisionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Decide Action V1 Teams  Team Id  Actions  Action Id  Decision Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/actions/{action_id}/reconcile":{"post":{"tags":["agent interactions"],"summary":"Reconcile Action","description":"Queue a read-only provider/native state reconciliation.","operationId":"reconcile_action_v1_teams__team_id__actions__action_id__reconcile_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"action_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Reconcile Action V1 Teams  Team Id  Actions  Action Id  Reconcile Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/interactions/{interaction_id}/answer":{"post":{"tags":["agent interactions"],"summary":"Answer Question","operationId":"answer_question_v1_teams__team_id__interactions__interaction_id__answer_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"interaction_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Interaction Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuestionAnswerRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Answer Question V1 Teams  Team Id  Interactions  Interaction Id  Answer Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/interactions/{interaction_id}/respond":{"post":{"tags":["agent interactions"],"summary":"Respond To Interaction","description":"Resolve a human checkpoint of ANY kind through one verb.\n\nThe interaction row's ``kind`` decides what resolving it means; the\ncaller never has to pick between the kind-specific endpoints, which\nremain for callers that hold typed receipts.","operationId":"respond_to_interaction_v1_teams__team_id__interactions__interaction_id__respond_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"interaction_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Interaction Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InteractionResponseRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Respond To Interaction V1 Teams  Team Id  Interactions  Interaction Id  Respond Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts":{"post":{"tags":["artifacts"],"summary":"Create Artifact","operationId":"create_artifact_v1_teams__team_id__artifacts_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateArtifactRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Artifact V1 Teams  Team Id  Artifacts Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["artifacts"],"summary":"List Artifacts","operationId":"list_artifacts_v1_teams__team_id__artifacts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"}},{"name":"source_execution_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Execution Type"}},{"name":"source_execution_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Source Execution Id"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Artifacts V1 Teams  Team Id  Artifacts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/reconcile":{"post":{"tags":["artifacts"],"summary":"Reconcile Artifacts","operationId":"reconcile_artifacts_v1_teams__team_id__artifacts_reconcile_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReconcileArtifactsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Reconcile Artifacts V1 Teams  Team Id  Artifacts Reconcile Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/{artifact_id}":{"get":{"tags":["artifacts"],"summary":"Get Artifact","operationId":"get_artifact_v1_teams__team_id__artifacts__artifact_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Artifact Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Artifact V1 Teams  Team Id  Artifacts  Artifact Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/{artifact_id}/upload-target":{"post":{"tags":["artifacts"],"summary":"Issue Upload Target","operationId":"issue_upload_target_v1_teams__team_id__artifacts__artifact_id__upload_target_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Artifact Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Issue Upload Target V1 Teams  Team Id  Artifacts  Artifact Id  Upload Target Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/{artifact_id}/complete":{"post":{"tags":["artifacts"],"summary":"Complete Upload","operationId":"complete_upload_v1_teams__team_id__artifacts__artifact_id__complete_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Artifact Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompleteUploadRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Complete Upload V1 Teams  Team Id  Artifacts  Artifact Id  Complete Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/{artifact_id}/download-url":{"post":{"tags":["artifacts"],"summary":"Issue Download Url","operationId":"issue_download_url_v1_teams__team_id__artifacts__artifact_id__download_url_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Artifact Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Issue Download Url V1 Teams  Team Id  Artifacts  Artifact Id  Download Url Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/{artifact_id}/delete":{"post":{"tags":["artifacts"],"summary":"Delete Artifact","operationId":"delete_artifact_v1_teams__team_id__artifacts__artifact_id__delete_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Artifact Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteArtifactRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Delete Artifact V1 Teams  Team Id  Artifacts  Artifact Id  Delete Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/generate":{"post":{"tags":["artifacts"],"summary":"Generate Image","description":"Make a new image from a prompt and keep it as an artifact.\n\nThe bytes land in the same store as a customer's photo, which is what\nmakes them usable: an id to attach or file, signed access for the bytes,\nand the automatic vision readback that lets a text-only lane know what\nthe picture actually shows.","operationId":"generate_image_v1_teams__team_id__artifacts_generate_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateImageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Generate Image V1 Teams  Team Id  Artifacts Generate Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/explain-picture":{"post":{"tags":["artifacts"],"summary":"Explain Picture","description":"Draw one explanation, in about five seconds, and keep it as an artifact.\n\nSeparate from `/generate` because it is a different job with a different\nmodel: `/generate` makes photographs and scenes, this makes the one picture\nthat answers \"what is this and why is it my problem\". The house style comes\nfrom a reference image the caller never sees, so every explainer in the\nproduct looks like a sibling of the last one.\n\nNOTHING IS REUSED. Each call draws a new picture carrying this shop's own\nname — a cached explainer is a stock illustration, and being about them is\nthe only reason anybody looks twice.","operationId":"explain_picture_v1_teams__team_id__artifacts_explain_picture_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExplainPictureRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Explain Picture V1 Teams  Team Id  Artifacts Explain Picture Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/edit-image":{"post":{"tags":["artifacts"],"summary":"Edit Image","description":"Transform stored image(s) by a prompt into a NEW artifact.\n\nThe source is never touched — artifacts are immutable, and an edit that\noverwrote its original would destroy the evidence it was derived from.\nThe new row records what it came from, so the chain stays readable.","operationId":"edit_image_v1_teams__team_id__artifacts_edit_image_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EditImageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Edit Image V1 Teams  Team Id  Artifacts Edit Image Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/{artifact_id}/describe":{"post":{"tags":["artifacts"],"summary":"Describe Artifact","description":"Vision-read an image artifact: cached description, or a fresh pass.","operationId":"describe_artifact_v1_teams__team_id__artifacts__artifact_id__describe_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Artifact Id"}},{"name":"refresh","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Refresh"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Describe Artifact V1 Teams  Team Id  Artifacts  Artifact Id  Describe Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/artifact-content/{token}":{"get":{"tags":["artifacts"],"summary":"Download Content","operationId":"download_content_artifact_content__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["artifacts"],"summary":"Upload Content","operationId":"upload_content_artifact_content__token__put","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Upload Content Artifact Content  Token  Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/domains":{"get":{"tags":["domains"],"summary":"List Domains","description":"What this team actually owns, and whether each one carries mail yet.\n\nBuying a domain and then having no way to ask what you own is how an agent\nends up re-buying a name it already has. Mail status is folded in because\n\"do we own it\" and \"can it receive email\" are one question to whoever is\ntrying to get the business online.","operationId":"list_domains_v1_teams__team_id__domains_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Domains V1 Teams  Team Id  Domains Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/domains/readiness":{"get":{"tags":["domains"],"summary":"Domain Readiness","operationId":"domain_readiness_v1_teams__team_id__domains_readiness_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Domain Readiness V1 Teams  Team Id  Domains Readiness Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/domains/search":{"get":{"tags":["domains"],"summary":"Search Domains","operationId":"search_domains_v1_teams__team_id__domains_search_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"query","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"title":"Query"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":20,"minimum":1,"default":5,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Search Domains V1 Teams  Team Id  Domains Search Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/domains/purchases":{"post":{"tags":["domains"],"summary":"Propose Domain Purchase","description":"Freeze one exact non-refundable purchase behind normal action policy.","operationId":"propose_domain_purchase_v1_teams__team_id__domains_purchases_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PurchaseDomainRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Propose Domain Purchase V1 Teams  Team Id  Domains Purchases Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/domains/purchases/{action_id}":{"get":{"tags":["domains"],"summary":"Inspect Domain Purchase","operationId":"inspect_domain_purchase_v1_teams__team_id__domains_purchases__action_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"action_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Inspect Domain Purchase V1 Teams  Team Id  Domains Purchases  Action Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes/readiness":{"get":{"tags":["inboxes"],"summary":"Inbox Readiness","description":"Read whether a custom-domain inbox can be opened before spending money.","operationId":"inbox_readiness_v1_teams__team_id__inboxes_readiness_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Inbox Readiness V1 Teams  Team Id  Inboxes Readiness Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes/retirements/preview":{"get":{"tags":["inboxes"],"summary":"Preview Inbox Retirement","description":"Read ownership, count, and blockers for one exact named inbox.","operationId":"preview_inbox_retirement_v1_teams__team_id__inboxes_retirements_preview_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"address","in":"query","required":true,"schema":{"type":"string","minLength":3,"maxLength":320,"title":"Address"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Preview Inbox Retirement V1 Teams  Team Id  Inboxes Retirements Preview Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes/retirements":{"post":{"tags":["inboxes"],"summary":"Retire Inbox","description":"Propose permanent retirement; an active owner must approve the hold.","operationId":"retire_inbox_v1_teams__team_id__inboxes_retirements_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetireInboxRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Retire Inbox V1 Teams  Team Id  Inboxes Retirements Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes":{"post":{"tags":["inboxes"],"summary":"Open Inbox","description":"Take a domain this team owns all the way to a live address.\n\nOne call covers claiming the domain for mail, writing the verification\nrecords into the zone Stormy controls, and opening the address. It returns\nthe same receipt whether it finished or stopped — with the exact blocker\nwhen it stopped, never a half-answer that reads like success.","operationId":"open_inbox_v1_teams__team_id__inboxes_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenInboxRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Open Inbox V1 Teams  Team Id  Inboxes Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["inboxes"],"summary":"List Inboxes","operationId":"list_inboxes_v1_teams__team_id__inboxes_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Inboxes V1 Teams  Team Id  Inboxes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes/agent":{"post":{"tags":["inboxes"],"summary":"Open Agent Inbox","description":"Open the address this team's own agent is reachable at.\n\nTakes no username: on a shared platform domain a chosen name is a way to\nreceive another team's mail, so the address is derived from the team.","operationId":"open_agent_inbox_v1_teams__team_id__inboxes_agent_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Open Agent Inbox V1 Teams  Team Id  Inboxes Agent Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes/{inbox_id}/send":{"post":{"tags":["inboxes"],"summary":"Send Message","description":"Send from one of this team's addresses. Reaches a real person.","operationId":"send_message_v1_teams__team_id__inboxes__inbox_id__send_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"inbox_id","in":"path","required":true,"schema":{"type":"string","title":"Inbox Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Message V1 Teams  Team Id  Inboxes  Inbox Id  Send Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes/{inbox_id}/messages/{message_id}/reply":{"post":{"tags":["inboxes"],"summary":"Reply To Message","description":"Answer one message in the thread it already belongs to.\n\nTHE VERB THAT WAS MISSING, and its absence was expensive. Without it the\nonly way out of this router was `/{inbox_id}/send`, so answering a customer\nmeant composing a fresh email with \"Re:\" glued to the subject — a string,\nnot a thread. The agent knew what it wanted and could not find it: on\n2026-08-09 it POSTed `/inboxes/<addr>/reply` three times for a 404, then\nhand-rolled a raw `urllib` request to the send route instead.\n\n`message_id` is the provider id of the message being answered — the one\n`GET /{inbox_id}/messages` returns, and the one an inbound-email turn is\nhanded in its own prompt. The provider writes In-Reply-To and References\nfrom it, which is why this threads and a send never can.","operationId":"reply_to_message_v1_teams__team_id__inboxes__inbox_id__messages__message_id__reply_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"inbox_id","in":"path","required":true,"schema":{"type":"string","title":"Inbox Id"}},{"name":"message_id","in":"path","required":true,"schema":{"type":"string","title":"Message Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplyMessageRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Reply To Message V1 Teams  Team Id  Inboxes  Inbox Id  Messages  Message Id  Reply Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/inboxes/{inbox_id}/messages":{"get":{"tags":["inboxes"],"summary":"List Messages","operationId":"list_messages_v1_teams__team_id__inboxes__inbox_id__messages_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"inbox_id","in":"path","required":true,"schema":{"type":"string","title":"Inbox Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Messages V1 Teams  Team Id  Inboxes  Inbox Id  Messages Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/readiness":{"get":{"tags":["email warmup"],"summary":"Readiness","operationId":"readiness_v1_teams__team_id__email_warmup_readiness_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Connection Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Readiness V1 Teams  Team Id  Email Warmup Readiness Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/connect":{"post":{"tags":["email warmup"],"summary":"Connect","description":"Initialize Stormy's managed email warm-up service for this team.","operationId":"connect_v1_teams__team_id__email_warmup_connect_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Connect V1 Teams  Team Id  Email Warmup Connect Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/accounts":{"get":{"tags":["email warmup"],"summary":"Accounts","operationId":"accounts_v1_teams__team_id__email_warmup_accounts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Accounts V1 Teams  Team Id  Email Warmup Accounts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/accounts/{account_id}/health":{"get":{"tags":["email warmup"],"summary":"Account Health","operationId":"account_health_v1_teams__team_id__email_warmup_accounts__account_id__health_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"account_id","in":"path","required":true,"schema":{"type":"integer","title":"Account Id"}},{"name":"connection_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Account Health V1 Teams  Team Id  Email Warmup Accounts  Account Id  Health Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/inboxes/attach":{"post":{"tags":["email warmup"],"summary":"Attach Inbox","operationId":"attach_inbox_v1_teams__team_id__email_warmup_inboxes_attach_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttachInboxRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Attach Inbox V1 Teams  Team Id  Email Warmup Inboxes Attach Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/accounts/{account_id}/settings":{"post":{"tags":["email warmup"],"summary":"Update Warmup","operationId":"update_warmup_v1_teams__team_id__email_warmup_accounts__account_id__settings_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"account_id","in":"path","required":true,"schema":{"type":"integer","title":"Account Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWarmupRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Warmup V1 Teams  Team Id  Email Warmup Accounts  Account Id  Settings Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/infrastructure/vendors":{"get":{"tags":["email warmup"],"summary":"Vendors","operationId":"vendors_v1_teams__team_id__email_warmup_infrastructure_vendors_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Vendors V1 Teams  Team Id  Email Warmup Infrastructure Vendors Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email-warmup/infrastructure/domains/search":{"get":{"tags":["email warmup"],"summary":"Search Domains","operationId":"search_domains_v1_teams__team_id__email_warmup_infrastructure_domains_search_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"vendor_id","in":"query","required":true,"schema":{"type":"integer","minimum":1,"title":"Vendor Id"}},{"name":"domain_name","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"title":"Domain Name"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Search Domains V1 Teams  Team Id  Email Warmup Infrastructure Domains Search Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/work-items":{"get":{"tags":["operator"],"summary":"List Work Items","operationId":"list_work_items_v1_teams__team_id__work_items_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["open","in_progress","waiting","blocked","completed","cancelled"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Kind"}},{"name":"assigned_principal_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Assigned Principal Id"}},{"name":"requires_human","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Requires Human"}},{"name":"parent_work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Parent Work Item Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Work Items V1 Teams  Team Id  Work Items Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["operator"],"summary":"Create Work Item","operationId":"create_work_item_v1_teams__team_id__work_items_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkItemRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Work Item V1 Teams  Team Id  Work Items Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/work-items/{work_item_id}":{"get":{"tags":["operator"],"summary":"Get Work Item","operationId":"get_work_item_v1_teams__team_id__work_items__work_item_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Work Item Id"}},{"name":"event_limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Event Limit"}},{"name":"related_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Related Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Work Item V1 Teams  Team Id  Work Items  Work Item Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["operator"],"summary":"Update Work Item","operationId":"update_work_item_v1_teams__team_id__work_items__work_item_id__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"work_item_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Work Item Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkItemRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Work Item V1 Teams  Team Id  Work Items  Work Item Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/executions":{"get":{"tags":["operator"],"summary":"List Executions","operationId":"list_executions_v1_teams__team_id__executions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"execution_type","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Execution Type"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Executions V1 Teams  Team Id  Executions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connections":{"get":{"tags":["operator"],"summary":"List Connections","operationId":"list_connections_v1_teams__team_id__connections_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["connected","degraded","disconnected","revoked"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Kind"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Provider"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Connections V1 Teams  Team Id  Connections Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["operator"],"summary":"Create Connection","operationId":"create_connection_v1_teams__team_id__connections_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateConnectionRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Connection V1 Teams  Team Id  Connections Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connections/{connection_id}":{"patch":{"tags":["operator"],"summary":"Update Connection","operationId":"update_connection_v1_teams__team_id__connections__connection_id__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateConnectionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Connection V1 Teams  Team Id  Connections  Connection Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connections/{connection_id}/health":{"post":{"tags":["operator"],"summary":"Update Connection Health","operationId":"update_connection_health_v1_teams__team_id__connections__connection_id__health_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateConnectionHealthRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Connection Health V1 Teams  Team Id  Connections  Connection Id  Health Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines":{"post":{"tags":["operator"],"summary":"Create Phone Line","operationId":"create_phone_line_v1_teams__team_id__phone_lines_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePhoneLineRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Phone Line V1 Teams  Team Id  Phone Lines Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}":{"patch":{"tags":["operator"],"summary":"Update Phone Line","operationId":"update_phone_line_v1_teams__team_id__phone_lines__line_id__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePhoneLineRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Phone Line V1 Teams  Team Id  Phone Lines  Line Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["operator"],"summary":"Get Phone Line","description":"Show one line with its operational projection and connection health.\n\nThe raw config never crosses this boundary; recording custody detail lives\nat GET /v1/teams/{team_id}/phone/lines/{line_id}/recording.","operationId":"get_phone_line_v1_teams__team_id__phone_lines__line_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Phone Line V1 Teams  Team Id  Phone Lines  Line Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/reactions":{"post":{"tags":["operator"],"summary":"React To Number","description":"Tapback the message this person just sent — by NUMBER, not by handle.\n\nThe acknowledgement that costs the reader nothing where a whole sentence\nwould be noise. Leave `message_id` out and it lands on their latest\nmessage, which is what \"react to what Bob just sent\" means.","operationId":"react_to_number_v1_teams__team_id__phone_reactions_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactToNumberRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response React To Number V1 Teams  Team Id  Phone Reactions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/read":{"post":{"tags":["operator"],"summary":"Mark Thread Read","description":"Turn on this person's \"Read\" receipt — the \"I'm on it\" with no words.\n\nWhat a human does the second they pick the thread up. Nothing else in the\nproduct does it, so until now every blue thread sat permanently Delivered\nwhile the desk was actively working the request.","operationId":"mark_thread_read_v1_teams__team_id__phone_read_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkThreadReadRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Mark Thread Read V1 Teams  Team Id  Phone Read Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/imessage-check":{"get":{"tags":["operator"],"summary":"Check Imessage Reachability","description":"Is this handle reachable on iMessage? The device-mix check.\n\nRead-only and cheap: run a crew's numbers through it at onboarding and the\nshop's real blue/green split is a measurement instead of a guess.","operationId":"check_imessage_reachability_v1_teams__team_id__phone_lines__line_id__imessage_check_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"number","in":"query","required":true,"schema":{"type":"string","maxLength":20,"title":"Number"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Check Imessage Reachability V1 Teams  Team Id  Phone Lines  Line Id  Imessage Check Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/typing":{"post":{"tags":["operator"],"summary":"Send Typing Indicator","description":"Show the three dots on a blue thread — the tell that someone is there.","operationId":"send_typing_indicator_v1_teams__team_id__phone_lines__line_id__typing_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendTypingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Typing Indicator V1 Teams  Team Id  Phone Lines  Line Id  Typing Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/reactions":{"post":{"tags":["operator"],"summary":"Send Message Reaction","description":"Tapback one message. iMessage-only — a green thread rejects it.","operationId":"send_message_reaction_v1_teams__team_id__phone_lines__line_id__reactions_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Message Reaction V1 Teams  Team Id  Phone Lines  Line Id  Reactions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/number":{"put":{"tags":["operator"],"summary":"Rename Phone Line Number","description":"Point a line at a number the provider reissued for it.\n\nOwnership is proven against the provider before the row claims the number,\nand a blue line's forward is pushed again afterwards — the old number's\nforwarding receipt does not carry over.","operationId":"rename_phone_line_number_v1_teams__team_id__phone_lines__line_id__number_put","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RenamePhoneLineNumberRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Rename Phone Line Number V1 Teams  Team Id  Phone Lines  Line Id  Number Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/voice-twin":{"put":{"tags":["operator"],"summary":"Set Phone Line Voice Twin","description":"Name the line that answers this blue line's calls, and push the forward.\n\nONE verb for the whole link. The row and the provider are written together\nbecause either one alone is a number that rings nowhere.","operationId":"set_phone_line_voice_twin_v1_teams__team_id__phone_lines__line_id__voice_twin_put","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateVoiceTwinRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Set Phone Line Voice Twin V1 Teams  Team Id  Phone Lines  Line Id  Voice Twin Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/call-forwarding":{"get":{"tags":["operator"],"summary":"Get Phone Line Call Forwarding","description":"Where this blue number's calls actually ring, asked of Sendblue itself.\n\n`in_sync` is the one that matters: false means the row and the provider\ndisagree, so the number is answering somewhere nobody is watching.","operationId":"get_phone_line_call_forwarding_v1_teams__team_id__phone_lines__line_id__call_forwarding_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Phone Line Call Forwarding V1 Teams  Team Id  Phone Lines  Line Id  Call Forwarding Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["operator"],"summary":"Set Phone Line Call Forwarding","description":"Point the blue number at its voice twin — or at an explicit number.","operationId":"set_phone_line_call_forwarding_v1_teams__team_id__phone_lines__line_id__call_forwarding_put","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallForwardingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Set Phone Line Call Forwarding V1 Teams  Team Id  Phone Lines  Line Id  Call Forwarding Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["operator"],"summary":"Clear Phone Line Call Forwarding","description":"Stop forwarding. The blue number keeps texting and answers no calls.","operationId":"clear_phone_line_call_forwarding_v1_teams__team_id__phone_lines__line_id__call_forwarding_delete","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Clear Phone Line Call Forwarding V1 Teams  Team Id  Phone Lines  Line Id  Call Forwarding Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/recording":{"get":{"tags":["operator"],"summary":"Get Phone Line Recording","operationId":"get_phone_line_recording_v1_teams__team_id__phone_lines__line_id__recording_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Phone Line Recording V1 Teams  Team Id  Phone Lines  Line Id  Recording Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["operator"],"summary":"Update Phone Line Recording","operationId":"update_phone_line_recording_v1_teams__team_id__phone_lines__line_id__recording_patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePhoneRecordingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Phone Line Recording V1 Teams  Team Id  Phone Lines  Line Id  Recording Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/lines/{line_id}/shadow":{"get":{"tags":["operator"],"summary":"Get Phone Line Shadow Mode","operationId":"get_phone_line_shadow_mode_v1_teams__team_id__phone_lines__line_id__shadow_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Phone Line Shadow Mode V1 Teams  Team Id  Phone Lines  Line Id  Shadow Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["operator"],"summary":"Update Phone Line Shadow Mode","description":"Atomically select normal, forward-only, or proposed-learning behavior.","operationId":"update_phone_line_shadow_mode_v1_teams__team_id__phone_lines__line_id__shadow_patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePhoneShadowModeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Phone Line Shadow Mode V1 Teams  Team Id  Phone Lines  Line Id  Shadow Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/overview":{"get":{"tags":["operator"],"summary":"Phone Overview","operationId":"phone_overview_v1_teams__team_id__phone_overview_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Line Limit"}},{"name":"line_offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Line Offset"}},{"name":"call_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Call Limit"}},{"name":"call_offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Call Offset"}},{"name":"line_status","in":"query","required":false,"schema":{"anyOf":[{"enum":["provisioning","active","degraded","offline","uncertain","released"],"type":"string"},{"type":"null"}],"title":"Line Status"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Phone Overview V1 Teams  Team Id  Phone Overview Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/directory":{"get":{"tags":["operator"],"summary":"Phone Directory","description":"One E.164 → person map for phone surfaces.\n\nSources, in name priority order: canonical contacts (the identity graph),\nteam members, registered simulation counterparties, and the team's own\nlines. The `simulated` flag rides independently of the name so a simulated\nparty never masquerades as a real person (Lane E), and `line` marks numbers\nthe team itself owns.","operationId":"phone_directory_v1_teams__team_id__phone_directory_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Phone Directory V1 Teams  Team Id  Phone Directory Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/reach":{"get":{"tags":["operator"],"summary":"Phone Reach","description":"ONE person → every way to reach them, most relevant first.\n\n`whois` answers a number; `directory` answers the whole team. Neither\nanswers the question a run actually asks before it dials or writes: given\nthis person, which value do I use. Say who with any of the three keys a\nsurface already holds — a tree ref, a number, or a contact id — and the\nother two come back derived, so the answer does not depend on which door\nwas used.\n\nBoth spines are returned: what the desk WROTE in the tree and what the\nsystem OBSERVED in Postgres, deduped by value and each naming its sources.\nRead-only; a person with one unverified number is a result, not an error.","operationId":"phone_reach_v1_teams__team_id__phone_reach_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","maxLength":400,"default":"","title":"Ref"}},{"name":"number","in":"query","required":false,"schema":{"type":"string","maxLength":20,"default":"","title":"Number"}},{"name":"contact_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Contact Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Phone Reach V1 Teams  Team Id  Phone Reach Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/whois":{"get":{"tags":["operator"],"summary":"Phone Whois","description":"ONE number → who this is, front and back.\n\nBack: the canonical identity ladder (active membership → customer spine,\n``runtime.caller_authority``) plus line/simulation provenance and\nlast-activity receipts over SMS and calls.  Front: where this person\nlives in the team's authored tree, so a harness can open their folder.\nRead-only; an unknown caller is a result, never an error.","operationId":"phone_whois_v1_teams__team_id__phone_whois_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"number","in":"query","required":true,"schema":{"type":"string","maxLength":20,"title":"Number"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Phone Whois V1 Teams  Team Id  Phone Whois Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/media":{"get":{"tags":["operator"],"summary":"Phone Media","description":"Photos and files exchanged with one number, as OUR stored artifacts.\n\n`sms_thread` carries the carrier's media URL, which points at someone\nelse's bucket and expires. This answers with the custody row instead — the\nartifact id needed to file, describe, or attach the thing — newest first.","operationId":"phone_media_v1_teams__team_id__phone_media_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"number","in":"query","required":true,"schema":{"type":"string","maxLength":20,"title":"Number"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Phone Media V1 Teams  Team Id  Phone Media Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/artifacts/{artifact_id}/file-to-tree":{"post":{"tags":["operator"],"summary":"File Artifact To Tree","description":"File a stored artifact into the team tree as a POINTER, then commit it.\n\nThe bytes stay where ingest put them (R2). What lands in the repo is a\nsmall markdown file carrying custody — id, type, size, hash, storage ref —\nand, crucially, what the picture SHOWS, which is the only part a text-only\nagent downstream can read.\n\nOwner call 2026-08-09: the AGENT decides. A photo that matters to a\nrelationship gets filed; a blurry accidental one does not, and neither\nfills the repo. That is why this is a verb the harness calls and not a\nstep in the inbound path.","operationId":"file_artifact_to_tree_v1_teams__team_id__artifacts__artifact_id__file_to_tree_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Artifact Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileMediaToTreeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response File Artifact To Tree V1 Teams  Team Id  Artifacts  Artifact Id  File To Tree Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/brief":{"get":{"tags":["operator"],"summary":"Phone Relationship Brief","description":"One model-written brief of what is happening with this number.\n\nGathers the canonical evidence (resolved identity, SMS thread, recent\ncall receipts with transcript excerpts) and asks the brief model what\nactually matters.  The judgment is the prompt's, not a rule set's.","operationId":"phone_relationship_brief_v1_teams__team_id__phone_brief_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"number","in":"query","required":true,"schema":{"type":"string","maxLength":20,"title":"Number"}},{"name":"message_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":30,"title":"Message Limit"}},{"name":"call_limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"default":10,"title":"Call Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Phone Relationship Brief V1 Teams  Team Id  Phone Brief Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/calls":{"get":{"tags":["operator"],"summary":"List Phone Calls","operationId":"list_phone_calls_v1_teams__team_id__phone_calls_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["submitting","queued","ringing","in_progress","completed","busy","no_answer","failed","cancelled","uncertain"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"direction","in":"query","required":false,"schema":{"anyOf":[{"enum":["inbound","outbound"],"type":"string"},{"type":"null"}],"title":"Direction"}},{"name":"line_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Line Id"}},{"name":"remote_number","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Remote Number"}},{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"}},{"name":"contact_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Contact Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Phone Calls V1 Teams  Team Id  Phone Calls Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["operator"],"summary":"Start Phone Call","description":"Start one outbound call through the governed ``phone.call.start`` action.\n\nThe same governance the durable agent's action tool runs — risk-tiered\npolicy decision plus the action + effect-receipt spine, never a provider\nbypass. A routine call is autonomous and executes inline (a simulation\nline runs the whole provider-free conversation; a carrier line submits\nthe originate and returns its live status). A policy HOLD returns an\napproval receipt; a DENY returns the refusal. Poll the canonical call by\nid for progress and the transcript.","operationId":"start_phone_call_v1_teams__team_id__phone_calls_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartPhoneCallRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Start Phone Call V1 Teams  Team Id  Phone Calls Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/calls/{call_id}":{"get":{"tags":["operator"],"summary":"Get Phone Call","operationId":"get_phone_call_v1_teams__team_id__phone_calls__call_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"event_limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Event Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Phone Call V1 Teams  Team Id  Phone Calls  Call Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/calls/{call_id}/transcribe":{"post":{"tags":["operator"],"summary":"Transcribe Phone Call","operationId":"transcribe_phone_call_v1_teams__team_id__phone_calls__call_id__transcribe_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Transcribe Phone Call V1 Teams  Team Id  Phone Calls  Call Id  Transcribe Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/calls/{call_id}/inspect":{"get":{"tags":["operator"],"summary":"Inspect Phone Call","description":"ONE parseable bundle for a call's media and durable session pointer.\n\nThe owner's \"everything about this call in one command\" surface backing\n``darwin phone inspect``. Read-only aggregation over the durable evidence:\nthe canonical call row and its ``agent_session_id``, recording/transcript/\nlog-trace artifacts (with a signed download for the recording), transport\nevents, and voice turns with per-turn gap seconds. Backend logs are ephemeral,\nso the durable\n``call_log_trace`` artifact is the log evidence; ``log_investigation``\nalso hands back the exact live grep + the full ``call_eval_report`` bundle\ncommand for a fresh dig.","operationId":"inspect_phone_call_v1_teams__team_id__phone_calls__call_id__inspect_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"event_limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":500,"title":"Event Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Inspect Phone Call V1 Teams  Team Id  Phone Calls  Call Id  Inspect Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/calls/{call_id}/reconcile":{"post":{"tags":["operator"],"summary":"Reconcile Phone Call","description":"Read the exact provider call once and project its canonical status.","operationId":"reconcile_phone_call_v1_teams__team_id__phone_calls__call_id__reconcile_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Reconcile Phone Call V1 Teams  Team Id  Phone Calls  Call Id  Reconcile Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sms/messages":{"get":{"tags":["operator"],"summary":"List Sms Messages","operationId":"list_sms_messages_v1_teams__team_id__sms_messages_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"channel","in":"query","required":false,"schema":{"anyOf":[{"enum":["sms","whatsapp"],"type":"string"},{"type":"null"}],"title":"Channel"}},{"name":"direction","in":"query","required":false,"schema":{"anyOf":[{"enum":["inbound","outbound"],"type":"string"},{"type":"null"}],"title":"Direction"}},{"name":"delivery_status","in":"query","required":false,"schema":{"anyOf":[{"enum":["received","queued","sending","delivered","failed","cancelled","uncertain"],"type":"string"},{"type":"null"}],"title":"Delivery Status"}},{"name":"contact_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Contact Id"}},{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"}},{"name":"line_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Line Id"}},{"name":"number","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Number"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Sms Messages V1 Teams  Team Id  Sms Messages Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["operator"],"summary":"Send Sms Message","description":"Send one outbound SMS through the governed ``sms.message.send`` action.\n\nThis is the CLI / voice-delegate send path. It runs the SAME governance the\ndurable agent's action tool runs — the risk-tiered policy decision plus the\naction + effect-receipt spine — never a Twilio-direct bypass. A routine send\n(``external_message``) is autonomous by default, so it materializes and\ndelivers inline and returns the canonical message id + delivery status. A\npolicy that HOLDS the send returns an approval receipt (never a silent\nfailure); a DENY returns the refusal.","operationId":"send_sms_message_v1_teams__team_id__sms_messages_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendSmsRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Sms Message V1 Teams  Team Id  Sms Messages Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/sms/messages/{message_id}":{"get":{"tags":["operator"],"summary":"Get Sms Message","operationId":"get_sms_message_v1_teams__team_id__sms_messages__message_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"message_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Message Id"}},{"name":"event_limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Event Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Sms Message V1 Teams  Team Id  Sms Messages  Message Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email/accounts":{"post":{"tags":["operator"],"summary":"Create Email Account","operationId":"create_email_account_v1_teams__team_id__email_accounts_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEmailAccountRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Email Account V1 Teams  Team Id  Email Accounts Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["operator"],"summary":"List Email Accounts","operationId":"list_email_accounts_v1_teams__team_id__email_accounts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["connected","syncing","degraded","disconnected","revoked"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Provider"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Email Accounts V1 Teams  Team Id  Email Accounts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email/accounts/{account_id}":{"patch":{"tags":["operator"],"summary":"Update Email Account","operationId":"update_email_account_v1_teams__team_id__email_accounts__account_id__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"account_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Account Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateEmailAccountRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Email Account V1 Teams  Team Id  Email Accounts  Account Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["operator"],"summary":"Get Email Account","description":"Show one account's identity and sync health.\n\nThe raw config and sync_cursor stay server-side; full sync machinery state\nlives at GET /v1/teams/{team_id}/email/accounts/{account_id}/gmail-sync.","operationId":"get_email_account_v1_teams__team_id__email_accounts__account_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"account_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Account Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Email Account V1 Teams  Team Id  Email Accounts  Account Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email/overview":{"get":{"tags":["operator"],"summary":"Email Overview","operationId":"email_overview_v1_teams__team_id__email_overview_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"account_status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["connected","syncing","degraded","disconnected","revoked"],"type":"string"}},{"type":"null"}],"title":"Account Status"}},{"name":"account_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Account Limit"}},{"name":"account_offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Account Offset"}},{"name":"thread_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Thread Limit"}},{"name":"thread_offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Thread Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Email Overview V1 Teams  Team Id  Email Overview Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email/threads":{"get":{"tags":["operator"],"summary":"List Email Threads","operationId":"list_email_threads_v1_teams__team_id__email_threads_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["open","waiting","resolved","archived"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"account_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Account Id"}},{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"}},{"name":"contact_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Contact Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Email Threads V1 Teams  Team Id  Email Threads Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email/threads/{thread_id}":{"get":{"tags":["operator"],"summary":"Get Email Thread","operationId":"get_email_thread_v1_teams__team_id__email_threads__thread_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"thread_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Thread Id"}},{"name":"message_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Message Limit"}},{"name":"event_limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Event Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Email Thread V1 Teams  Team Id  Email Threads  Thread Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email/messages":{"get":{"tags":["operator"],"summary":"List Email Messages","description":"Message headers across the team's mail — who wrote, which way, when.\n\nA thread row carries a subject, a snippet and a timestamp; it cannot say\nwho is on the other end or how many messages it holds. Without this, a mail\nlist has to open all N threads to draw one screen, so the operator surface\nreads this once and groups client-side exactly the way it does with calls.\n\nBodies are deliberately absent: their lengths answer \"how much did it\ncontain\", and the reader that needs the words asks for the single thread it\nis showing. Narrower than the thread read, never wider.","operationId":"list_email_messages_v1_teams__team_id__email_messages_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"thread_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Thread Id"}},{"name":"account_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Account Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Email Messages V1 Teams  Team Id  Email Messages Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/schedules":{"get":{"tags":["operator"],"summary":"List Schedules","operationId":"list_schedules_v1_teams__team_id__schedules_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["active","paused","cancelled"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Kind"}},{"name":"work_item_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Schedules V1 Teams  Team Id  Schedules Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["schedules"],"summary":"Create Schedule","operationId":"create_schedule_v1_teams__team_id__schedules_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateScheduleRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Schedule V1 Teams  Team Id  Schedules Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/geo/business/suggest":{"get":{"tags":["geo"],"summary":"Business Suggest","description":"Typeahead for \"what is your business called\" — one keystroke, five rows.\n\nThe rows are a QUESTION, never a conclusion: a person confirms which one is\ntheirs before anything is pulled or connected.","operationId":"business_suggest_v1_teams__team_id__geo_business_suggest_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"query","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"title":"Query"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10,"minimum":1,"default":5,"title":"Limit"}},{"name":"region","in":"query","required":false,"schema":{"type":"string","maxLength":2,"default":"us","title":"Region"}},{"name":"near_lat","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":90,"minimum":-90},{"type":"null"}],"title":"Near Lat"}},{"name":"near_lng","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":180,"minimum":-180},{"type":"null"}],"title":"Near Lng"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["google","simulation"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"visual","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Visual"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Business Suggest V1 Teams  Team Id  Geo Business Suggest Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/geo/business/search":{"get":{"tags":["geo"],"summary":"Business Search","description":"Full-text business search — the same candidate rows, carrying ratings.","operationId":"business_search_v1_teams__team_id__geo_business_search_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"query","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":200,"title":"Query"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10,"minimum":1,"default":5,"title":"Limit"}},{"name":"near_lat","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":90,"minimum":-90},{"type":"null"}],"title":"Near Lat"}},{"name":"near_lng","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":180,"minimum":-180},{"type":"null"}],"title":"Near Lng"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["google","simulation"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Business Search V1 Teams  Team Id  Geo Business Search Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/geo/business/profile":{"get":{"tags":["geo"],"summary":"Business Profile","description":"Everything Google holds on ONE confirmed business, reviews included.\n\nHours answer the after-hours question with a fact instead of a guess, and\nthe review text is the only unfiltered account of how this shop is\nexperienced — both are evidence stamped with the provider that produced\nthem, never a promise made to a customer.","operationId":"business_profile_v1_teams__team_id__geo_business_profile_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"place_id","in":"query","required":false,"schema":{"type":"string","maxLength":400,"default":"","title":"Place Id"}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200,"default":"","title":"Query"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["google","simulation"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Business Profile V1 Teams  Team Id  Geo Business Profile Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/geo/map.png":{"get":{"tags":["geo"],"summary":"Business Map Image","description":"One place, drawn by Google, fetched by us — no key in the browser.\n\nThe Maps JavaScript API needs a key IN THE PAGE, which is why\n`/v1/maps/browser-key` exists and why it refuses to answer in production:\nour server key is unrestricted and that route is public, so serving it would\npublish the project. Minting a referrer-restricted browser key is a job in\nthe Google console, not a code change, and until somebody does it a\nclient-rendered map cannot draw on a deployed build.\n\nThis route needs none of that. It is authenticated, it renders server-side,\nand the key stays in the process — so the \"is this your shop?\" map works in\nproduction today. It is a picture, not a map you can drag; for a\nconfirmation that is the right trade, and an interactive map can arrive\nlater behind a proper browser key without this changing.","operationId":"business_map_image_v1_teams__team_id__geo_map_png_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"lat","in":"query","required":true,"schema":{"type":"number","maximum":90,"minimum":-90,"title":"Lat"}},{"name":"lng","in":"query","required":true,"schema":{"type":"number","maximum":180,"minimum":-180,"title":"Lng"}},{"name":"zoom","in":"query","required":false,"schema":{"type":"integer","maximum":21,"minimum":1,"default":16,"title":"Zoom"}},{"name":"width","in":"query","required":false,"schema":{"type":"integer","maximum":640,"minimum":64,"default":640,"title":"Width"}},{"name":"height","in":"query","required":false,"schema":{"type":"integer","maximum":640,"minimum":64,"default":360,"title":"Height"}},{"name":"maptype","in":"query","required":false,"schema":{"type":"string","maxLength":16,"default":"roadmap","title":"Maptype"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/geo/photo.jpg":{"get":{"tags":["geo"],"summary":"Business Photo","description":"The storefront, proxied — Google's photo bytes without Google's key.\n\nPlaces hands back a photo RESOURCE NAME, not a URL, and the bytes live\nbehind a keyed endpoint. Putting that URL in a page would publish the key\nfor the same reason the JS map would, so we fetch it here.","operationId":"business_photo_v1_teams__team_id__geo_photo_jpg_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"name","in":"query","required":true,"schema":{"type":"string","minLength":8,"maxLength":2000,"title":"Name"}},{"name":"width","in":"query","required":false,"schema":{"type":"integer","maximum":1600,"minimum":64,"default":900,"title":"Width"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/geo/drive-time":{"get":{"tags":["geo"],"summary":"Drive Time","description":"Drive time between two raw addresses.\n\nSites live as Markdown in the authored team tree, so both endpoints arrive\nas address strings and are geocoded ad hoc for this read — nothing is\npersisted, and the provider stamp rides every receipt.","operationId":"drive_time_v1_teams__team_id__geo_drive_time_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"origin","in":"query","required":true,"schema":{"type":"string","minLength":3,"maxLength":500,"title":"Origin"}},{"name":"destination","in":"query","required":true,"schema":{"type":"string","minLength":3,"maxLength":500,"title":"Destination"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["google","simulation"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Drive Time V1 Teams  Team Id  Geo Drive Time Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/maps/browser-key":{"get":{"tags":["geo"],"summary":"Maps Browser Key","description":"The key the Maps JavaScript API is loaded with, served at runtime.\n\nNOT baked into the frontend bundle, for two reasons that both cost real\nmoney. A bundled key cannot be rotated without a deploy, so a leaked one\nstays leaked for as long as the release does; and it is identical across\nevery environment, so a key scraped off the marketing site bills the same\nproject as the product.\n\nThe value is USELESS to a scraper if it is restricted correctly: HTTP\nreferrers we own, and the Maps JavaScript API alone. Configure that in the\nCloud console — this endpoint cannot enforce it and does not pretend to.","operationId":"maps_browser_key_v1_maps_browser_key_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Maps Browser Key V1 Maps Browser Key Get"}}}}}}},"/v1/teams/{team_id}/onboarding/demo-script":{"post":{"tags":["onboarding"],"summary":"Demo Script","description":"The words this shop's own customers would say, for the day-zero film.\n\nPresentation only. Nothing returned here is a fact about the business, a\npromise to a caller, or a value anything may act on — it is the dialogue of a\ndemo reel, which is exactly what it replaces.","operationId":"demo_script_v1_teams__team_id__onboarding_demo_script_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DemoScriptAsk"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Demo Script V1 Teams  Team Id  Onboarding Demo Script Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web/search":{"get":{"tags":["web"],"summary":"Web Search","description":"Organic Google results — titles, URLs and snippets, nothing rendered.","operationId":"web_search_v1_teams__team_id__web_search_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"query","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":400,"title":"Query"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"default":10,"title":"Limit"}},{"name":"pages","in":"query","required":false,"schema":{"type":"integer","maximum":10,"minimum":1,"default":1,"title":"Pages"}},{"name":"gl","in":"query","required":false,"schema":{"type":"string","minLength":2,"maxLength":8,"default":"us","title":"Gl"}},{"name":"hl","in":"query","required":false,"schema":{"type":"string","minLength":2,"maxLength":12,"default":"en","title":"Hl"}},{"name":"exclude_social","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Exclude Social"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["brightdata","exa","simulation"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Web Search V1 Teams  Team Id  Web Search Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web/read":{"get":{"tags":["web"],"summary":"Web Read","description":"One page as readable text plus its links and any contact addresses.\n\nA page that could not be read answers 200 with `needs_browser: true` and the\nreason, not an error: being blocked is an ordinary outcome of reading the\nopen web, and the caller needs the same shape either way.","operationId":"web_read_v1_teams__team_id__web_read_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"url","in":"query","required":true,"schema":{"type":"string","minLength":8,"maxLength":2048,"title":"Url"}},{"name":"max_chars","in":"query","required":false,"schema":{"type":"integer","maximum":50000,"minimum":500,"default":12000,"title":"Max Chars"}},{"name":"zone","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"title":"Zone"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["brightdata","exa","simulation"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Web Read V1 Teams  Team Id  Web Read Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/people/search":{"get":{"tags":["people"],"summary":"People Search","description":"People matching a plain-language description, with verified contacts.","operationId":"people_search_v1_teams__team_id__people_search_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"query","in":"query","required":true,"schema":{"type":"string","minLength":3,"maxLength":400,"title":"Query"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"emails","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Emails"}},{"name":"phones","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Phones"}},{"name":"exclude_domains","in":"query","required":false,"schema":{"type":"string","maxLength":800,"default":"","title":"Exclude Domains"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["explee","simulation"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response People Search V1 Teams  Team Id  People Search Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/people/enrich":{"post":{"tags":["people"],"summary":"People Enrich","description":"Verified email and work phone for people the caller already holds.","operationId":"people_enrich_v1_teams__team_id__people_enrich_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnrichRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response People Enrich V1 Teams  Team Id  People Enrich Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/browser/sessions":{"post":{"tags":["browser"],"summary":"Create Browser Session","operationId":"create_browser_session_v1_teams__team_id__browser_sessions_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBrowserSessionRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Browser Session V1 Teams  Team Id  Browser Sessions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/browser/sessions/{session_id}/snapshot":{"get":{"tags":["browser"],"summary":"Read Browser Snapshot","operationId":"read_browser_snapshot_v1_teams__team_id__browser_sessions__session_id__snapshot_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Browser Snapshot V1 Teams  Team Id  Browser Sessions  Session Id  Snapshot Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/browser/sessions/{session_id}/interactions":{"post":{"tags":["browser"],"summary":"Interact With Browser Session","operationId":"interact_with_browser_session_v1_teams__team_id__browser_sessions__session_id__interactions_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserInteractionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Interact With Browser Session V1 Teams  Team Id  Browser Sessions  Session Id  Interactions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/browser/sessions/{session_id}/events":{"get":{"tags":["browser"],"summary":"Stream Browser Events","operationId":"stream_browser_events_v1_teams__team_id__browser_sessions__session_id__events_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"After"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/browser/sessions/{session_id}/rasters/{asset_id}":{"get":{"tags":["browser"],"summary":"Read Browser Raster","operationId":"read_browser_raster_v1_teams__team_id__browser_sessions__session_id__rasters__asset_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"asset_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Asset Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/browser/sessions/{session_id}":{"delete":{"tags":["browser"],"summary":"Delete Browser Session","operationId":"delete_browser_session_v1_teams__team_id__browser_sessions__session_id__delete","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Delete Browser Session V1 Teams  Team Id  Browser Sessions  Session Id  Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/readiness":{"get":{"tags":["phone numbers"],"summary":"Phone Number Readiness","description":"Whether this team can actually use a phone line — including texting.\n\nIT NOW ANSWERS THE REGISTRATION QUESTION TOO, and that is the whole point.\nMeasured in the gym on 2026-08-18: asked to text a customer, the desk called\nthis verb twice, got a green answer, sent the message, and told the owner\n\"All set — I just sent the reminder.\" The shop was not registered, so US\ncarriers would have dropped it silently. The verb a desk reaches for when it\nwonders \"can we text\" said nothing about the one thing that stops texts.\n\nA readiness check that is green while the thing is not ready is worse than\nno check, because it ends the enquiry.","operationId":"phone_number_readiness_v1_teams__team_id__phone_numbers_readiness_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Phone Number Readiness V1 Teams  Team Id  Phone Numbers Readiness Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/search":{"get":{"tags":["phone numbers"],"summary":"Search Phone Numbers","operationId":"search_phone_numbers_v1_teams__team_id__phone_numbers_search_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"country","in":"query","required":false,"schema":{"type":"string","minLength":2,"maxLength":2,"default":"US","title":"Country"}},{"name":"type","in":"query","required":false,"schema":{"enum":["local","toll-free","toll_free","mobile"],"type":"string","default":"local","title":"Type"}},{"name":"area_code","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":1,"maxLength":16},{"type":"null"}],"title":"Area Code"}},{"name":"contains","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":2,"maxLength":16},{"type":"null"}],"title":"Contains"}},{"name":"region","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":1,"maxLength":100},{"type":"null"}],"title":"Region"}},{"name":"postal_code","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":1,"maxLength":32},{"type":"null"}],"title":"Postal Code"}},{"name":"voice","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Voice"}},{"name":"sms","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sms"}},{"name":"mms","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Mms"}},{"name":"exclude_address_required","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Exclude Address Required"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":10,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Search Phone Numbers V1 Teams  Team Id  Phone Numbers Search Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/inspect":{"get":{"tags":["phone numbers"],"summary":"Inspect Phone Number","operationId":"inspect_phone_number_v1_teams__team_id__phone_numbers_inspect_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"phone_number","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":32,"title":"Phone Number"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Inspect Phone Number V1 Teams  Team Id  Phone Numbers Inspect Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/provisions":{"post":{"tags":["phone numbers"],"summary":"Propose Phone Number Provision","description":"Freeze one exact number purchase behind Stormy's normal action policy.","operationId":"propose_phone_number_provision_v1_teams__team_id__phone_numbers_provisions_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProvisionPhoneNumberRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Propose Phone Number Provision V1 Teams  Team Id  Phone Numbers Provisions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["phone numbers"],"summary":"List Pending Phone Number Provisions","description":"The number purchases this team owes a person a yes or no on.\n\nA number purchase is `financial`, so the empty-policy default sends it to\n`ask` and the run parks on an open `action_approval`. Until this read\nexisted, the only surface that could find that hold was an operator console\n— a self-serve owner was offered a number, said yes in the conversation, and\nthe purchase then sat where they could not see it, let alone answer it.\n\nThe projection is deliberately narrow: the number, the name it will answer\nas, and the exact frozen monthly price they are agreeing to. Connection ids,\nbundle sids and work-item ids are this system's machinery, and a screen that\nasks a shop owner for money has no business showing them. `GET\n/interactions` still returns the whole row for an operator that wants it.\n\nAnswering is the ONE verb every other checkpoint uses —\n`POST /interactions/{interaction_id}/respond` with `decision: approve`. The\nprice shown here is the price the execution then verifies against the\nprovider, so a figure that moved between the offer and the answer fails\nloudly rather than quietly charging a number nobody agreed to.","operationId":"list_pending_phone_number_provisions_v1_teams__team_id__phone_numbers_provisions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Pending Phone Number Provisions V1 Teams  Team Id  Phone Numbers Provisions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/provisions/{action_id}":{"get":{"tags":["phone numbers"],"summary":"Inspect Phone Number Provision","description":"Read the action, provider ownership, and canonical line as one receipt.","operationId":"inspect_phone_number_provision_v1_teams__team_id__phone_numbers_provisions__action_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"action_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Action Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Inspect Phone Number Provision V1 Teams  Team Id  Phone Numbers Provisions  Action Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/{line_id}/repair-webhooks":{"post":{"tags":["phone numbers"],"summary":"Repair Phone Number Webhooks","description":"Repair one exact owned number and return verified before/after state.","operationId":"repair_phone_number_webhooks_v1_teams__team_id__phone_numbers__line_id__repair_webhooks_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repair Phone Number Webhooks V1 Teams  Team Id  Phone Numbers  Line Id  Repair Webhooks Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/simulation/ensure":{"post":{"tags":["phone numbers"],"summary":"Ensure Simulation Line","description":"Idempotently provision the team's zero-friction simulation line.","operationId":"ensure_simulation_line_v1_teams__team_id__phone_numbers_simulation_ensure_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ensure Simulation Line V1 Teams  Team Id  Phone Numbers Simulation Ensure Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/simulation/provision":{"post":{"tags":["phone numbers"],"summary":"Provision Simulation Line","description":"Provision one exact provider-free line from the fictional inventory.","operationId":"provision_simulation_line_v1_teams__team_id__phone_numbers_simulation_provision_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProvisionSimulationLineRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Provision Simulation Line V1 Teams  Team Id  Phone Numbers Simulation Provision Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/shared":{"get":{"tags":["phone numbers"],"summary":"Shared Onboarding Status","description":"Is the shared Stormy number armed, and can this workspace be rung on it?\n\nAND IT FINISHES OUR OWN FILING WHILE IT IS HERE (`repair=True`). Asking\nwhether a workspace can be rung is the moment to make the answer true where\nthe only thing missing is a row we owe it: the mirror is bookkeeping, not a\ncarrier effect (no provider resource, no A2P filing, `capabilities: []`),\nand it is written once per workspace and never again. Without this, every\nworkspace created before the number was armed answers `false` forever —\nsignup is the only other caller, and a cross-team backfill has no plane to\nrun on.\n\nA repair that fails is reported (`repair_error`) and changes nothing else:\nthe answer stays an honest `reachable: false` rather than a 500.","operationId":"shared_onboarding_status_v1_teams__team_id__phone_numbers_shared_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Shared Onboarding Status V1 Teams  Team Id  Phone Numbers Shared Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/shared/ensure":{"post":{"tags":["phone numbers"],"summary":"Ensure Shared Onboarding Line","description":"Idempotently give this workspace its row for the shared onboarding number.\n\nSignup already calls this. It is a verb as well because signup is not the\nonly way a workspace comes to exist, and because a workspace that predates\nthe number being armed has no mirror row and therefore cannot be rung — this\nis how it gets one, without anybody writing SQL against prod.\n\nTHE 409 IS ABOUT THE DEPLOYMENT, NEVER ABOUT THIS TEAM. `ensure` hands back\n`None` for two unrelated reasons — no number is armed, or this IS the house\nworkspace and mirroring the line onto itself is exactly the wrong thing —\nand reading the 409 off that return told the house that its own armed number\ndid not exist. `configured` is the fact the refusal is actually about, so it\nis what is asked.","operationId":"ensure_shared_onboarding_line_v1_teams__team_id__phone_numbers_shared_ensure_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ensure Shared Onboarding Line V1 Teams  Team Id  Phone Numbers Shared Ensure Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/numbers/carrier":{"post":{"tags":["phone numbers"],"summary":"Ensure Carrier","description":"Attach this team's own carrier connection — no credentials in the ask.\n\nBuying a number needed a carrier, and connecting a carrier had no verb, so a\nfresh team dead-ended asking a human to paste an account id. Stormy owns the\ncarrier relationship; this lends it to the team, scoped by the caller's own\nteam access.","operationId":"ensure_carrier_v1_teams__team_id__phone_numbers_carrier_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"provider","in":"query","required":false,"schema":{"anyOf":[{"enum":["twilio","telnyx"],"type":"string"},{"type":"null"}],"title":"Provider"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ensure Carrier V1 Teams  Team Id  Phone Numbers Carrier Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration":{"get":{"tags":["messaging registration"],"summary":"Read Registration","description":"Where this workspace stands with the carrier, and what is still missing.","operationId":"read_registration_v1_teams__team_id__messaging_registration_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":false,"schema":{"anyOf":[{"enum":["standard","sole_proprietor","toll_free"],"type":"string"},{"type":"null"}],"title":"Path"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Registration V1 Teams  Team Id  Messaging Registration Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/requirements":{"get":{"tags":["messaging registration"],"summary":"Read Requirements","description":"Every answer the carrier asks for — the manifest, not this team's copy.\n\nThe same list `GET /` computes gaps against, served on its own so a surface\ncan render the questions before a single one has been answered.","operationId":"read_requirements_v1_teams__team_id__messaging_registration_requirements_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":false,"schema":{"anyOf":[{"enum":["standard","sole_proprietor","toll_free"],"type":"string"},{"type":"null"}],"title":"Path"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Requirements V1 Teams  Team Id  Messaging Registration Requirements Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/profile":{"post":{"tags":["messaging registration"],"summary":"Set Profile","description":"Record what is now known. Partial and repeatable.","operationId":"set_profile_v1_teams__team_id__messaging_registration_profile_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetProfileRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Set Profile V1 Teams  Team Id  Messaging Registration Profile Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/documents":{"post":{"tags":["messaging registration"],"summary":"Add Document","description":"Attach evidence — a consent screenshot, a policy page, a filing.","operationId":"add_document_v1_teams__team_id__messaging_registration_documents_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddDocumentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Add Document V1 Teams  Team Id  Messaging Registration Documents Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/continue":{"post":{"tags":["messaging registration"],"summary":"Continue Setup","description":"Resume platform-owned setup; never expose carrier object mechanics.","operationId":"continue_setup_v1_teams__team_id__messaging_registration_continue_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContinueSetupRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Continue Setup V1 Teams  Team Id  Messaging Registration Continue Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/start-fresh":{"post":{"tags":["messaging registration"],"summary":"Start Fresh","description":"Fence off one customer's old Twilio test iteration, preserving proof.","operationId":"start_fresh_v1_teams__team_id__messaging_registration_start_fresh_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartFreshRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Start Fresh V1 Teams  Team Id  Messaging Registration Start Fresh Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/file":{"post":{"tags":["messaging registration"],"summary":"File Registration","description":"Carry the filing as far as the carrier will take it right now.","operationId":"file_registration_v1_teams__team_id__messaging_registration_file_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileRegistrationRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response File Registration V1 Teams  Team Id  Messaging Registration File Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/refresh":{"post":{"tags":["messaging registration"],"summary":"Refresh Registration","description":"Ask the carrier what it thinks today and write that down.","operationId":"refresh_registration_v1_teams__team_id__messaging_registration_refresh_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":false,"schema":{"anyOf":[{"enum":["standard","sole_proprietor","toll_free"],"type":"string"},{"type":"null"}],"title":"Path"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Refresh Registration V1 Teams  Team Id  Messaging Registration Refresh Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/telnyx":{"get":{"tags":["messaging registration"],"summary":"Telnyx Registration Status","description":"Return stored state plus fresh brand, campaign, and number read-back.","operationId":"telnyx_registration_status_v1_teams__team_id__messaging_registration_telnyx_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Telnyx Registration Status V1 Teams  Team Id  Messaging Registration Telnyx Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/telnyx/brand":{"post":{"tags":["messaging registration"],"summary":"Submit Telnyx Brand","description":"Submit one stable brand filing from the canonical business profile.","operationId":"submit_telnyx_brand_v1_teams__team_id__messaging_registration_telnyx_brand_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaidFilingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Submit Telnyx Brand V1 Teams  Team Id  Messaging Registration Telnyx Brand Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/telnyx/brand/vetting":{"post":{"tags":["messaging registration"],"summary":"Request Telnyx Brand Vetting","description":"Request standard Aegis vetting after explicit paid-filing consent.","operationId":"request_telnyx_brand_vetting_v1_teams__team_id__messaging_registration_telnyx_brand_vetting_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaidFilingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Request Telnyx Brand Vetting V1 Teams  Team Id  Messaging Registration Telnyx Brand Vetting Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/telnyx/campaign/quote":{"get":{"tags":["messaging registration"],"summary":"Quote Telnyx Campaign","description":"Read qualification and exact carrier cost without submitting a filing.","operationId":"quote_telnyx_campaign_v1_teams__team_id__messaging_registration_telnyx_campaign_quote_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"line_id","in":"query","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"usecase","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":1,"maxLength":80},{"type":"null"}],"title":"Usecase"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Quote Telnyx Campaign V1 Teams  Team Id  Messaging Registration Telnyx Campaign Quote Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/telnyx/campaign":{"post":{"tags":["messaging registration"],"summary":"Submit Telnyx Campaign","description":"Submit a campaign only after cost consent and carrier-terms acceptance.","operationId":"submit_telnyx_campaign_v1_teams__team_id__messaging_registration_telnyx_campaign_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CampaignFilingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Submit Telnyx Campaign V1 Teams  Team Id  Messaging Registration Telnyx Campaign Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/messaging/registration/telnyx/assignment":{"post":{"tags":["messaging registration"],"summary":"Assign Telnyx Number","description":"Assign an active campaign to this exact canonical Telnyx number.","operationId":"assign_telnyx_number_v1_teams__team_id__messaging_registration_telnyx_assignment_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LineRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Assign Telnyx Number V1 Teams  Team Id  Messaging Registration Telnyx Assignment Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/reminders":{"post":{"tags":["schedules"],"summary":"Create Reminder","description":"Do this later — in that conversation, or as a fresh workspace item.\n\nThe caller supplies the business task and the time. Stormy owns the\nexecution provider, model, session verification, authority, and the durable\nschedule definition. Which of the two shapes this is comes from one field,\n`session_id`, and the receipt always says which one was written.","operationId":"create_reminder_v1_teams__team_id__reminders_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateReminderRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Reminder V1 Teams  Team Id  Reminders Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/schedules/{schedule_id}":{"patch":{"tags":["schedules"],"summary":"Set Schedule Status","operationId":"set_schedule_status_v1_teams__team_id__schedules__schedule_id__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"schedule_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Schedule Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetScheduleStatusRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Set Schedule Status V1 Teams  Team Id  Schedules  Schedule Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["schedules"],"summary":"Get Schedule","operationId":"get_schedule_v1_teams__team_id__schedules__schedule_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"schedule_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Schedule Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Schedule V1 Teams  Team Id  Schedules  Schedule Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/schedules/{schedule_id}/occurrences":{"get":{"tags":["schedules"],"summary":"List Schedule Occurrences","operationId":"list_schedule_occurrences_v1_teams__team_id__schedules__schedule_id__occurrences_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"schedule_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Schedule Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Schedule Occurrences V1 Teams  Team Id  Schedules  Schedule Id  Occurrences Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/schedules/{schedule_id}/events":{"get":{"tags":["schedules"],"summary":"List Schedule Events","operationId":"list_schedule_events_v1_teams__team_id__schedules__schedule_id__events_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"schedule_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Schedule Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"After"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Schedule Events V1 Teams  Team Id  Schedules  Schedule Id  Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/terminal/snapshot":{"get":{"tags":["operator terminal"],"summary":"Terminal Snapshot","operationId":"terminal_snapshot_v1_teams__team_id__terminal_snapshot_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"run_limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Run Limit"}},{"name":"resource_limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Resource Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Terminal Snapshot V1 Teams  Team Id  Terminal Snapshot Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/telegram/link-challenges":{"post":{"tags":["telegram"],"summary":"Create Link Challenge","operationId":"create_link_challenge_v1_teams__team_id__telegram_link_challenges_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TelegramLinkChallengeRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Link Challenge V1 Teams  Team Id  Telegram Link Challenges Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/telegram/links":{"get":{"tags":["telegram"],"summary":"List Links","operationId":"list_links_v1_teams__team_id__telegram_links_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Links V1 Teams  Team Id  Telegram Links Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/telegram/links/{link_id}":{"delete":{"tags":["telegram"],"summary":"Revoke Link","operationId":"revoke_link_v1_teams__team_id__telegram_links__link_id__delete","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"link_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Link Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/telegram/messages":{"get":{"tags":["telegram"],"summary":"List Messages","operationId":"list_messages_v1_teams__team_id__telegram_messages_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"interaction_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Interaction Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Messages V1 Teams  Team Id  Telegram Messages Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/apps/website-contacts":{"get":{"tags":["apps"],"summary":"Website Contacts","description":"Who tried to reach this shop through its site, and who got through.","operationId":"website_contacts_v1_teams__team_id__apps_website_contacts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"site_id","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"title":"Site Id"}},{"name":"hours","in":"query","required":false,"schema":{"type":"integer","maximum":720,"minimum":1,"default":24,"title":"Hours"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Website Contacts V1 Teams  Team Id  Apps Website Contacts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/apps/website-analytics":{"get":{"tags":["apps"],"summary":"Website Analytics","description":"Return a fixed summary from only the authenticated team's dataset.","operationId":"website_analytics_v1_teams__team_id__apps_website_analytics_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"site_id","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"title":"Site Id"}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":90,"minimum":1,"default":30,"title":"Days"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Website Analytics V1 Teams  Team Id  Apps Website Analytics Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/apps/prospects/prepare":{"post":{"tags":["apps"],"summary":"Prepare Prospect Sites","operationId":"prepare_prospect_sites_v1_teams__team_id__apps_prospects_prepare_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrepareProspectSitesRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Prepare Prospect Sites V1 Teams  Team Id  Apps Prospects Prepare Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/billing/catalog":{"get":{"tags":["billing"],"summary":"Catalog","operationId":"catalog_v1_teams__team_id__billing_catalog_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Catalog V1 Teams  Team Id  Billing Catalog Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/billing/catalog/sync":{"post":{"tags":["billing"],"summary":"Sync Catalog","operationId":"sync_catalog_v1_teams__team_id__billing_catalog_sync_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Sync Catalog V1 Teams  Team Id  Billing Catalog Sync Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/billing/summary":{"get":{"tags":["billing"],"summary":"Summary","operationId":"summary_v1_teams__team_id__billing_summary_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Summary V1 Teams  Team Id  Billing Summary Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/billing/test-checkout":{"post":{"tags":["billing"],"summary":"Create Test Checkout","operationId":"create_test_checkout_v1_teams__team_id__billing_test_checkout_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Test Checkout V1 Teams  Team Id  Billing Test Checkout Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/billing/paywall":{"get":{"tags":["billing"],"summary":"Paywall State","description":"Whether to ask this shop for money yet, and what to say when we do.","operationId":"paywall_state_v1_teams__team_id__billing_paywall_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Paywall State V1 Teams  Team Id  Billing Paywall Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/billing/paywall/checkout":{"post":{"tags":["billing"],"summary":"Paywall Checkout","description":"Mint the checkout for this team's one onboarding offer.\n\nTEAM ACCESS ONLY, DELIBERATELY — unlike `/test-checkout` above, which\nkeeps the billing-owner requirement because its caller CHOOSES the offer.\nHere the offer is fixed server-side and the call mints an unpaid session:\nno charge happens, and a card is entered by a person into fields Stripe\ndraws. The worst a wrong caller can do is produce a checkout nobody\ncompletes — which stays true of `embedded`, because a client secret spends\nonly against the one session it belongs to, and that session is priced\nentirely by this server.\n\nThat distinction is load-bearing rather than convenient. The agent draws\nthis screen during onboarding and needs the link to put in it, and its\nprincipal is `role='agent'` with `['agent.run']` — so requiring\n`billing.manage` here would have meant granting every harness worker the\ncapability to manage billing, which is a far larger authority than \"may\nshow its owner a payment link\".","operationId":"paywall_checkout_v1_teams__team_id__billing_paywall_checkout_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaywallCheckoutRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Paywall Checkout V1 Teams  Team Id  Billing Paywall Checkout Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/billing/paywall/raise":{"post":{"tags":["billing"],"summary":"Paywall Raise","description":"Put the wall up now, for a shop that has already earned being asked.\n\nTeam access only, for the same reason the checkout is: this decides WHEN a\nquestion is put, not whether money moves. The server still refuses to block\na team that is exempt, already subscribed, or has not been paid back for\nthe ask — so the worst this can do is raise something that was owed anyway,\na moment earlier than the agent might otherwise have chosen.","operationId":"paywall_raise_v1_teams__team_id__billing_paywall_raise_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Paywall Raise V1 Teams  Team Id  Billing Paywall Raise Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/webhooks":{"post":{"tags":["billing webhooks"],"summary":"Stripe Test Webhook","operationId":"stripe_test_webhook_api_webhooks_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Stripe Test Webhook Api Webhooks Post"}}}}}}},"/v1/billing/stripe/test-webhook":{"post":{"tags":["billing webhooks"],"summary":"Stripe Test Webhook","operationId":"stripe_test_webhook_v1_billing_stripe_test_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Stripe Test Webhook V1 Billing Stripe Test Webhook Post"}}}}}}},"/v1/teams/{team_id}/ads/google/readiness":{"get":{"tags":["ads"],"summary":"Ads Readiness","operationId":"ads_readiness_v1_teams__team_id__ads_google_readiness_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ads Readiness V1 Teams  Team Id  Ads Google Readiness Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/ads/google/accounts":{"get":{"tags":["ads"],"summary":"List Ads Accounts","operationId":"list_ads_accounts_v1_teams__team_id__ads_google_accounts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Ads Accounts V1 Teams  Team Id  Ads Google Accounts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/ads/google/connect-link":{"post":{"tags":["ads"],"summary":"Create Ads Connect Link","description":"One URL to hand a customer. Their consent, Stormy's application.","operationId":"create_ads_connect_link_v1_teams__team_id__ads_google_connect_link_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Ads Connect Link V1 Teams  Team Id  Ads Google Connect Link Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/ads/google/query":{"post":{"tags":["ads"],"summary":"Query Ads","operationId":"query_ads_v1_teams__team_id__ads_google_query_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdsQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Query Ads V1 Teams  Team Id  Ads Google Query Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/ads/google/call":{"post":{"tags":["ads"],"summary":"Call Ads","operationId":"call_ads_v1_teams__team_id__ads_google_call_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdsCallRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Call Ads V1 Teams  Team Id  Ads Google Call Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/ads/google/callback":{"get":{"tags":["ads"],"summary":"Ads Oauth Callback","description":"Where Google returns the customer. Public by necessity, signed by design.","operationId":"ads_oauth_callback_ads_google_callback_get","parameters":[{"name":"state","in":"query","required":false,"schema":{"type":"string","default":"","title":"State"}},{"name":"code","in":"query","required":false,"schema":{"type":"string","default":"","title":"Code"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","default":"","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connect/links":{"post":{"tags":["app connect"],"summary":"Create Connect Link","description":"Mint the one URL a human opens to connect this app for this team.","operationId":"create_connect_link_v1_teams__team_id__connect_links_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectLinkRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Connect Link V1 Teams  Team Id  Connect Links Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connect/apps":{"get":{"tags":["app connect"],"summary":"Search Connectable Apps","description":"Search the live registry for apps this team could connect.\n\nUntil this route existed the registry was reachable only by GUESSING a slug\nand reading the 404 body of ``connect/link`` — so \"find out what they\nalready run and offer to connect it\" was an unrunnable instruction. The\nsearch is the registry's own, never a list maintained here.\n\nIT ANSWERS A DESCRIPTION AS WELL AS A NAME, and the second one is what the\nproduct actually asks. The registry is a NAME index: a shop that says \"our\nbooks\" or \"accounting and invoicing\" matched nothing at all, and the miss\ncame back 200 with zero rows — which the onboarding face draws as a spinner\nthat never stops. So a phrase the index cannot answer goes once through\n`connect_intent`, which names the products and looks each one back up here.\nThe name search is still tried FIRST and unchanged, so a caller that knows\nwhat it wants pays nothing for the lane, and `matched` says which one\nanswered.","operationId":"search_connectable_apps_v1_teams__team_id__connect_apps_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120,"title":"Q"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":25,"minimum":1,"default":8,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Search Connectable Apps V1 Teams  Team Id  Connect Apps Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connect/accounts":{"get":{"tags":["app connect"],"summary":"List Connected Accounts","description":"Read the external app accounts this team has connected.\n\nThis is a POLL TARGET — the desk asks it on a timer from every open tab, so\nby default it may answer from a short cache. `fresh=1` is for the refresh a\nPERSON just caused (they finished a connect flow): that one must never be\ntold the world as it was thirty seconds ago.","operationId":"list_connected_accounts_v1_teams__team_id__connect_accounts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"app","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"App"}},{"name":"fresh","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Fresh"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Connected Accounts V1 Teams  Team Id  Connect Accounts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connect/actions":{"get":{"tags":["app connect"],"summary":"List Connected App Actions","description":"Discover current prebuilt actions for one connected-app provider.","operationId":"list_connected_app_actions_v1_teams__team_id__connect_actions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"app","in":"query","required":true,"schema":{"type":"string","title":"App"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Connected App Actions V1 Teams  Team Id  Connect Actions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connect/actions/options":{"post":{"tags":["app connect"],"summary":"Configure Connected App Action","description":"Resolve account-specific choices for one prebuilt action property.","operationId":"configure_connected_app_action_v1_teams__team_id__connect_actions_options_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectActionOptionsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Configure Connected App Action V1 Teams  Team Id  Connect Actions Options Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connect/actions/run":{"post":{"tags":["app connect"],"summary":"Run Connected App Action","description":"Read now, or govern one external connected-app effect.","operationId":"run_connected_app_action_v1_teams__team_id__connect_actions_run_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectActionRunRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Run Connected App Action V1 Teams  Team Id  Connect Actions Run Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/connect/proxy":{"post":{"tags":["app connect"],"summary":"Proxy Connected App","description":"Read now, or govern one raw connected-app API effect.","operationId":"proxy_connected_app_v1_teams__team_id__connect_proxy_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}},{"name":"x-darwin-run-id","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Run-Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectProxyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Proxy Connected App V1 Teams  Team Id  Connect Proxy Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/connect/{app_slug}":{"get":{"tags":["app connect"],"summary":"Connect Page","description":"The hosted page a human opens; the embedded provider does the proof.","operationId":"connect_page_connect__app_slug__get","parameters":[{"name":"app_slug","in":"path","required":true,"schema":{"type":"string","title":"App Slug"}},{"name":"t","in":"query","required":true,"schema":{"type":"string","minLength":16,"title":"T"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/connect/{app_slug}/status":{"get":{"tags":["app connect"],"summary":"Connect Status","description":"Grant-gated yes/no poll target for the hosted page — never credentials.","operationId":"connect_status_connect__app_slug__status_get","parameters":[{"name":"app_slug","in":"path","required":true,"schema":{"type":"string","title":"App Slug"}},{"name":"t","in":"query","required":true,"schema":{"type":"string","minLength":16,"title":"T"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Connect Status Connect  App Slug  Status Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/connect/{app_slug}/done":{"get":{"tags":["app connect"],"summary":"Connect Done","description":"Where the provider lands afterwards.\n\nSuccess notifies the opener and closes itself; failure stays open and says\nwhat happened, because a window that silently vanishes reads as a bug.","operationId":"connect_done_connect__app_slug__done_get","parameters":[{"name":"app_slug","in":"path","required":true,"schema":{"type":"string","title":"App Slug"}},{"name":"ok","in":"query","required":false,"schema":{"type":"string","default":"1","title":"Ok"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/connect/{app_slug}/hooks/{hook}":{"post":{"tags":["app connect"],"summary":"Connect Completion Hook","description":"The provider's completion push: wake the ACP session that asked.\n\nThe signed hook token is the authority — only Stormy could have minted it,\nand only the connect provider was told the URL. The wake reuses the agent\nreminder machinery (one durable ``agent.run`` schedule into the bound\nsession), deduped on freshly read canonical provider state so equivalent\nprovider retries collapse.","operationId":"connect_completion_hook_connect__app_slug__hooks__hook__post","parameters":[{"name":"app_slug","in":"path","required":true,"schema":{"type":"string","title":"App Slug"}},{"name":"hook","in":"path","required":true,"schema":{"type":"string","title":"Hook"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Connect Completion Hook Connect  App Slug  Hooks  Hook  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/portals/cloudflare":{"get":{"tags":["cloudflare-portal"],"summary":"List Cloudflare Portals","operationId":"list_cloudflare_portals_v1_teams__team_id__portals_cloudflare_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Cloudflare Portals V1 Teams  Team Id  Portals Cloudflare Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/portals/cloudflare/{connection_id}/mcp":{"post":{"tags":["cloudflare-portal"],"summary":"Proxy Cloudflare Mcp","operationId":"proxy_cloudflare_mcp_v1_teams__team_id__portals_cloudflare__connection_id__mcp_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/portals/cloudflare/{connection_id}/client/v4/{cloudflare_path}":{"get":{"tags":["cloudflare-portal"],"summary":"Proxy Cloudflare Api","operationId":"proxy_cloudflare_api_v1_teams__team_id__portals_cloudflare__connection_id__client_v4__cloudflare_path__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"cloudflare_path","in":"path","required":true,"schema":{"type":"string","title":"Cloudflare Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["cloudflare-portal"],"summary":"Proxy Cloudflare Api","operationId":"proxy_cloudflare_api_v1_teams__team_id__portals_cloudflare__connection_id__client_v4__cloudflare_path__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"cloudflare_path","in":"path","required":true,"schema":{"type":"string","title":"Cloudflare Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["cloudflare-portal"],"summary":"Proxy Cloudflare Api","operationId":"proxy_cloudflare_api_v1_teams__team_id__portals_cloudflare__connection_id__client_v4__cloudflare_path__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"cloudflare_path","in":"path","required":true,"schema":{"type":"string","title":"Cloudflare Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["cloudflare-portal"],"summary":"Proxy Cloudflare Api","operationId":"proxy_cloudflare_api_v1_teams__team_id__portals_cloudflare__connection_id__client_v4__cloudflare_path__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"cloudflare_path","in":"path","required":true,"schema":{"type":"string","title":"Cloudflare Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["cloudflare-portal"],"summary":"Proxy Cloudflare Api","operationId":"proxy_cloudflare_api_v1_teams__team_id__portals_cloudflare__connection_id__client_v4__cloudflare_path__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}},{"name":"cloudflare_path","in":"path","required":true,"schema":{"type":"string","title":"Cloudflare Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/git/{team_id}.git/info/refs":{"get":{"tags":["git"],"summary":"Info Refs","operationId":"info_refs_v1_git__team_id__git_info_refs_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/git/{team_id}.git/git-upload-pack":{"post":{"tags":["git"],"summary":"Upload Pack","operationId":"upload_pack_v1_git__team_id__git_git_upload_pack_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/git/{team_id}.git/git-receive-pack":{"post":{"tags":["git"],"summary":"Receive Pack","operationId":"receive_pack_v1_git__team_id__git_git_receive_pack_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/gym/workspaces":{"get":{"tags":["gym workspaces"],"summary":"List Gym Workspaces","description":"Every gym case, in case-name order.","operationId":"list_gym_workspaces_v1_gym_workspaces_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":200,"title":"Limit"}},{"name":"scenario","in":"query","required":false,"schema":{"type":"string","default":"","title":"Scenario"}},{"name":"lane","in":"query","required":false,"schema":{"type":"string","default":"","title":"Lane"}},{"name":"verdict","in":"query","required":false,"schema":{"type":"string","default":"","title":"Verdict"}},{"name":"wrote","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Wrote"}},{"name":"tag","in":"query","required":false,"schema":{"type":"string","default":"","title":"Tag"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GymWorkspaceList"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/gym/workspaces/{workspace}":{"get":{"tags":["gym workspaces"],"summary":"Get Gym Workspace","description":"One case, by id or by directory name — whichever the caller has.","operationId":"get_gym_workspace_v1_gym_workspaces__workspace__get","parameters":[{"name":"workspace","in":"path","required":true,"schema":{"type":"string","title":"Workspace"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GymWorkspaceRow"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/attachments":{"post":{"tags":["attachments"],"summary":"Receive Attachment","description":"Take one picture and answer with the path the agent will find it at.","operationId":"receive_attachment_v1_teams__team_id__attachments_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_receive_attachment_v1_teams__team_id__attachments_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"string"},"title":"Response Receive Attachment V1 Teams  Team Id  Attachments Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/attachments/{name}":{"get":{"tags":["attachments"],"summary":"Read Attachment","description":"Hand the same picture back, so the person can SEE what they sent.\n\nTHE PATH IS FOR THE AGENT AND THIS IS FOR THE EYE, and conflating them is\nwhat made an attached photograph invisible: the bubble was drawing\n`<img src=\"/tmp/stormy-inbox/…\">`, which is a real place on a computer in\nanother datacentre and nothing a browser can fetch. A chat that swallows\nthe picture you just sent is not a chat, so the inbox reads as well as it\nwrites.\n\nIT IS NOT AN ARTIFACT AND STILL DOES NOT WANT A URL OF ITS OWN. This is a\nplain authenticated read of a scratch file — the browser reaches it through\nthe same session-backed forward every other harness call uses, so no signed\nlink, no custody record and no public object outlive the conversation.\n\nTHE NAME IS THE WHOLE KEY, and it is one WE minted (`_safe_name` plus eight\nrandom hex). Anything that does not survive that same cleaning unchanged is\nrefused rather than repaired, which makes traversal unrepresentable instead\nof merely unlikely.","operationId":"read_attachment_v1_teams__team_id__attachments__name__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/tree":{"get":{"tags":["team repo"],"summary":"Repo Tree","description":"One directory level of the team repo at `ref`.","operationId":"repo_tree_v1_teams__team_id__repo_tree_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"path","in":"query","required":false,"schema":{"type":"string","default":"","title":"Path"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Tree V1 Teams  Team Id  Repo Tree Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/blob":{"get":{"tags":["team repo"],"summary":"Repo Blob","description":"One file's contents at `ref`, decoded when it is text.","operationId":"repo_blob_v1_teams__team_id__repo_blob_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Blob V1 Teams  Team Id  Repo Blob Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["team repo"],"summary":"Repo Write Blob","description":"Replace one file's whole text, as a real commit.\n\nThe frontmatter endpoint edits a single property, which is the safe 90% —\nbut a lesson whose WORDING is wrong cannot be fixed by setting a key, and\n\"read-only except one property\" makes the files view something you look at\nrather than something you use.\n\nMarkdown only, inside the tree, and the runtime is a live writer of the\nsame files: `expected_commit` makes a concurrent write lose visibly rather\nthan silently overwrite a teaching that landed mid-edit.","operationId":"repo_write_blob_v1_teams__team_id__repo_blob_put","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlobWrite"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Write Blob V1 Teams  Team Id  Repo Blob Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/history":{"get":{"tags":["team repo"],"summary":"Repo History","description":"One file's commit history at `ref` — the receipts behind a document.\n\nEach sha here is a valid `ref` for `/blob`, so a client can read any\nversion and diff neighbours itself; no diff endpoint to keep correct.","operationId":"repo_history_v1_teams__team_id__repo_history_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo History V1 Teams  Team Id  Repo History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/vocabulary":{"get":{"tags":["team repo"],"summary":"Repo Vocabulary","description":"Every frontmatter key's value set across the tree — the LIVE enum\nvocabulary, so a human can see what the agent actually writes (and an\neditor can autocomplete from it). One `git archive` read, no index.","operationId":"repo_vocabulary_v1_teams__team_id__repo_vocabulary_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Vocabulary V1 Teams  Team Id  Repo Vocabulary Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/permissions":{"get":{"tags":["team repo"],"summary":"Repo Permissions","description":"Who sees what: every file's effective plane, plus label findings.\n\nThe same grammar the ACP projection enforces, rendered for the owner —\nfrontmatter labels and `_meta.md` cascades, tighten-only, unlabeled and\nunknown values owner-only. Findings are labels that structurally did not\ntake effect; they can only under-share, never leak.","operationId":"repo_permissions_v1_teams__team_id__repo_permissions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Permissions V1 Teams  Team Id  Repo Permissions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/frontmatter":{"put":{"tags":["team repo"],"summary":"Repo Write Frontmatter","description":"Set ONE flat frontmatter key on one file, as a real commit.\n\nhash-object → temp-index write-tree → commit-tree → CAS update-ref, then\nthe same mirror hook receive-pack fires. A concurrent push loses no work:\nthe CAS fails and the editor retries against the new head.","operationId":"repo_write_frontmatter_v1_teams__team_id__repo_frontmatter_put","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FrontmatterWrite"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Write Frontmatter V1 Teams  Team Id  Repo Frontmatter Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/backlinks":{"get":{"tags":["team repo"],"summary":"Repo Backlinks","description":"Who points at this file — frontmatter references and `[[wiki-links]]`,\ncomputed LIVE from the tree in one `git archive` scan. Never stale, needs\nno committed index, and any API client can ask the same question.","operationId":"repo_backlinks_v1_teams__team_id__repo_backlinks_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Backlinks V1 Teams  Team Id  Repo Backlinks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/query":{"post":{"tags":["team repo"],"summary":"Repo Query","description":"Answer a SQL question about this tree. SELECT only, always read-only.\n\nTHE FRONTMATTER IS THE SCHEMA. Every `key: value` in the tree becomes a row\nin `fields`, so a field this shop invented this afternoon is queryable this\nafternoon and nothing has to be added here for it to work. The columns on\n`docs` are only the concepts the whole product already shares a definition\nof — settled, waiting, due — promoted so that this route and the open-loops\nblock cannot come to disagree about the same file.\n\nTHE WORKING TREE, NOT THE BARE REPO. `_repo_for` falls back to a bare\nrepository, which is right for browsing a ref and wrong here: this reads\nfiles off disk, and a bare repo has none. It is a 409 rather than a silent\nempty result, because \"no rows\" and \"nowhere to look\" are different answers\nand a model cannot tell them apart.","operationId":"repo_query_v1_teams__team_id__repo_query_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TreeQuery"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Query V1 Teams  Team Id  Repo Query Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/record":{"get":{"tags":["team repo"],"summary":"Repo Record","description":"One record, its path, and everything it connects to.\n\n`/views/{ref}` answers a saved QUESTION and `/blob` answers a FILE. Neither\nanswers a ROW, which is what a person is asking for the moment they click\nsomething in a list — and until this, clicking took them to a surface that\nran their ref as a query, found no view, and drew an empty pane.\n\nThe relations come back RESOLVED. A record says `customer: cust_okafor`,\nand a page that renders that literally shows a code no one in the shop\nrecognises; here it arrives as `people/ada-okafor` titled \"Ada Okafor\", so\nthe surface links it without knowing which fields of which kinds are\nrelations. That knowledge lives in the tree's index, where it is derived\nfrom the data rather than declared per screen.\n\n404 IS RESERVED FOR NOTHING THERE. A directory with no `index.md` is not a\n404 — a person who clicked a crumb to reach it has arrived somewhere real,\nand it answers with what is filed under it. Background context probes may\nexplicitly ask for ``optional=true``; for those, absence is the ordinary\n``200 null`` answer and does not masquerade as a recurring server failure.","operationId":"repo_record_v1_teams__team_id__repo_record_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"ceiling","in":"query","required":false,"schema":{"type":"string","default":"","title":"Ceiling"}},{"name":"optional","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Optional"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"title":"Response Repo Record V1 Teams  Team Id  Repo Record Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/record/draw":{"post":{"tags":["team repo"],"summary":"Repo Record Draw","description":"Accept and reconcile the one Pi-harness page-authoring path.\n\nGemini's first glass and Opus's finished candidate are ordinary durable Pi\nruns. They start together and return JSX through their run receipts; this\nroute render-checks and source-fences those bytes before the browser may see\nthem. There is no direct-provider or in-process model fallback.","operationId":"repo_record_draw_v1_teams__team_id__repo_record_draw_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"ceiling","in":"query","required":false,"schema":{"type":"string","default":"","title":"Ceiling"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Record Draw V1 Teams  Team Id  Repo Record Draw Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/record/mobile":{"post":{"tags":["team repo"],"summary":"Repo Record Mobile","description":"Adapt the same face with one source-fenced Gemini run inside Pi.","operationId":"repo_record_mobile_v1_teams__team_id__repo_record_mobile_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Record Mobile V1 Teams  Team Id  Repo Record Mobile Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/views":{"get":{"tags":["team repo"],"summary":"Repo Views","description":"Every `kind: view` record in this team's tree.\n\nTwo populations on purpose. The desk has been writing view records as NOTES\nsince long before there was a renderer — the owner's live workspace held\nsixteen of them, carrying an audience, a status, a `dedupe_key` so a view\nUPDATES instead of piling up, and edges to what it came from, all with no\nquery. Listing those alongside the renderable ones is how somebody notices\nthe ones a single `query:` field would finish.","operationId":"repo_views_v1_teams__team_id__repo_views_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"with_query_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"With Query Only"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Views V1 Teams  Team Id  Repo Views Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/views/{path}":{"get":{"tags":["team repo"],"summary":"Repo View","description":"Run one view and answer the table.\n\nTHE COLUMNS COME FROM THE RECORD, NOT THE QUERY — that is the point of the\nfeature. A table assembled fresh on every render is a different table every\nrender, and nobody can build a habit on it.\n\n`ceiling` only ever TIGHTENS what the record declares: a caller rendering on\nbehalf of a customer says so, and cannot ask for more than the view was\nwritten for. A privileged caller opening a customer-safe view does not\nsilently widen it either — the record's declared audience is the artifact's\nown bound.","operationId":"repo_view_v1_teams__team_id__repo_views__path__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}},{"name":"ceiling","in":"query","required":false,"schema":{"type":"string","default":"","title":"Ceiling"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo View V1 Teams  Team Id  Repo Views  Path  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/stations":{"get":{"tags":["stations"],"summary":"List Stations","description":"Every station this workspace has — THE RAIL, as data.\n\nA station is a top-level folder carrying a `_meta.md`. So adding one to the\nrail is `mkdir` plus a file, and nothing in the shell has to learn its name.\nThat is the whole point of the design and it was, until now, the one place\nstill holding a hardcoded list: the tab strip named five things in\nTypeScript, so a sixth was a release rather than a commit.\n\nOrder is declared by `rail:` when a folder cares, then alphabetical — never\nfilesystem order, which is arbitrary and changes when a directory is\nrewritten.","operationId":"list_stations_v1_teams__team_id__stations_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationList"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["stations"],"summary":"Create Station","description":"Make a channel — which is to say, make a folder and commit its `_meta.md`.\n\nTHE WRITE IS THE SAME WRITE THE FILES VIEW DOES. `_write_and_commit` writes\ninto the checkout and commits that one path, so a channel arrives in the\ntree's history with an author and a message like everything else the shop\nowns. Creating one through a second mechanism would be the first thing in\nthis product whose existence git could not explain.\n\nIT IS A COMMIT, NOT A ROW, and that is why nothing downstream has to learn\nabout it: the rail is a read of the tree, so the folder that lands here is\non the owner's screen the next time `list_stations` runs, and the agent\nfinds it by listing directories the way it finds every other place.","operationId":"create_station_v1_teams__team_id__stations_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationCreated"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/stations/{station}":{"get":{"tags":["stations"],"summary":"Read Station","description":"One station: what wants you, and what was handled without you.\n\nTHE ABSORBED PILE IS THE ONE THAT GROWS. What wants a person is bounded by\nwhat a person can actually do — if it is not, that is the story and the\ncount says so. What the desk handled alone grows without limit, so `handled`\nis the paged list and `offset` walks it.\n\nBODIES ARE NOT SENT WITH A LIST. Two hundred notes' worth of prose is a\npayload nobody reads: the list carries what a row needs, and `path=` returns\nexactly one note with its body when something is actually opened. Fetching\neverything in case it is looked at is how a surface gets slow before it gets\nuseful.","operationId":"read_station_v1_teams__team_id__stations__station__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"station","in":"path","required":true,"schema":{"type":"string","title":"Station"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"path","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["stations"],"summary":"Place Station","description":"Move a place down the rail, or take it off the rail without losing it.\n\nA SHIPPED PLACE IS MOVED BY BEING OVERRIDDEN, NOT BY EDITING OURS. The rail\nmerges `harnesses/workspace/` with the shop's tree and the shop's copy wins\nby name, so a shop reordering a place we ship gets its own `_meta.md` with\nthe new rank committed to its own tree — and our template is untouched for\nevery other shop on the box. Same override `place_view` writes for a screen.","operationId":"place_station_v1_teams__team_id__stations__station__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"station","in":"path","required":true,"schema":{"type":"string","title":"Station"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelPlacement"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelWrite"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["stations"],"summary":"Delete Station","description":"Delete a place: the folder, everything filed in it, and its screens.\n\nWHAT A PERSON MEANS BY DELETING A PLACE is that the place is gone — not that\nits notes survive in a folder nothing opens and its screens reappear at the\ntop of the rail. So this is one commit over the whole set, and the menu says\nso before the click.\n\n`-f` ON THE `git rm`, DELIBERATELY. A folder holds hundreds of files and the\nagent may have touched one since its last commit; without it a single dirty\nnote refuses the whole act and the owner reports delete as broken — which is\nthe exact bug the page delete was already fixed for (2026-08-19). What is\nlost is a change git never had; everything committed is in the history.\n\nOURS IS NOT THE SHOP'S TO UNLINK. A place we ship lives in this repo, so it\nleaves by being overridden: the shop's own `_meta.md` marked `hidden: true`,\nwhich is this place gone from this shop's rail and our template untouched\nfor everyone else.\n\nWHAT DOES NOT GO: lines said in the channel (`channel_messages`) are rows in\nthe database, not files, and they are addressed by name — a place made again\nunder the same name finds them waiting. That is deliberate: this endpoint\ndeletes a shop's OWN writing, and a delete that also erased what customers\nsaid would be a different and much larger promise.","operationId":"delete_station_v1_teams__team_id__stations__station__delete","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"station","in":"path","required":true,"schema":{"type":"string","title":"Station"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelWrite"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/views/{kind}":{"get":{"tags":["stations"],"summary":"Read View","description":"Every note of one kind, newest first — the list behind a station row.\n\nA KIND IS NOT A FOLDER, and that is the whole reason this exists beside the\nstation read. Calls are filed under the person they belong to: 109 sit in\n`worker/local/calls/`, 41 more under `customer/robert-liu/calls/`, and more\nwherever the next caller lands. Listing a directory would find one pile and\nsilently miss the rest, so the query is `kind:` in the frontmatter and the\nlocation is left to the agent — which is what lets it reorganise the tree\nwithout breaking a surface.\n\nPROJECTED, NOT WHOLE. A row needs a title, a party and a time; a call\ntranscript is thousands of words. Bodies arrive when one is opened\n(`path=`), never a hundred at a time to draw a list.","operationId":"read_view_v1_teams__team_id__views__kind__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"kind","in":"path","required":true,"schema":{"type":"string","title":"Kind"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"path","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"}},{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sort"}},{"name":"where","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Where"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ViewRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/views/{ref}":{"patch":{"tags":["stations"],"summary":"Place View","description":"Take a screen off the rail, or put it back at a rank.\n\nA STARTER SCREEN IS TAKEN OFF BY OVERRIDING IT, NOT BY EDITING OURS. The\nrail merges `harnesses/workspace/` with the shop's tree and the shop's copy\nwins by `ref` — that override is what `presented` is built on. So a shop\nthat wants our Morning Pulse off its rail gets its own copy of the record\nwith the rank cleared, committed to its own tree, and our template is\nuntouched for every other shop on the box.","operationId":"place_view_v1_teams__team_id__views__ref__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"path","required":true,"schema":{"type":"string","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RailPlacement"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PageWrite"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["stations"],"summary":"Delete View","description":"Delete a page: the record, and the drawing that was standing beside it.\n\nTHE DRAWING GOES WITH THE RECORD. `.artifacts/<stem>.jsx` (or `<stem>.html`)\nis how a record is SHOWN — the `.md` is storage and the drawn page is the\nrepresentation. Leaving the drawing behind would leave a screen in the tree\nthat nothing can open and nothing can explain, which is worse than either\noutcome the owner asked for.\n\nOURS IS NOT THE SHOP'S TO UNLINK — SO IT IS OVERRIDDEN INSTEAD. A starter\nscreen lives in THIS repo, not in the team's tree, and unlinking it would\ntake it off every shop on the box. This used to answer 409 and say \"take it\noff the rail instead\", which is a sentence nobody reads: the click did\nnothing, the row came back on the next read, and the owner reported delete\nas broken (2026-08-19). A shop deleting one of our screens now gets the\noverride `place_view` already documents — its OWN copy of the record with\nthe rank cleared, committed to its own tree — so the page leaves this shop's\nrail for good and our template is untouched for everyone else.","operationId":"delete_view_v1_teams__team_id__views__ref__delete","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"path","required":true,"schema":{"type":"string","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PageWrite"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/schema":{"get":{"tags":["capsule"],"summary":"Capsule Schema","description":"Every kind, its fields, their inferred types, and `fill`.","operationId":"capsule_schema_v1_teams__team_id__capsule_schema_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Schema V1 Teams  Team Id  Capsule Schema Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/records":{"get":{"tags":["capsule"],"summary":"Capsule Records","description":"The rows. One generic list for every kind, including the ones we have\nnever heard of.","operationId":"capsule_records_v1_teams__team_id__capsule_records_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Records V1 Teams  Team Id  Capsule Records Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/records/{ref}":{"get":{"tags":["capsule"],"summary":"Capsule Record","description":"One record, plus what points AT it — the backlinks that answer \"what did\nwe last do to this machine\" with no traversal engine.","operationId":"capsule_record_v1_teams__team_id__capsule_records__ref__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"path","required":true,"schema":{"type":"string","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Record V1 Teams  Team Id  Capsule Records  Ref  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/schedule":{"get":{"tags":["capsule"],"summary":"Capsule Schedule","description":"What is on the books. `layer` narrows to one facet — bookings, service,\nholds, payroll — which is also exactly what one ICS feed carries.","operationId":"capsule_schedule_v1_teams__team_id__capsule_schedule_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"from","in":"query","required":true,"schema":{"type":"string","title":"From"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","title":"To"}},{"name":"subject","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Subject"}},{"name":"layer","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Layer"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Schedule V1 Teams  Team Id  Capsule Schedule Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/availability":{"get":{"tags":["capsule"],"summary":"Capsule Availability","description":"Free, committed or blocked — with a reason on every span.\n\n`subject` asks about one thing; `kind` asks about a fleet. A subject the\ncaller may not read is ABSENT rather than unavailable, because those are\ndifferent answers and conflating them leaks.","operationId":"capsule_availability_v1_teams__team_id__capsule_availability_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"from","in":"query","required":true,"schema":{"type":"string","title":"From"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","title":"To"}},{"name":"subject","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Subject"}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","default":"equipment","title":"Kind"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Availability V1 Teams  Team Id  Capsule Availability Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/capacity":{"get":{"tags":["capsule"],"summary":"Capsule Capacity","description":"HOW MANY, not which. \"Have you got a forklift Thursday\" is a count.\n\nA shop with five identical 8FGU25s is never asked whether unit three is\nfree; it is asked whether it has one. Answering that from a per-unit window\nlist means the desk doing arithmetic across every unit and every day it was\nasked about — which it can do, and does inconsistently, and should not have\nto. The capsule has counted this since it shipped; nothing exposed it.","operationId":"capsule_capacity_v1_teams__team_id__capsule_capacity_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"from","in":"query","required":true,"schema":{"type":"string","title":"From"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","title":"To"}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","default":"equipment","title":"Kind"}},{"name":"group_by","in":"query","required":false,"schema":{"type":"string","default":"model","title":"Group By"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Capacity V1 Teams  Team Id  Capsule Capacity Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/reservations":{"post":{"tags":["capsule"],"summary":"Capsule Book","description":"Take the slot, or explain precisely why not.\n\nA conflict is 409 and carries the clashing rows AND the next opening — the\ndifference between a desk that answers a customer and one that stonewalls.","operationId":"capsule_book_v1_teams__team_id__capsule_reservations_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BookRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Book V1 Teams  Team Id  Capsule Reservations Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/demand":{"post":{"tags":["capsule"],"summary":"Capsule Waitlist","description":"File a no, so a cancellation can hand the desk their name.\n\n422 when the subject names nothing this fleet has — and the body carries the\nmodels that DO exist, because a want filed against a thing the shop does not\nown can never be matched to a freed window and is worse than no record: it\nreads, to anyone later, like a customer who was served.","operationId":"capsule_waitlist_v1_teams__team_id__capsule_demand_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DemandRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Waitlist V1 Teams  Team Id  Capsule Demand Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/capsule/reservations/{ref}":{"delete":{"tags":["capsule"],"summary":"Capsule Release","description":"Cancel. `status: cancelled` is settled, so it drops out of every claim on\nthe very next read — nothing to clean up, no second copy to forget.","operationId":"capsule_release_v1_teams__team_id__capsule_reservations__ref__delete","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"path","required":true,"schema":{"type":"string","title":"Ref"}},{"name":"reason","in":"query","required":false,"schema":{"type":"string","default":"","title":"Reason"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Capsule Release V1 Teams  Team Id  Capsule Reservations  Ref  Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/overview":{"get":{"tags":["team repo"],"summary":"Repo Overview","description":"The branch bar and the About panel in one read.\n\nAlso the row a workspace index draws: an operator asking \"which customer\ntrees are alive\" wants last-touched and commit count per workspace, and one\ncall per team beats six.\n\n`uncommitted` has no equivalent on a git host and is the reason this is not\na link to GitHub: it counts writes the agent has made but not yet committed,\nwhich are real content the next call will read.\n\nA TEAM WITH NO TREE IS THE EMPTY STATE, NOT A 404 — the same answer `/tree`\ngives, for the same reason. This is the row a workspace index draws, and a\nteam the agent has never written into is a normal row rather than a hole.\nIt raised 404 until 2026-08-09, which cost two things: the workspace list\nfired one 404 per treeless team every poll, and the client had to `catch`\nto draw the row at all — so a genuine failure (403, 500, network) was\nindistinguishable from \"never written to\" and got reported to the operator\nas fact about their data. `initialized` was already in the response and\nalready typed on the client; it was just never once false.","operationId":"repo_overview_v1_teams__team_id__repo_overview_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Overview V1 Teams  Team Id  Repo Overview Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/commits":{"get":{"tags":["team repo"],"summary":"Repo Commits","description":"The log — one page of it, newest first, with each commit's BODY.\n\nThe body is not decoration here. A runtime commit says what work it was in\nthe subject and then names the run (`turn: run <uuid>`) and every file it\ntouched with that file's title underneath. Dropping it to save bytes would\nthrow away the only link between a change and the conversation that caused\nit.\n\n`act` is the other axis: not \"what changed\" but WHAT THE BUSINESS DID. It\nmatches git's own `--grep` against the `Act:` index line, so finding every\ncall this month never opens a single commit body — and it composes with\n`since`, which is the difference between ~15 ms and ~1 s per 100k commits.","operationId":"repo_commits_v1_teams__team_id__repo_commits_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"path","in":"query","required":false,"schema":{"type":"string","default":"","title":"Path"}},{"name":"author","in":"query","required":false,"schema":{"type":"string","default":"","title":"Author"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","default":"","title":"Since"}},{"name":"grep","in":"query","required":false,"schema":{"type":"string","default":"","title":"Grep"}},{"name":"act","in":"query","required":false,"schema":{"type":"string","default":"","title":"Act"}},{"name":"skip","in":"query","required":false,"schema":{"type":"integer","maximum":100000,"minimum":0,"default":0,"title":"Skip"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":30,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Commits V1 Teams  Team Id  Repo Commits Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/actions":{"get":{"tags":["team repo"],"summary":"Repo Actions","description":"What does this workspace DO — the verb histogram over a bounded window.\n\nThis is what lets the console offer real filter chips. A hardcoded list of\nverbs would be wrong the day a new tool ships and would quietly hide the\nthing the business does most; the vocabulary here is read out of the history\nitself, so a verb invented tomorrow appears with no code change.\n\nCounted from the `did:` blocks, falling back to a commit's `Act:` line when\nit has an index but no block — the block is the action count (three texts in\none commit are three), the index is only a list of verbs.\n\nThe window is DECLARED, never implied: `since`, the real first and last\ncommit scanned, and `complete: false` the moment the cap bites. A truncated\ncount printed as a total is the one way this endpoint could lie.","operationId":"repo_actions_v1_teams__team_id__repo_actions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","default":"90.days.ago","title":"Since"}},{"name":"cap","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":5000,"title":"Cap"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RepoActionsWindow"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/commit/{sha}":{"get":{"tags":["team repo"],"summary":"Repo Commit","description":"One commit: what it says, and every line it changed.\n\nA MERGE is diffed against its first parent rather than shown empty. Our\nhistory has real ones — an owner pulling their workspace from the mirror\nmakes one — and `git show` on a merge prints no patch at all, which reads on\na page as \"this commit changed nothing\".","operationId":"repo_commit_v1_teams__team_id__repo_commit__sha__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"sha","in":"path","required":true,"schema":{"type":"string","title":"Sha"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Commit V1 Teams  Team Id  Repo Commit  Sha  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/files":{"get":{"tags":["team repo"],"summary":"Repo Files","description":"Every path in the tree, flat, from ONE `ls-tree -r`.\n\nThe directory listing is deliberately one level at a time; this is the other\nquestion — \"what does this workspace contain, everywhere\" — and answering it\nby walking `/tree` per folder is N round trips for something git prints in\none.\n\nIt exists because the media view has to JOIN. An R2 recording knows its call\nid and nothing else; the document that explains that call is a path in here\n(`customer/sms-14155550188/calls/2026-08-08-call-99f26478.md`). One read of\nthe path list turns a bucket of audio files into a customer's history.","operationId":"repo_files_v1_teams__team_id__repo_files_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"prefix","in":"query","required":false,"schema":{"type":"string","default":"","title":"Prefix"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":20000,"minimum":1,"default":5000,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Files V1 Teams  Team Id  Repo Files Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/labels":{"get":{"tags":["team repo"],"summary":"Repo Labels","description":"Every document's own frontmatter, and the plane it lands on.\n\nThe permissions view answers one question (who can read this) for the whole\ntree at once. This is the other half of the same scan: what each document\nSAYS ABOUT ITSELF — `kind: call_transcript`, `status: open`, whatever the\nagent chose to label it with. A listing that shows those labels is a listing\na person can read without opening anything.\n\nDeliberately not an allowlist of interesting keys: the vocabulary here is\nwhatever this business's agent actually writes, and a hardcoded list of\nfield names would go stale the first time it invents a useful one.","operationId":"repo_labels_v1_teams__team_id__repo_labels_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Labels V1 Teams  Team Id  Repo Labels Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/recent-files":{"get":{"tags":["team repo"],"summary":"Repo Recent Files","description":"The files this workspace touched most recently, newest first.\n\nA directory listing answers \"what is in here\"; it cannot answer \"what just\nhappened\", which is the question somebody opening a live workspace actually\nhas. The tree's own recency is per FOLDER — `customer/` changed a minute ago\ntells you nothing about which of its twelve files did.\n\nOne history walk, taking the first commit that touches each path, the same\ntrick `_annotate_last_commits` uses for a single directory level. Deleted\npaths are dropped: a link to a file that is gone is worse than no link.","operationId":"repo_recent_files_v1_teams__team_id__repo_recent_files_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":12,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Recent Files V1 Teams  Team Id  Repo Recent Files Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/blame":{"get":{"tags":["team repo"],"summary":"Repo Blame","description":"Who last touched each line, and in which commit.\n\nOn a tree written mostly by an agent this is the question with the most\nvalue per pixel: it says which sentence of a lesson the owner wrote by hand\nand which the agent taught itself, without opening a single commit.","operationId":"repo_blame_v1_teams__team_id__repo_blame_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}},{"name":"ref","in":"query","required":false,"schema":{"type":"string","default":"HEAD","title":"Ref"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Blame V1 Teams  Team Id  Repo Blame Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/calendar":{"get":{"tags":["team repo"],"summary":"Repo Calendar","description":"Every clock this workspace runs on, over one window.\n\nBookings come from the tree through the SAME projection the desk reads, so\nthe grid cannot disagree with what the agent was told — a calendar built\nfrom its own query is a second source of truth, and this architecture has\nspent its whole life removing those.\n\nA TEAM WITH NO TREE IS THE EMPTY STATE, not a 404, for the same reason\n`/overview` gives one: a workspace nobody has written into is a normal row.","operationId":"repo_calendar_v1_teams__team_id__repo_calendar_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"from","in":"query","required":false,"schema":{"type":"string","default":"","title":"From"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","default":"","title":"To"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Repo Calendar V1 Teams  Team Id  Repo Calendar Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/look/{slug}/{name}":{"get":{"tags":["team repo"],"summary":"Repo Look Shot","description":"One screenshot the `look` tool wrote, so a transcript can SHOW what it saw.\n\n`look` is the fourth most-called tool on this lane (650 of 9,315 calls in\nthe last 400 receipts) and its answer is a paragraph of prose about a\npicture the reader cannot see. The prose says \"the ON THE BOARD grid stops\nafter WED\"; without the shot beside it that is a claim, and with it, it is\nevidence. This route is the only thing standing between the two.","operationId":"repo_look_shot_v1_teams__team_id__repo_look__slug___name__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}},{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys":{"get":{"tags":["ops deploys"],"summary":"Board","description":"Everything on the branch and where each commit got to. Sources that\ncould not be read are named in ``errors`` and their target reads ``blind``.","operationId":"board_v1_ops_deploys_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":40,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Board V1 Ops Deploys Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/api/traffic":{"post":{"tags":["ops deploys"],"summary":"Api Traffic","operationId":"api_traffic_v1_ops_deploys_api_traffic_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrafficBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Traffic V1 Ops Deploys Api Traffic Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/api/scale":{"post":{"tags":["ops deploys"],"summary":"Api Scale","operationId":"api_scale_v1_ops_deploys_api_scale_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScaleBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Scale V1 Ops Deploys Api Scale Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/api/rebuild":{"post":{"tags":["ops deploys"],"summary":"Api Rebuild","operationId":"api_rebuild_v1_ops_deploys_api_rebuild_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShaBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Api Rebuild V1 Ops Deploys Api Rebuild Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/worker/roll":{"post":{"tags":["ops deploys"],"summary":"Worker Roll","operationId":"worker_roll_v1_ops_deploys_worker_roll_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShaBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Worker Roll V1 Ops Deploys Worker Roll Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/worker/scale":{"post":{"tags":["ops deploys"],"summary":"Worker Scale","operationId":"worker_scale_v1_ops_deploys_worker_scale_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstancesBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Worker Scale V1 Ops Deploys Worker Scale Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/site/rollback":{"post":{"tags":["ops deploys"],"summary":"Site Rollback","operationId":"site_rollback_v1_ops_deploys_site_rollback_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RollbackSiteBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Site Rollback V1 Ops Deploys Site Rollback Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/site/redeploy":{"post":{"tags":["ops deploys"],"summary":"Site Redeploy","operationId":"site_redeploy_v1_ops_deploys_site_redeploy_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RerunBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Site Redeploy V1 Ops Deploys Site Redeploy Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ops/deploys/site/dispatch":{"post":{"tags":["ops deploys"],"summary":"Site Dispatch","operationId":"site_dispatch_v1_ops_deploys_site_dispatch_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DispatchBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Site Dispatch V1 Ops Deploys Site Dispatch Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/activity":{"post":{"tags":["activity log"],"summary":"Publish Activity","description":"Publish one deliberate owner outcome from the current agent run.","operationId":"publish_activity_v1_teams__team_id__activity_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublishActivityRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Publish Activity V1 Teams  Team Id  Activity Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["activity log"],"summary":"Activity Log","description":"Read only explicitly published entries; never infer from runs or Git.","operationId":"activity_log_v1_teams__team_id__activity_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"action_type","in":"query","required":false,"schema":{"type":"string","default":"","title":"Action Type"}},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Since"}},{"name":"skip","in":"query","required":false,"schema":{"type":"integer","maximum":100000,"minimum":0,"default":0,"title":"Skip"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":30,"title":"Limit"}},{"name":"debug","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Debug"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Activity Log V1 Teams  Team Id  Activity Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/activity/types":{"get":{"tags":["activity log"],"summary":"Activity Types","operationId":"activity_types_v1_teams__team_id__activity_types_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Activity Types V1 Teams  Team Id  Activity Types Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/incident-reports":{"post":{"tags":["incident reports"],"summary":"Create Incident Report","description":"Capture the canonical runtime context around one observed failure.","operationId":"create_incident_report_v1_teams__team_id__incident_reports_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIncidentReportRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Incident Report V1 Teams  Team Id  Incident Reports Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["incident reports"],"summary":"List Incident Reports","operationId":"list_incident_reports_v1_teams__team_id__incident_reports_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"enum":["open","resolved","dismissed"],"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"session_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Incident Reports V1 Teams  Team Id  Incident Reports Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/incident-reports/{report_id}":{"get":{"tags":["incident reports"],"summary":"Get Incident Report","operationId":"get_incident_report_v1_teams__team_id__incident_reports__report_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"report_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Report Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Incident Report V1 Teams  Team Id  Incident Reports  Report Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/repo/permission-preview":{"get":{"tags":["team repo"],"summary":"Repo Permission Preview","description":"What ONE reader gets from this tree — run, not described.\n\n`?as=public|team|manager|owner` plays a plane. `?caller=+1555…` or\n`?caller=someone@example.com` plays a PERSON: the number is resolved against\nverified active membership and the customer spine by the same function a\nringing phone uses, and the plane it earns is the same call the delegate\nlane makes. Read-only; an unrecognised caller is a result, never an error.","operationId":"repo_permission_preview_v1_teams__team_id__repo_permission_preview_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"as","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":32},{"type":"null"}],"title":"As"}},{"name":"caller","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":254},{"type":"null"}],"title":"Caller"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionPreview"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/skills":{"get":{"tags":["skills"],"summary":"List Skills","operationId":"list_skills_v1_teams__team_id__skills_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Skills V1 Teams  Team Id  Skills Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/skills/{name}":{"get":{"tags":["skills"],"summary":"Read Skill","operationId":"read_skill_v1_teams__team_id__skills__name__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Skill V1 Teams  Team Id  Skills  Name  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/questions":{"get":{"tags":["team questions"],"summary":"List Open Questions","description":"Every question still waiting on a human.","operationId":"list_open_questions_v1_teams__team_id__questions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Open Questions V1 Teams  Team Id  Questions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/questions/{question_id}/answer":{"post":{"tags":["team questions"],"summary":"Answer Question","description":"Answer through the file ingress the waiting harness already polls.","operationId":"answer_question_v1_teams__team_id__questions__question_id__answer_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"question_id","in":"path","required":true,"schema":{"type":"string","title":"Question Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnswerRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Answer Question V1 Teams  Team Id  Questions  Question Id  Answer Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/ui-hooks":{"get":{"tags":["team ui hooks"],"summary":"List Ui Hooks","description":"Every screen this shop's agent has asked to be put in front of the owner.","operationId":"list_ui_hooks_v1_teams__team_id__ui_hooks_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Ui Hooks V1 Teams  Team Id  Ui Hooks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hooks/{token}":{"post":{"tags":["hooks"],"summary":"Submit","operationId":"submit_v1_hooks__token__post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"options":{"tags":["hooks"],"summary":"Preflight","operationId":"preflight_v1_hooks__token__options","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/hooks":{"post":{"tags":["hooks"],"summary":"Create Hook","description":"Mint a hook. The plaintext token is returned HERE AND NOWHERE ELSE — only\nits hash is stored, so a database read can never yield a working endpoint.","operationId":"create_hook_v1_teams__team_id__hooks_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HookCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Hook V1 Teams  Team Id  Hooks Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["hooks"],"summary":"List Hooks","operationId":"list_hooks_v1_teams__team_id__hooks_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Hooks V1 Teams  Team Id  Hooks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/hooks/{hook_id}/submissions":{"get":{"tags":["hooks"],"summary":"Hook Submissions","description":"What actually arrived. Reconstructable long after the hook expired —\n\"the owner picked option B\" must survive the form that captured it.","operationId":"hook_submissions_v1_teams__team_id__hooks__hook_id__submissions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"hook_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Hook Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Hook Submissions V1 Teams  Team Id  Hooks  Hook Id  Submissions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/hooks/{hook_id}":{"delete":{"tags":["hooks"],"summary":"Revoke Hook","operationId":"revoke_hook_v1_teams__team_id__hooks__hook_id__delete","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"hook_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Hook Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/incoming":{"post":{"tags":["provider webhooks"],"summary":"Twilio Incoming","operationId":"twilio_incoming_v1_provider_webhooks_twilio_lines__line_id__incoming_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/sms":{"post":{"tags":["provider webhooks"],"summary":"Twilio Incoming Sms","description":"Ingest one real inbound SMS (the number's SmsUrl webhook).","operationId":"twilio_incoming_sms_v1_provider_webhooks_twilio_lines__line_id__sms_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/status":{"post":{"tags":["provider webhooks"],"summary":"Twilio Status By Provider Id","operationId":"twilio_status_by_provider_id_v1_provider_webhooks_twilio_lines__line_id__status_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/calls/{call_id}/status":{"post":{"tags":["provider webhooks"],"summary":"Twilio Status By Call Id","operationId":"twilio_status_by_call_id_v1_provider_webhooks_twilio_lines__line_id__calls__call_id__status_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/telnyx/lines/{line_id}/incoming":{"post":{"tags":["provider webhooks"],"summary":"Telnyx Incoming","operationId":"telnyx_incoming_v1_provider_webhooks_telnyx_lines__line_id__incoming_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/telnyx/lines/{line_id}/voice/answer":{"post":{"tags":["provider webhooks"],"summary":"Telnyx Voice Answer","description":"Return Stormy's existing TeXML-compatible realtime voice instructions.","operationId":"telnyx_voice_answer_v1_provider_webhooks_telnyx_lines__line_id__voice_answer_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/telnyx/lines/{line_id}/sms":{"post":{"tags":["provider webhooks"],"summary":"Telnyx Message Event","operationId":"telnyx_message_event_v1_provider_webhooks_telnyx_lines__line_id__sms_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/telnyx/lines/{line_id}/status":{"post":{"tags":["provider webhooks"],"summary":"Telnyx Status By Provider Id","operationId":"telnyx_status_by_provider_id_v1_provider_webhooks_telnyx_lines__line_id__status_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/telnyx/lines/{line_id}/calls/{call_id}/status":{"post":{"tags":["provider webhooks"],"summary":"Telnyx Status By Call Id","operationId":"telnyx_status_by_call_id_v1_provider_webhooks_telnyx_lines__line_id__calls__call_id__status_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/agentmail/events":{"post":{"tags":["provider webhooks"],"summary":"Agentmail Incoming Message","description":"Ingest one real inbound email (the org's `message.received` webhook).","operationId":"agentmail_incoming_message_v1_provider_webhooks_agentmail_events_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Agentmail Incoming Message V1 Provider Webhooks Agentmail Events Post"}}}}}}},"/v1/provider-webhooks/sendblue/events":{"post":{"tags":["provider webhooks"],"summary":"Sendblue Incoming","description":"Ingest one Sendblue event: inbound message, outbound status, or call log.","operationId":"sendblue_incoming_v1_provider_webhooks_sendblue_events_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Sendblue Incoming V1 Provider Webhooks Sendblue Events Post"}}}}}}},"/sendblue/webhook":{"post":{"tags":["provider webhooks"],"summary":"Sendblue Incoming","description":"Ingest one Sendblue event: inbound message, outbound status, or call log.","operationId":"sendblue_incoming_sendblue_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Sendblue Incoming Sendblue Webhook Post"}}}}}}},"/v1/provider-webhooks/telegram/{connection_id}":{"post":{"tags":["provider webhooks"],"summary":"Receive Webhook","operationId":"receive_webhook_v1_provider_webhooks_telegram__connection_id__post","parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"boolean"},"title":"Response Receive Webhook V1 Provider Webhooks Telegram  Connection Id  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/gmail/{endpoint_id}":{"post":{"tags":["gmail sync"],"summary":"Accept Gmail Push","description":"Acknowledge only after authentication and a durable queue commit.","operationId":"accept_gmail_push_v1_webhooks_gmail__endpoint_id__post","parameters":[{"name":"endpoint_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Endpoint Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Accept Gmail Push V1 Webhooks Gmail  Endpoint Id  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/email/accounts/{account_id}/gmail-sync":{"post":{"tags":["gmail sync"],"summary":"Configure Gmail Sync","operationId":"configure_gmail_sync_v1_teams__team_id__email_accounts__account_id__gmail_sync_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"account_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Account Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfigureGmailSyncRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Configure Gmail Sync V1 Teams  Team Id  Email Accounts  Account Id  Gmail Sync Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["gmail sync"],"summary":"Get Gmail Sync Status","operationId":"get_gmail_sync_status_v1_teams__team_id__email_accounts__account_id__gmail_sync_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"account_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Account Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Gmail Sync Status V1 Teams  Team Id  Email Accounts  Account Id  Gmail Sync Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/members":{"get":{"tags":["teams"],"summary":"List Members","operationId":"list_members_v1_teams__team_id__members_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["invited","active","suspended","removed"],"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"membership_kind","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"enum":["internal","external","agent","service"],"type":"string"}},{"type":"null"}],"title":"Membership Kind"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Members V1 Teams  Team Id  Members Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["teams"],"summary":"Create Member","operationId":"create_member_v1_teams__team_id__members_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateMemberRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Member V1 Teams  Team Id  Members Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/members/{member_principal_id}":{"patch":{"tags":["teams"],"summary":"Update Member","operationId":"update_member_v1_teams__team_id__members__member_principal_id__patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"member_principal_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Member Principal Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMemberRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Member V1 Teams  Team Id  Members  Member Principal Id  Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/members/{member_principal_id}/contacts":{"post":{"tags":["teams"],"summary":"Add Member Contact","operationId":"add_member_contact_v1_teams__team_id__members__member_principal_id__contacts_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"member_principal_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Member Principal Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddContactRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Add Member Contact V1 Teams  Team Id  Members  Member Principal Id  Contacts Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/members/{member_principal_id}/events":{"get":{"tags":["teams"],"summary":"List Member Events","operationId":"list_member_events_v1_teams__team_id__members__member_principal_id__events_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"member_principal_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Member Principal Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Member Events V1 Teams  Team Id  Members  Member Principal Id  Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/voice/answer":{"post":{"tags":["provider voice"],"summary":"Voice Answer","operationId":"voice_answer_v1_provider_webhooks_twilio_lines__line_id__voice_answer_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/voice/recording":{"post":{"tags":["provider voice"],"summary":"Voice Recording","operationId":"voice_recording_v1_provider_webhooks_twilio_lines__line_id__voice_recording_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/voice/transfer":{"post":{"tags":["provider voice"],"summary":"Voice Transfer Result","description":"Signed TeXML `<Dial action>` result for a verified-team takeover.","operationId":"voice_transfer_result_v1_provider_webhooks_twilio_lines__line_id__voice_transfer_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/voice/shadow-forward":{"post":{"tags":["provider voice"],"summary":"Voice Shadow Forward Result","description":"Signed TeXML `<Dial action>` result for a no-model shadow call.","operationId":"voice_shadow_forward_result_v1_provider_webhooks_twilio_lines__line_id__voice_shadow_forward_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/voice/owner-handoff-eval/answer":{"post":{"tags":["provider voice"],"summary":"Owner Handoff Eval Answer","description":"Signed Twilio answer for the explicitly opted-in real-human drill.","operationId":"owner_handoff_eval_answer_v1_provider_webhooks_twilio_lines__line_id__voice_owner_handoff_eval_answer_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/twilio/lines/{line_id}/voice/owner-handoff-eval/status":{"post":{"tags":["provider voice"],"summary":"Owner Handoff Eval Status","description":"Authenticate the eval parent-leg callback; target call owns close-out.","operationId":"owner_handoff_eval_status_v1_provider_webhooks_twilio_lines__line_id__voice_owner_handoff_eval_status_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/telnyx/lines/{line_id}/voice/transfer":{"post":{"tags":["provider voice"],"summary":"Voice Transfer Result","description":"Signed TeXML `<Dial action>` result for a verified-team takeover.","operationId":"voice_transfer_result_v1_provider_webhooks_telnyx_lines__line_id__voice_transfer_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/provider-webhooks/telnyx/lines/{line_id}/voice/shadow-forward":{"post":{"tags":["provider voice"],"summary":"Voice Shadow Forward Result","description":"Signed TeXML `<Dial action>` result for a no-model shadow call.","operationId":"voice_shadow_forward_result_v1_provider_webhooks_telnyx_lines__line_id__voice_shadow_forward_post","parameters":[{"name":"line_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Line Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/lines":{"get":{"tags":["phone simulator"],"summary":"List Simulatable Lines","operationId":"list_simulatable_lines_v1_teams__team_id__phone_simulator_lines_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Simulatable Lines V1 Teams  Team Id  Phone Simulator Lines Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/owner-handoff-human-evals":{"post":{"tags":["phone simulator"],"summary":"Start Owner Handoff Human Eval","description":"Call a Stormy line from an AI persona, allowing a real owner transfer.","operationId":"start_owner_handoff_human_eval_v1_teams__team_id__phone_simulator_owner_handoff_human_evals_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OwnerHandoffHumanEvalRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Start Owner Handoff Human Eval V1 Teams  Team Id  Phone Simulator Owner Handoff Human Evals Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/browser-calls":{"post":{"tags":["phone simulator"],"summary":"Start Browser Call","description":"Call the team's line from the authenticated owner's current app page.","operationId":"start_browser_call_v1_teams__team_id__phone_simulator_browser_calls_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserCallRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Start Browser Call V1 Teams  Team Id  Phone Simulator Browser Calls Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/media-calls":{"post":{"tags":["phone simulator"],"summary":"Start Media Bridge Call","description":"Create a provider-free call for the exact local phone media bridge.\n\nUnlike a browser call, this leaves the voice session unbound. The local\nTwilio-wire simulator must connect through the ordinary media WebSocket,\nwhose canonical bind then owns the session exactly as a real call would.","operationId":"start_media_bridge_call_v1_teams__team_id__phone_simulator_media_calls_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartCallRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Start Media Bridge Call V1 Teams  Team Id  Phone Simulator Media Calls Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls":{"post":{"tags":["phone simulator"],"summary":"Start Simulated Call","description":"Create the canonical call and bind it to browser WebRTC.","operationId":"start_simulated_call_v1_teams__team_id__phone_simulator_calls_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartCallRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Start Simulated Call V1 Teams  Team Id  Phone Simulator Calls Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls/{call_id}/realtime/session":{"post":{"tags":["phone simulator"],"summary":"Create Realtime Browser Session","description":"Exchange browser SDP for the shared Stormy Realtime session.","operationId":"create_realtime_browser_session_v1_teams__team_id__phone_simulator_calls__call_id__realtime_session_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls/{call_id}/realtime/prefetch":{"post":{"tags":["phone simulator"],"summary":"Prefetch Realtime Browser Delegate Context","description":"Begin the read-only half of a possible hand-off at speech end.","operationId":"prefetch_realtime_browser_delegate_context_v1_teams__team_id__phone_simulator_calls__call_id__realtime_prefetch_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RealtimePrefetchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Prefetch Realtime Browser Delegate Context V1 Teams  Team Id  Phone Simulator Calls  Call Id  Realtime Prefetch Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls/{call_id}/realtime/tool":{"post":{"tags":["phone simulator"],"summary":"Run Realtime Browser Tool","description":"Run Realtime delegate/end_call against the canonical call.","operationId":"run_realtime_browser_tool_v1_teams__team_id__phone_simulator_calls__call_id__realtime_tool_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RealtimeToolRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Run Realtime Browser Tool V1 Teams  Team Id  Phone Simulator Calls  Call Id  Realtime Tool Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls/{call_id}/realtime/event":{"post":{"tags":["phone simulator"],"summary":"Record Realtime Browser Event","description":"Persist transcript/error sidecars from browser WebRTC.","operationId":"record_realtime_browser_event_v1_teams__team_id__phone_simulator_calls__call_id__realtime_event_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls/{call_id}/recording":{"post":{"tags":["phone simulator"],"summary":"Ingest Simulated Recording","description":"Put one active browser simulation's WAV into canonical artifact custody.","operationId":"ingest_simulated_recording_v1_teams__team_id__phone_simulator_calls__call_id__recording_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ingest Simulated Recording V1 Teams  Team Id  Phone Simulator Calls  Call Id  Recording Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls/{call_id}/turns":{"get":{"tags":["phone simulator"],"summary":"List Simulated Turns","operationId":"list_simulated_turns_v1_teams__team_id__phone_simulator_calls__call_id__turns_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Simulated Turns V1 Teams  Team Id  Phone Simulator Calls  Call Id  Turns Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/phone/simulator/calls/{call_id}/hangup":{"post":{"tags":["phone simulator"],"summary":"Hang Up Simulated Call","operationId":"hang_up_simulated_call_v1_teams__team_id__phone_simulator_calls__call_id__hangup_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"call_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Call Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Hang Up Simulated Call V1 Teams  Team Id  Phone Simulator Calls  Call Id  Hangup Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/readiness":{"get":{"tags":["web voice"],"summary":"Read Web Voice Readiness","description":"Whether this active durable conversation may start its browser call.","operationId":"read_web_voice_readiness_v1_teams__team_id__web_voice_sessions__session_id__readiness_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Web Voice Readiness V1 Teams  Team Id  Web Voice Sessions  Session Id  Readiness Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/debug/sessions":{"get":{"tags":["web voice"],"summary":"List Web Voice Debug Sessions","operationId":"list_web_voice_debug_sessions_v1_teams__team_id__web_voice_debug_sessions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Web Voice Debug Sessions V1 Teams  Team Id  Web Voice Debug Sessions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/debug/events":{"get":{"tags":["web voice"],"summary":"Read Web Voice Debug Events","operationId":"read_web_voice_debug_events_v1_teams__team_id__web_voice_sessions__session_id__debug_events_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"After"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Web Voice Debug Events V1 Teams  Team Id  Web Voice Sessions  Session Id  Debug Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/debug/input":{"post":{"tags":["web voice"],"summary":"Send Web Voice Debug Input","operationId":"send_web_voice_debug_input_v1_teams__team_id__web_voice_sessions__session_id__debug_input_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DevVoiceInputRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Send Web Voice Debug Input V1 Teams  Team Id  Web Voice Sessions  Session Id  Debug Input Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/debug/commands":{"get":{"tags":["web voice"],"summary":"Poll Web Voice Debug Commands","operationId":"poll_web_voice_debug_commands_v1_teams__team_id__web_voice_sessions__session_id__debug_commands_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"After"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Poll Web Voice Debug Commands V1 Teams  Team Id  Web Voice Sessions  Session Id  Debug Commands Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/debug/instructions":{"get":{"tags":["web voice"],"summary":"Read Web Voice Debug Instructions","description":"The exact prompt this conversation's next Realtime call would carry.\n\nA GRADER OF THE CALL NEEDS THE GROUND TRUTH THE CALL WAS GIVEN, and until\nthis existed there was nowhere to read it: the SDP route composes the\ninstructions, hands them straight to OpenAI inside a multipart body, and\nreturns an answer SDP. So a bench could prove what the model SAID and never\nwhat it was TOLD — which is the one comparison that separates \"the script is\nwrong\" from \"the script was never in effect\".\n\nIt composes through the same call as the live route rather than restating\nit, so a paragraph added to the prompt cannot go ungraded. Dev-only, like\nevery other route under `debug/`.","operationId":"read_web_voice_debug_instructions_v1_teams__team_id__web_voice_sessions__session_id__debug_instructions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Web Voice Debug Instructions V1 Teams  Team Id  Web Voice Sessions  Session Id  Debug Instructions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/shop-facts":{"get":{"tags":["web voice"],"summary":"Read Web Voice Shop Facts","description":"What we know about this shop RIGHT NOW, for a call already in progress.\n\nTHE CALL'S KNOWLEDGE WAS FROZEN AT CONNECT. The shop snapshot is composed\nonce, into the session instructions, and the research children that go and\nread the shop's website finish MINUTES LATER. So a call placed while they\nwere still running held whatever was known at connect -- on a fresh shop,\nclose to nothing -- and had no way to learn anything afterwards.\n\nThe owner hit it on 2026-08-27 and described it exactly: the call opened by\nasking who it was speaking to, and then \"it is stuck at this point and\nuntil i say something it doesnt continue talking to me really, even though\nthe research jobs are finished\". Both halves are this: no name because the\nresearch had not landed, and no way to pick up when it did.\n\nThat made his spec unbuildable rather than badly prompted -- \"on spin outs\ncome back it can start asking questions\", and the confirm-the-reading beat\n(\"I have you open Monday to Friday, seven to five, is that right?\") could\nonly ever fire on facts that existed BEFORE the call started.\n\nThis is a READ, deliberately. It composes through the same\n`_shop_snapshot` the live route uses, so a fact the connect path can state\nis a fact this path can state, and neither can drift from the other. The\ncaller decides what to do about a change; nothing here speaks.","operationId":"read_web_voice_shop_facts_v1_teams__team_id__web_voice_sessions__session_id__shop_facts_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Web Voice Shop Facts V1 Teams  Team Id  Web Voice Sessions  Session Id  Shop Facts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions":{"post":{"tags":["web voice"],"summary":"Start Web Voice Session","operationId":"start_web_voice_session_v1_teams__team_id__web_voice_sessions_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebVoiceSessionRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Start Web Voice Session V1 Teams  Team Id  Web Voice Sessions Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/realtime/session":{"post":{"tags":["web voice"],"summary":"Create Web Voice Realtime Session","operationId":"create_web_voice_realtime_session_v1_teams__team_id__web_voice_sessions__session_id__realtime_session_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/wakes/stream":{"get":{"tags":["web voice"],"summary":"Stream Web Voice Session Wakes","description":"Push scheduler-owned work accepted after this voice socket started.","operationId":"stream_web_voice_session_wakes_v1_teams__team_id__web_voice_sessions__session_id__wakes_stream_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"since","in":"query","required":true,"schema":{"type":"string","format":"date-time","title":"Since"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/realtime/tool":{"post":{"tags":["web voice"],"summary":"Run Web Voice Realtime Tool","operationId":"run_web_voice_realtime_tool_v1_teams__team_id__web_voice_sessions__session_id__realtime_tool_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RealtimeToolRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Run Web Voice Realtime Tool V1 Teams  Team Id  Web Voice Sessions  Session Id  Realtime Tool Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/voice-transcript":{"get":{"tags":["web voice"],"summary":"Read Web Voice Transcript","description":"What was said on this conversation's browser call, both ways, in order.\n\nReads the `browser_voice` receipt whatever the session's status — an ended\nconversation is exactly the one an operator reads back, so this does not go\nthrough `_session`, which refuses anything but `active`.","operationId":"read_web_voice_transcript_v1_teams__team_id__web_voice_sessions__session_id__voice_transcript_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Read Web Voice Transcript V1 Teams  Team Id  Web Voice Sessions  Session Id  Voice Transcript Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/realtime/event":{"post":{"tags":["web voice"],"summary":"Record Web Voice Event","operationId":"record_web_voice_event_v1_teams__team_id__web_voice_sessions__session_id__realtime_event_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/sessions/{session_id}/hangup":{"post":{"tags":["web voice"],"summary":"Hang Up Web Voice Session","operationId":"hang_up_web_voice_session_v1_teams__team_id__web_voice_sessions__session_id__hangup_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Session Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Hang Up Web Voice Session V1 Teams  Team Id  Web Voice Sessions  Session Id  Hangup Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/web-voice/phone-calls":{"post":{"tags":["web voice"],"summary":"Call This Workspace Owner","description":"Have this shop's front desk ring the caller's own proved mobile.\n\nAnswers in the reach vocabulary — ``ok`` to branch on, ``why`` to print\nverbatim — because a generated screen prints this sentence under the button\na forklift-yard owner just pressed.","operationId":"call_this_workspace_owner_v1_teams__team_id__web_voice_phone_calls_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Call This Workspace Owner V1 Teams  Team Id  Web Voice Phone Calls Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/definitions/sync":{"post":{"tags":["evals"],"summary":"Sync Eval Definitions","operationId":"sync_eval_definitions_v1_teams__team_id__evals_definitions_sync_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncEvalDefinitionsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Sync Eval Definitions V1 Teams  Team Id  Evals Definitions Sync Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/definitions":{"get":{"tags":["evals"],"summary":"List Eval Definitions","operationId":"list_eval_definitions_v1_teams__team_id__evals_definitions_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"name":"lifecycle","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lifecycle"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Eval Definitions V1 Teams  Team Id  Evals Definitions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/definitions/{definition_key}/routing":{"patch":{"tags":["evals"],"summary":"Update Eval Definition Routing","operationId":"update_eval_definition_routing_v1_teams__team_id__evals_definitions__definition_key__routing_patch","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"definition_key","in":"path","required":true,"schema":{"type":"string","title":"Definition Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateEvalRoutingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Eval Definition Routing V1 Teams  Team Id  Evals Definitions  Definition Key  Routing Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/definitions/{definition_key}":{"get":{"tags":["evals"],"summary":"Get Eval Definition","operationId":"get_eval_definition_v1_teams__team_id__evals_definitions__definition_key__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"definition_key","in":"path","required":true,"schema":{"type":"string","title":"Definition Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Eval Definition V1 Teams  Team Id  Evals Definitions  Definition Key  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/runs":{"post":{"tags":["evals"],"summary":"Ingest Eval Receipt","operationId":"ingest_eval_receipt_v1_teams__team_id__evals_runs_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IngestEvalReceiptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Ingest Eval Receipt V1 Teams  Team Id  Evals Runs Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["evals"],"summary":"List Eval Runs","operationId":"list_eval_runs_v1_teams__team_id__evals_runs_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Eval Runs V1 Teams  Team Id  Evals Runs Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/runs/{eval_run_id}":{"get":{"tags":["evals"],"summary":"Get Eval Run","operationId":"get_eval_run_v1_teams__team_id__evals_runs__eval_run_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"eval_run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Eval Run Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Eval Run V1 Teams  Team Id  Evals Runs  Eval Run Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/escalations":{"post":{"tags":["evals"],"summary":"Create Eval Escalation","operationId":"create_eval_escalation_v1_teams__team_id__evals_escalations_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEvalEscalationRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Eval Escalation V1 Teams  Team Id  Evals Escalations Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["evals"],"summary":"List Eval Escalations","operationId":"list_eval_escalations_v1_teams__team_id__evals_escalations_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"definition_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Eval Escalations V1 Teams  Team Id  Evals Escalations Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/escalations/{escalation_id}":{"get":{"tags":["evals"],"summary":"Get Eval Escalation","description":"Poll target for halted harnesses; ``wait_s`` long-polls for an answer.","operationId":"get_eval_escalation_v1_teams__team_id__evals_escalations__escalation_id__get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"escalation_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Escalation Id"}},{"name":"wait_s","in":"query","required":false,"schema":{"type":"number","maximum":55,"minimum":0,"default":0,"title":"Wait S"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Eval Escalation V1 Teams  Team Id  Evals Escalations  Escalation Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/escalations/{escalation_id}/answer":{"post":{"tags":["evals"],"summary":"Answer Eval Escalation","operationId":"answer_eval_escalation_v1_teams__team_id__evals_escalations__escalation_id__answer_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"escalation_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Escalation Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnswerEvalEscalationRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Answer Eval Escalation V1 Teams  Team Id  Evals Escalations  Escalation Id  Answer Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/escalations/{escalation_id}/resolve":{"post":{"tags":["evals"],"summary":"Resolve Eval Escalation","operationId":"resolve_eval_escalation_v1_teams__team_id__evals_escalations__escalation_id__resolve_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"escalation_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Escalation Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Resolve Eval Escalation V1 Teams  Team Id  Evals Escalations  Escalation Id  Resolve Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/escalations/{escalation_id}/withdraw":{"post":{"tags":["evals"],"summary":"Withdraw Eval Escalation","operationId":"withdraw_eval_escalation_v1_teams__team_id__evals_escalations__escalation_id__withdraw_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"escalation_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Escalation Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Withdraw Eval Escalation V1 Teams  Team Id  Evals Escalations  Escalation Id  Withdraw Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/notes":{"post":{"tags":["evals"],"summary":"Create Eval Note","operationId":"create_eval_note_v1_teams__team_id__evals_notes_post","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEvalNoteRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Eval Note V1 Teams  Team Id  Evals Notes Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["evals"],"summary":"List Eval Notes","operationId":"list_eval_notes_v1_teams__team_id__evals_notes_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"definition_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Key"}},{"name":"eval_run_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Eval Run Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Eval Notes V1 Teams  Team Id  Evals Notes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/events":{"get":{"tags":["evals"],"summary":"List Eval Events","operationId":"list_eval_events_v1_teams__team_id__evals_events_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"After"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":200,"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Eval Events V1 Teams  Team Id  Evals Events Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/teams/{team_id}/evals/stream":{"get":{"tags":["evals"],"summary":"Stream Eval Events","operationId":"stream_eval_events_v1_teams__team_id__evals_stream_get","parameters":[{"name":"team_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Team Id"}},{"name":"after","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"After"}},{"name":"Last-Event-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last-Event-Id"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-darwin-token","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Darwin-Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AcceptResponsibilityRequest":{"properties":{"decision_group_id":{"type":"string","format":"uuid","title":"Decision Group Id"}},"type":"object","required":["decision_group_id"],"title":"AcceptResponsibilityRequest"},"ActionDecisionRequest":{"properties":{"decision":{"type":"string","enum":["approve","deny"],"title":"Decision"},"decision_key":{"type":"string","maxLength":200,"minLength":1,"title":"Decision Key"},"proposal_revision":{"type":"integer","minimum":1.0,"title":"Proposal Revision"},"proposal_sha256":{"type":"string","maxLength":64,"minLength":64,"title":"Proposal Sha256"},"response":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Response"}},"type":"object","required":["decision","decision_key","proposal_revision","proposal_sha256"],"title":"ActionDecisionRequest"},"ActivityReferenceInput":{"properties":{"kind":{"type":"string","maxLength":80,"minLength":1,"title":"Kind"},"id":{"type":"string","maxLength":500,"minLength":1,"title":"Id"},"label":{"anyOf":[{"type":"string","maxLength":180},{"type":"null"}],"title":"Label"}},"additionalProperties":false,"type":"object","required":["kind","id"],"title":"ActivityReferenceInput"},"AddContactRequest":{"properties":{"kind":{"type":"string","enum":["email","phone"],"title":"Kind"},"value":{"type":"string","maxLength":500,"minLength":1,"title":"Value"},"normalized_value":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Normalized Value"},"label":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Label"},"is_primary":{"type":"boolean","title":"Is Primary","default":false},"verification_status":{"type":"string","enum":["unverified","pending","verified","failed","revoked"],"title":"Verification Status","default":"unverified"},"verification_evidence":{"$ref":"#/components/schemas/VerificationEvidence"},"idempotency_key":{"type":"string","maxLength":300,"minLength":1,"title":"Idempotency Key"}},"additionalProperties":false,"type":"object","required":["kind","value","idempotency_key"],"title":"AddContactRequest"},"AddDocumentRequest":{"properties":{"label":{"type":"string","maxLength":200,"minLength":1,"title":"Label"},"kind":{"type":"string","maxLength":60,"title":"Kind","default":"evidence"},"url":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Url"},"path":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Path"},"note":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Note"}},"type":"object","required":["label"],"title":"AddDocumentRequest"},"AddResponsibilityRequirementRequest":{"properties":{"requirement_key":{"type":"string","maxLength":200,"minLength":1,"title":"Requirement Key"},"kind":{"type":"string","enum":["connection","authority","first_work"],"title":"Kind"},"label":{"type":"string","maxLength":300,"minLength":1,"title":"Label"},"connection_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Connection Id"},"required_capabilities":{"items":{"type":"string"},"type":"array","maxItems":100,"title":"Required Capabilities"},"decision_group_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Decision Group Id"},"first_work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"First Work Item Id"},"evidence_artifact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Evidence Artifact Id"},"evidence_effect_receipt_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Evidence Effect Receipt Id"},"evidence_work_item_event_seq":{"anyOf":[{"type":"integer","minimum":1.0},{"type":"null"}],"title":"Evidence Work Item Event Seq"}},"type":"object","required":["requirement_key","kind","label"],"title":"AddResponsibilityRequirementRequest"},"AdsCallRequest":{"properties":{"method":{"type":"string","maxLength":10,"title":"Method","default":"POST"},"path":{"type":"string","maxLength":500,"minLength":1,"title":"Path"},"body":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Body"},"customer_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Customer Id"}},"type":"object","required":["path"],"title":"AdsCallRequest","description":"A raw Ads call, so a smarter model is never gated by our verb list."},"AdsQueryRequest":{"properties":{"query":{"type":"string","maxLength":10000,"minLength":1,"title":"Query"},"customer_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Customer Id"}},"type":"object","required":["query"],"title":"AdsQueryRequest"},"AnswerEvalEscalationRequest":{"properties":{"answer":{"type":"string","minLength":1,"title":"Answer"}},"additionalProperties":false,"type":"object","required":["answer"],"title":"AnswerEvalEscalationRequest"},"AnswerRequest":{"properties":{"content":{"additionalProperties":true,"type":"object","title":"Content"},"source":{"type":"string","title":"Source","default":"app"}},"type":"object","title":"AnswerRequest"},"AttachInboxRequest":{"properties":{"connection_id":{"type":"string","format":"uuid","title":"Connection Id"},"inbox_id":{"type":"string","maxLength":320,"minLength":1,"title":"Inbox Id"},"from_name":{"type":"string","maxLength":160,"minLength":1,"title":"From Name"},"total_warmup_per_day":{"type":"integer","maximum":50.0,"minimum":1.0,"title":"Total Warmup Per Day","default":20},"daily_rampup":{"type":"integer","maximum":20.0,"minimum":2.0,"title":"Daily Rampup","default":2},"reply_rate_percentage":{"type":"integer","maximum":100.0,"minimum":20.0,"title":"Reply Rate Percentage","default":30},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"idempotency_key":{"type":"string","maxLength":200,"minLength":1,"title":"Idempotency Key"}},"type":"object","required":["connection_id","inbox_id","from_name","idempotency_key"],"title":"AttachInboxRequest"},"BlobWrite":{"properties":{"path":{"type":"string","title":"Path"},"text":{"type":"string","title":"Text"},"expected_commit":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expected Commit"}},"type":"object","required":["path","text"],"title":"BlobWrite"},"Body_receive_attachment_v1_teams__team_id__attachments_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File"}},"type":"object","required":["file"],"title":"Body_receive_attachment_v1_teams__team_id__attachments_post"},"BookRequest":{"properties":{"subject":{"type":"string","maxLength":500,"minLength":1,"title":"Subject"},"starts_at":{"type":"string","format":"date-time","title":"Starts At"},"ends_at":{"type":"string","format":"date-time","title":"Ends At"},"purpose":{"type":"string","maxLength":500,"minLength":1,"title":"Purpose"},"customer":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Customer"},"kind":{"type":"string","maxLength":100,"title":"Kind","default":"reservation"},"write":{"type":"boolean","title":"Write","default":false}},"type":"object","required":["subject","starts_at","ends_at","purpose"],"title":"BookRequest"},"BrowserCallRequest":{"properties":{"line_id":{"type":"string","format":"uuid","title":"Line Id"},"surface":{"$ref":"#/components/schemas/BrowserSurfaceContext"}},"additionalProperties":false,"type":"object","required":["line_id","surface"],"title":"BrowserCallRequest","description":"Start a call from the signed-in owner's current Stormy surface."},"BrowserInteractionRequest":{"properties":{"document_id":{"type":"string","format":"uuid","title":"Document Id"},"revision":{"type":"integer","minimum":1.0,"title":"Revision"},"command":{"oneOf":[{"$ref":"#/components/schemas/NavigateBrowserCommand"},{"$ref":"#/components/schemas/BrowserNodeCommand"},{"$ref":"#/components/schemas/InputBrowserCommand"},{"$ref":"#/components/schemas/PointerBrowserCommand"},{"$ref":"#/components/schemas/KeyboardBrowserCommand"},{"$ref":"#/components/schemas/ScrollBrowserCommand"}],"title":"Command","discriminator":{"propertyName":"type","mapping":{"click":"#/components/schemas/BrowserNodeCommand","focus":"#/components/schemas/BrowserNodeCommand","input":"#/components/schemas/InputBrowserCommand","keyboard":"#/components/schemas/KeyboardBrowserCommand","navigate":"#/components/schemas/NavigateBrowserCommand","pointer":"#/components/schemas/PointerBrowserCommand","scroll":"#/components/schemas/ScrollBrowserCommand","submit":"#/components/schemas/BrowserNodeCommand"}}}},"additionalProperties":false,"type":"object","required":["document_id","revision","command"],"title":"BrowserInteractionRequest"},"BrowserNodeCommand":{"properties":{"type":{"type":"string","enum":["click","focus","submit"],"title":"Type"},"node_id":{"type":"string","maxLength":16,"minLength":2,"title":"Node Id"}},"additionalProperties":false,"type":"object","required":["type","node_id"],"title":"BrowserNodeCommand"},"BrowserSurfaceContext":{"properties":{"pathname":{"type":"string","maxLength":300,"minLength":1,"title":"Pathname","default":"/app"},"label":{"type":"string","maxLength":200,"minLength":1,"title":"Label"},"ref":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Ref"},"kind":{"type":"string","enum":["onboarding","conversation","place","screen","record","website"],"title":"Kind"}},"additionalProperties":false,"type":"object","required":["label","kind"],"title":"BrowserSurfaceContext","description":"The shell's bounded observation when the owner starts a web call."},"BrowserViewportRequest":{"properties":{"width":{"type":"integer","maximum":2560.0,"minimum":320.0,"title":"Width","default":1920},"height":{"type":"integer","maximum":1440.0,"minimum":240.0,"title":"Height","default":1200},"refresh_rate":{"type":"integer","maximum":60.0,"minimum":1.0,"title":"Refresh Rate","default":25}},"additionalProperties":false,"type":"object","title":"BrowserViewportRequest"},"CampaignFilingRequest":{"properties":{"line_id":{"type":"string","format":"uuid","title":"Line Id"},"confirm_paid_filing":{"type":"boolean","title":"Confirm Paid Filing","default":false},"terms_accepted":{"type":"boolean","title":"Terms Accepted","default":false}},"type":"object","required":["line_id"],"title":"CampaignFilingRequest"},"CancelRunRequest":{"properties":{"scope":{"type":"string","enum":["self","subtree"],"title":"Scope"},"reason":{"type":"string","maxLength":1000,"minLength":1,"title":"Reason"}},"type":"object","required":["scope","reason"],"title":"CancelRunRequest"},"CascadeStep":{"properties":{"meta":{"type":"string","title":"Meta"},"value":{"type":"string","title":"Value"},"level":{"type":"string","title":"Level"},"applies":{"type":"boolean","title":"Applies"}},"type":"object","required":["meta","value","level","applies"],"title":"CascadeStep","description":"One `_meta.md` standing above a file, and the plane it asserts."},"ChannelPlacement":{"properties":{"rail":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rail"},"hidden":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Hidden"}},"type":"object","title":"ChannelPlacement","description":"What to change about a place's row: where it sits, or whether it shows.\n\nTWO OPTIONAL FIELDS AND `model_fields_set` DECIDES, because `None` is a\nVALUE for both of them — `rail: null` is \"no rank\" and `hidden: null` is\n\"not hidden\" — so a default cannot be told from an omission by reading the\nfield. Only the keys the caller actually sent are written."},"ChannelWrite":{"properties":{"name":{"type":"string","title":"Name"},"rail":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rail"},"hidden":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Hidden"},"commit":{"type":"string","title":"Commit","default":""},"removed":{"items":{"type":"string"},"type":"array","title":"Removed"},"pushed":{"type":"boolean","title":"Pushed","default":false},"push_reason":{"type":"string","title":"Push Reason","default":""}},"type":"object","required":["name"],"title":"ChannelWrite","description":"What the tree looks like now, and the commit that made it so."},"CheckoutRequest":{"properties":{"offer":{"type":"string","maxLength":100,"minLength":1,"title":"Offer","default":"stormy_os_test"}},"additionalProperties":false,"type":"object","title":"CheckoutRequest"},"CompleteUploadRequest":{"properties":{"expected_sha256":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Expected Sha256"}},"additionalProperties":false,"type":"object","title":"CompleteUploadRequest"},"ConfigureGmailSyncRequest":{"properties":{"topic_name":{"type":"string","maxLength":1000,"minLength":1,"title":"Topic Name"},"expected_audience":{"type":"string","maxLength":2000,"minLength":1,"title":"Expected Audience"},"service_account_email":{"type":"string","maxLength":320,"minLength":3,"title":"Service Account Email"},"label_ids":{"items":{"type":"string"},"type":"array","maxItems":100,"title":"Label Ids"}},"additionalProperties":false,"type":"object","required":["topic_name","expected_audience","service_account_email"],"title":"ConfigureGmailSyncRequest"},"ConnectActionOptionsRequest":{"properties":{"app_slug":{"type":"string","title":"App Slug"},"action_key":{"type":"string","title":"Action Key"},"prop_name":{"type":"string","title":"Prop Name"},"configured_props":{"additionalProperties":true,"type":"object","title":"Configured Props"},"account_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Id"}},"type":"object","required":["app_slug","action_key","prop_name"],"title":"ConnectActionOptionsRequest"},"ConnectActionRunRequest":{"properties":{"app_slug":{"type":"string","title":"App Slug"},"action_key":{"type":"string","title":"Action Key"},"configured_props":{"additionalProperties":true,"type":"object","title":"Configured Props"},"account_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Id"},"effect":{"type":"string","enum":["read","external"],"title":"Effect"},"summary":{"anyOf":[{"type":"string","maxLength":2000,"minLength":1},{"type":"null"}],"title":"Summary"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Idempotency Key"},"decide_by":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decide By"}},"type":"object","required":["app_slug","action_key","effect"],"title":"ConnectActionRunRequest"},"ConnectLinkRequest":{"properties":{"app_slug":{"type":"string","title":"App Slug"},"session_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"}},"type":"object","required":["app_slug"],"title":"ConnectLinkRequest"},"ConnectProxyRequest":{"properties":{"app_slug":{"type":"string","title":"App Slug"},"url":{"type":"string","title":"Url"},"method":{"type":"string","title":"Method","default":"GET"},"params":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Params"},"body":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Body"},"headers":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Headers"},"account_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Id"},"effect":{"type":"string","enum":["read","external"],"title":"Effect"},"summary":{"anyOf":[{"type":"string","maxLength":2000,"minLength":1},{"type":"null"}],"title":"Summary"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Idempotency Key"},"decide_by":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decide By"}},"type":"object","required":["app_slug","url","effect"],"title":"ConnectProxyRequest"},"ConsoleTurnRequest":{"properties":{"text":{"type":"string","maxLength":100000,"minLength":1,"title":"Text"},"client_turn_id":{"type":"string","maxLength":200,"minLength":1,"title":"Client Turn Id"}},"type":"object","required":["text","client_turn_id"],"title":"ConsoleTurnRequest","description":"One message a human typed at their own terminal.\n\nNo principal field, by design: WHO said it is the authenticated caller,\nresolved server-side. A caller can never claim a message on someone's\nbehalf, so \"a human said this\" stays a fact about the credential."},"ContactInput":{"properties":{"kind":{"type":"string","enum":["email","phone"],"title":"Kind"},"value":{"type":"string","maxLength":500,"minLength":1,"title":"Value"},"normalized_value":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Normalized Value"},"label":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Label"},"is_primary":{"type":"boolean","title":"Is Primary","default":false},"verification_status":{"type":"string","enum":["unverified","pending","verified","failed","revoked"],"title":"Verification Status","default":"unverified"},"verification_evidence":{"$ref":"#/components/schemas/VerificationEvidence"}},"additionalProperties":false,"type":"object","required":["kind","value"],"title":"ContactInput"},"ContinueSetupRequest":{"properties":{"line_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Line Id"}},"type":"object","title":"ContinueSetupRequest"},"ConversationFinishRequest":{"properties":{"summary":{"type":"string","maxLength":400,"minLength":1,"title":"Summary"}},"type":"object","required":["summary"],"title":"ConversationFinishRequest","description":"One closing line, and no destination.\n\nWHERE the person goes next is a fact about the surface they are standing\non, so the browser owns it; the agent decides only that this conversation\nhas done its job. No idempotency key either — a conversation finishes once,\nand the run id already names which one."},"ConversationMessageRequest":{"properties":{"text":{"type":"string","maxLength":4000,"title":"Text"},"idempotency_key":{"type":"string","maxLength":120,"minLength":1,"title":"Idempotency Key"},"media_artifact_ids":{"anyOf":[{"items":{"type":"string","format":"uuid"},"type":"array","maxItems":10},{"type":"null"}],"title":"Media Artifact Ids"},"reply_to":{"anyOf":[{"type":"string","maxLength":400},{"type":"null"}],"title":"Reply To"},"about":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"About"},"decide":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":4},{"type":"null"}],"title":"Decide"},"effect_action_ids":{"anyOf":[{"items":{"type":"string","format":"uuid"},"type":"array","maxItems":8},{"type":"null"}],"title":"Effect Action Ids"}},"type":"object","required":["text","idempotency_key"],"title":"ConversationMessageRequest"},"ConversationPageProgressRequest":{"properties":{"ref":{"type":"string","maxLength":200,"minLength":1,"title":"Ref"},"title":{"type":"string","maxLength":160,"minLength":1,"title":"Title"},"tasks":{"items":{"$ref":"#/components/schemas/ConversationPageTask"},"type":"array","maxItems":12,"minItems":1,"title":"Tasks"},"status":{"type":"string","enum":["building","ready","failed"],"title":"Status","default":"building"}},"type":"object","required":["ref","title","tasks"],"title":"ConversationPageProgressRequest","description":"A browser-canvas page before its authored face is ready."},"ConversationPageTask":{"properties":{"label":{"type":"string","maxLength":160,"minLength":1,"title":"Label"},"state":{"type":"string","enum":["waiting","working","done","failed"],"title":"State","default":"waiting"}},"type":"object","required":["label"],"title":"ConversationPageTask","description":"One model-authored line on a page that is still being built."},"ConversationTypingRequest":{"properties":{"active":{"type":"boolean","title":"Active"}},"type":"object","required":["active"],"title":"ConversationTypingRequest"},"ConversationUiRequest":{"properties":{"html":{"type":"string","maxLength":1000000,"minLength":1,"title":"Html"},"idempotency_key":{"type":"string","maxLength":120,"minLength":1,"title":"Idempotency Key"}},"type":"object","required":["html","idempotency_key"],"title":"ConversationUiRequest"},"CreateArtifactRequest":{"properties":{"kind":{"type":"string","maxLength":100,"minLength":1,"title":"Kind"},"title":{"type":"string","maxLength":300,"minLength":1,"title":"Title"},"media_type":{"type":"string","maxLength":255,"minLength":3,"title":"Media Type"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"source_execution_type":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Source Execution Type"},"source_execution_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Source Execution Id"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Idempotency Key"},"retention_class":{"type":"string","title":"Retention Class","default":"standard"},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At"},"content_base64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content Base64"},"inline_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inline Text"},"provider_source":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Provider Source"},"expect_upload":{"type":"boolean","title":"Expect Upload","default":false}},"additionalProperties":false,"type":"object","required":["kind","title","media_type"],"title":"CreateArtifactRequest"},"CreateBrowserSessionRequest":{"properties":{"url":{"type":"string","maxLength":2048,"minLength":8,"title":"Url"},"surface_id":{"type":"string","maxLength":2048,"minLength":1,"title":"Surface Id"},"restart":{"type":"boolean","title":"Restart","default":false},"viewport":{"$ref":"#/components/schemas/BrowserViewportRequest"}},"additionalProperties":false,"type":"object","required":["url","surface_id"],"title":"CreateBrowserSessionRequest"},"CreateConnectionRequest":{"properties":{"kind":{"type":"string","enum":["phone","email","telegram","web"],"title":"Kind"},"provider":{"type":"string","maxLength":100,"minLength":1,"title":"Provider"},"external_account_id":{"type":"string","maxLength":500,"minLength":1,"title":"External Account Id"},"display_name":{"type":"string","maxLength":500,"minLength":1,"title":"Display Name"},"status":{"type":"string","enum":["connected","degraded","disconnected","revoked"],"title":"Status","default":"disconnected"},"secret_ref":{"anyOf":[{"type":"string","maxLength":1000,"minLength":1},{"type":"null"}],"title":"Secret Ref"},"capabilities":{"items":{"type":"string"},"type":"array","maxItems":100,"title":"Capabilities"},"config":{"additionalProperties":true,"type":"object","title":"Config"}},"additionalProperties":false,"type":"object","required":["kind","provider","external_account_id","display_name"],"title":"CreateConnectionRequest"},"CreateEmailAccountRequest":{"properties":{"connection_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Connection Id"},"provider":{"type":"string","maxLength":100,"minLength":1,"title":"Provider"},"provider_account_id":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Provider Account Id"},"email_address":{"type":"string","maxLength":500,"minLength":3,"title":"Email Address"},"display_name":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Display Name"},"status":{"type":"string","enum":["connected","syncing","degraded","disconnected","revoked"],"title":"Status","default":"disconnected"},"config":{"additionalProperties":true,"type":"object","title":"Config"}},"additionalProperties":false,"type":"object","required":["provider","email_address"],"title":"CreateEmailAccountRequest"},"CreateEvalEscalationRequest":{"properties":{"definition_key":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Definition Key"},"eval_run_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Eval Run Id"},"summary":{"type":"string","minLength":1,"title":"Summary"},"missing_knowledge":{"type":"string","title":"Missing Knowledge","default":""},"question":{"type":"string","minLength":1,"title":"Question"},"checkpoint":{"additionalProperties":true,"type":"object","title":"Checkpoint"},"recipient_principal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Recipient Principal Id"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"additionalProperties":false,"type":"object","required":["summary","question"],"title":"CreateEvalEscalationRequest"},"CreateEvalNoteRequest":{"properties":{"definition_key":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Definition Key"},"eval_run_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Eval Run Id"},"body":{"type":"string","minLength":1,"title":"Body"},"author_label":{"type":"string","maxLength":200,"title":"Author Label","default":""},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"additionalProperties":false,"type":"object","required":["body"],"title":"CreateEvalNoteRequest"},"CreateHumanConversationSessionRequest":{"properties":{"client_session_id":{"type":"string","format":"uuid","title":"Client Session Id"},"client_context":{"$ref":"#/components/schemas/HumanConversationContext"}},"type":"object","required":["client_session_id","client_context"],"title":"CreateHumanConversationSessionRequest","description":"Open the durable room before its first real human turn."},"CreateIncidentReportRequest":{"properties":{"session_id":{"type":"string","format":"uuid","title":"Session Id"},"run_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Run Id"},"action_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Action Id"},"category":{"type":"string","maxLength":120,"minLength":1,"title":"Category"},"severity":{"type":"string","enum":["low","medium","high","critical"],"title":"Severity","default":"medium"},"summary":{"type":"string","maxLength":1000,"minLength":1,"title":"Summary"},"observed_output":{"type":"string","maxLength":50000,"title":"Observed Output","default":""},"expected_behavior":{"type":"string","maxLength":20000,"title":"Expected Behavior","default":""},"error":{"title":"Error"},"result":{"title":"Result"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"additionalProperties":false,"type":"object","required":["session_id","category","summary"],"title":"CreateIncidentReportRequest"},"CreateMemberRequest":{"properties":{"idempotency_key":{"type":"string","maxLength":300,"minLength":1,"title":"Idempotency Key"},"principal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Principal Id"},"display_name":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Display Name"},"membership_kind":{"type":"string","enum":["internal","external","agent","service"],"title":"Membership Kind"},"role":{"type":"string","maxLength":100,"minLength":1,"title":"Role"},"capabilities":{"items":{"type":"string"},"type":"array","maxItems":100,"title":"Capabilities"},"status":{"type":"string","enum":["invited","active","suspended","removed"],"title":"Status","default":"invited"},"contacts":{"items":{"$ref":"#/components/schemas/ContactInput"},"type":"array","maxItems":20,"title":"Contacts"}},"additionalProperties":false,"type":"object","required":["idempotency_key","membership_kind","role"],"title":"CreateMemberRequest"},"CreatePhoneLineRequest":{"properties":{"connection_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Connection Id"},"provider":{"type":"string","maxLength":100,"minLength":1,"title":"Provider"},"provider_line_id":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Provider Line Id"},"phone_number":{"type":"string","maxLength":32,"minLength":1,"title":"Phone Number"},"display_name":{"type":"string","maxLength":500,"minLength":1,"title":"Display Name"},"status":{"type":"string","enum":["provisioning","active","degraded","offline","uncertain","released"],"title":"Status","default":"offline"},"capabilities":{"items":{"type":"string"},"type":"array","maxItems":100,"title":"Capabilities"},"config":{"additionalProperties":true,"type":"object","title":"Config"},"voice_twin_line_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Voice Twin Line Id"}},"additionalProperties":false,"type":"object","required":["provider","phone_number","display_name"],"title":"CreatePhoneLineRequest"},"CreateReminderRequest":{"properties":{"session_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"},"message":{"type":"string","maxLength":20000,"minLength":1,"title":"Message"},"next_run_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Next Run At"},"in_seconds":{"anyOf":[{"type":"integer","maximum":31536000.0,"minimum":1.0},{"type":"null"}],"title":"In Seconds"},"dedupe_key":{"type":"string","maxLength":500,"minLength":1,"title":"Dedupe Key"},"tag":{"type":"string","maxLength":64,"title":"Tag","default":""}},"type":"object","required":["message","dedupe_key"],"title":"CreateReminderRequest","description":"Do this later. TWO SHAPES, and the only difference is where it lands.\n\n`session_id` PRESENT — come back to that conversation. The woken turn joins\nthe session's own FIFO, so it holds everything that was said and answers\nwhere the question was asked. This is 1,707 of the 2,122 schedules this\nproduct has ever written.\n\n`session_id` ABSENT — a fresh, clean item scoped to the workspace. No\nconversation is resumed and nothing is interrupted. 415 of 2,122, and it was\nalready the path `scheduler._dispatch_schedule` took for an untargeted\n`agent.run`; it simply had no door on this route.\n\nWHY THE SECOND SHAPE HAD TO EXIST HERE, and it is not a convenience. This\nfield was mandatory, and `_current_session_id` raises when\n`STORMY_MCP_SESSION_ID` is unset — which it always is in the `./kk` seat,\nbecause a seat is not a durable turn. So the seat's only scheduling verb\nrefused, every time. A refusal there does not fail safe: measured in the\nlive seat on 2026-08-15, the model answered the refusal by running\n`nohup bash -c 'sleep 30 && echo ... > bg_task_30s.log' &` and reporting\n\"Yes! I have dispatched a background task.\" A process that dies with the\ncontainer, a log nobody reads, and a confident false receipt. The cure for\nthat is not a better refusal, it is a shape that works.\n\nSibling of `/schedules`, which stays the general form: any kind, on a cron\nor an interval. RECURRENCE IS DELIBERATELY NOT HERE — 2,121 of 2,122 rows\nare `{\"type\": \"once\"}` and 544 of 544 recorded agent calls asked for one\nwake. A repeating job is infrastructure and goes through `/schedules`."},"CreateResponsibilityRequest":{"properties":{"work_item_id":{"type":"string","format":"uuid","title":"Work Item Id"},"responsibility_key":{"type":"string","maxLength":200,"minLength":1,"title":"Responsibility Key"},"title":{"type":"string","maxLength":300,"minLength":1,"title":"Title"},"description":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}],"title":"Description"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"type":"object","required":["work_item_id","responsibility_key","title"],"title":"CreateResponsibilityRequest"},"CreateRunRequest":{"properties":{"message":{"type":"string","maxLength":100000,"minLength":1,"title":"Message"},"client_turn_id":{"type":"string","maxLength":200,"minLength":1,"title":"Client Turn Id"},"session_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Session Id"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"execution_mode":{"type":"string","enum":["foreground","background"],"title":"Execution Mode","default":"foreground"},"tool_policy":{"anyOf":[{"$ref":"#/components/schemas/RunToolPolicy"},{"type":"null"}]},"client_context":{"anyOf":[{"$ref":"#/components/schemas/HumanConversationContext"},{"type":"null"}]},"provider":{"anyOf":[{"type":"string","enum":["openrouter","worker","acp","pi"]},{"type":"null"}],"title":"Provider"},"replace_active":{"type":"boolean","title":"Replace Active","default":false},"replace_run_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Replace Run Id"}},"type":"object","required":["message","client_turn_id"],"title":"CreateRunRequest"},"CreateScheduleRequest":{"properties":{"kind":{"type":"string","maxLength":200,"minLength":1,"title":"Kind"},"schedule":{"additionalProperties":true,"type":"object","title":"Schedule"},"payload":{"additionalProperties":true,"type":"object","title":"Payload"},"next_run_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Next Run At"},"dedupe_key":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Dedupe Key"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"run_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Run Id"},"resume_tool_call_id":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Resume Tool Call Id"}},"additionalProperties":false,"type":"object","required":["kind"],"title":"CreateScheduleRequest"},"CreateWorkItemRequest":{"properties":{"title":{"type":"string","maxLength":500,"minLength":1,"title":"Title"},"description":{"anyOf":[{"type":"string","maxLength":50000},{"type":"null"}],"title":"Description"},"kind":{"type":"string","maxLength":100,"minLength":1,"title":"Kind","default":"general"},"parent_work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Parent Work Item Id"},"priority":{"type":"integer","maximum":5.0,"minimum":1.0,"title":"Priority","default":3},"assigned_principal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Assigned Principal Id"},"source_type":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Source Type"},"source_id":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Source Id"},"dedupe_key":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Dedupe Key"},"requires_human":{"type":"boolean","title":"Requires Human","default":false},"human_request":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Human Request"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"additionalProperties":false,"type":"object","required":["title"],"title":"CreateWorkItemRequest"},"DecisionGroupCancelRequest":{"properties":{"reason":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Reason"}},"type":"object","title":"DecisionGroupCancelRequest"},"DecisionGroupCreateRequest":{"properties":{"work_item_id":{"type":"string","format":"uuid","title":"Work Item Id"},"request_key":{"type":"string","maxLength":300,"minLength":1,"title":"Request Key"},"title":{"type":"string","maxLength":300,"minLength":1,"title":"Title"},"prompt":{"type":"string","maxLength":4000,"minLength":1,"title":"Prompt"},"completion_mode":{"type":"string","enum":["all","any","quorum","ordered"],"title":"Completion Mode","default":"all"},"quorum":{"anyOf":[{"type":"integer","maximum":25.0,"minimum":1.0},{"type":"null"}],"title":"Quorum"},"deadline_seconds":{"anyOf":[{"type":"integer","maximum":604800.0,"minimum":60.0},{"type":"null"}],"title":"Deadline Seconds"},"fallback_decision":{"type":"string","enum":["deny","ask","cancel"],"title":"Fallback Decision","default":"deny"},"requirements":{"items":{"additionalProperties":true,"type":"object"},"type":"array","maxItems":25,"minItems":1,"title":"Requirements"}},"type":"object","required":["work_item_id","request_key","title","prompt","requirements"],"title":"DecisionGroupCreateRequest"},"DecisionResponseRequest":{"properties":{"decision_requirement_id":{"type":"string","format":"uuid","title":"Decision Requirement Id"},"response_key":{"type":"string","maxLength":300,"minLength":1,"title":"Response Key"},"decision":{"type":"string","enum":["approve","deny","abstain","unreachable"],"title":"Decision"},"payload":{"additionalProperties":true,"type":"object","title":"Payload"},"channel":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Channel","default":"app"},"source_interaction_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Source Interaction Id"},"responder_contact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Responder Contact Id"},"evidence_artifact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Evidence Artifact Id"},"payload_attestation_sha256":{"anyOf":[{"type":"string","maxLength":64,"minLength":64},{"type":"null"}],"title":"Payload Attestation Sha256"}},"type":"object","required":["decision_requirement_id","response_key","decision"],"title":"DecisionResponseRequest"},"DeleteArtifactRequest":{"properties":{"reason":{"type":"string","maxLength":500,"minLength":1,"title":"Reason"}},"additionalProperties":false,"type":"object","required":["reason"],"title":"DeleteArtifactRequest"},"DemandRequest":{"properties":{"subject":{"type":"string","maxLength":500,"minLength":1,"title":"Subject"},"starts_at":{"type":"string","format":"date-time","title":"Starts At"},"ends_at":{"type":"string","format":"date-time","title":"Ends At"},"customer":{"type":"string","maxLength":500,"minLength":1,"title":"Customer"},"phone":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Phone"},"note":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Note"}},"type":"object","required":["subject","starts_at","ends_at","customer"],"title":"DemandRequest","description":"A refusal, filed. The mirror of BookRequest and it occupies nothing."},"DemoScriptAsk":{"properties":{"place_id":{"type":"string","maxLength":400,"title":"Place Id","default":""},"name":{"type":"string","maxLength":200,"title":"Name","default":""},"address":{"type":"string","maxLength":300,"title":"Address","default":""},"kind":{"type":"string","maxLength":120,"title":"Kind","default":""},"phone":{"type":"string","maxLength":40,"title":"Phone","default":""},"hours":{"items":{"type":"string"},"type":"array","maxItems":10,"title":"Hours"},"reviews":{"items":{"type":"string"},"type":"array","maxItems":5,"title":"Reviews"}},"additionalProperties":false,"type":"object","title":"DemoScriptAsk","description":"The shop, as much of it as the caller happens to hold yet.\n\nEVERY FIELD IS OPTIONAL AND THAT IS THE CONTRACT. The film starts on the\ntypeahead row — a name, an address, a kind — and `geo/business/profile` lands\na second later with the hours, the number and the reviews. Requiring the\nricher half would make this arrive after the scene it was written for, which\nis the same as not arriving."},"DevVoiceInputRequest":{"properties":{"message":{"type":"string","maxLength":4000,"minLength":1,"title":"Message"}},"additionalProperties":false,"type":"object","required":["message"],"title":"DevVoiceInputRequest","description":"A typed caller turn injected into an opted-in local Realtime session."},"DispatchBody":{"properties":{"ref":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Ref"}},"type":"object","title":"DispatchBody"},"EditImageRequest":{"properties":{"prompt":{"type":"string","maxLength":4000,"minLength":1,"title":"Prompt"},"source_artifact_ids":{"items":{"type":"string","format":"uuid"},"type":"array","maxItems":6,"minItems":1,"title":"Source Artifact Ids"},"title":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Title"},"aspect_ratio":{"anyOf":[{"type":"string","maxLength":12},{"type":"null"}],"title":"Aspect Ratio"},"quality":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"title":"Quality"},"input_fidelity":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"title":"Input Fidelity"},"kind":{"type":"string","maxLength":100,"title":"Kind","default":"generated_image"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"source_execution_type":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Source Execution Type"},"source_execution_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Source Execution Id"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Idempotency Key"}},"additionalProperties":false,"type":"object","required":["prompt","source_artifact_ids"],"title":"EditImageRequest"},"EnrichRequest":{"properties":{"people":{"items":{"$ref":"#/components/schemas/PersonInput"},"type":"array","maxItems":100,"minItems":1,"title":"People"},"emails":{"type":"boolean","title":"Emails","default":true},"phones":{"type":"boolean","title":"Phones","default":true},"provider":{"anyOf":[{"type":"string","enum":["explee","simulation"]},{"type":"null"}],"title":"Provider"}},"type":"object","required":["people"],"title":"EnrichRequest"},"EvalDefinitionLinkRequest":{"properties":{"relation":{"type":"string","maxLength":120,"minLength":1,"title":"Relation"},"target_key":{"type":"string","maxLength":500,"minLength":1,"title":"Target Key"},"ordinal":{"type":"integer","minimum":0.0,"title":"Ordinal","default":0},"config":{"additionalProperties":true,"type":"object","title":"Config"}},"additionalProperties":false,"type":"object","required":["relation","target_key"],"title":"EvalDefinitionLinkRequest"},"EvalDefinitionRequest":{"properties":{"definition_key":{"type":"string","maxLength":500,"minLength":1,"title":"Definition Key"},"expected_current_definition_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Expected Current Definition Id","description":"Current immutable head observed by the caller, or null when the caller observed no head. The sync is rejected if that observation is stale."},"kind":{"type":"string","maxLength":120,"minLength":1,"title":"Kind"},"lifecycle":{"type":"string","maxLength":40,"minLength":1,"title":"Lifecycle","default":"candidate"},"title":{"type":"string","maxLength":500,"minLength":1,"title":"Title"},"description":{"type":"string","title":"Description","default":""},"body_markdown":{"type":"string","title":"Body Markdown","default":""},"config":{"additionalProperties":true,"type":"object","title":"Config"},"source_type":{"type":"string","maxLength":120,"minLength":1,"title":"Source Type"},"source_ref":{"type":"string","maxLength":2000,"minLength":1,"title":"Source Ref"},"source_sha256":{"type":"string","maxLength":64,"minLength":64,"title":"Source Sha256"},"links":{"items":{"$ref":"#/components/schemas/EvalDefinitionLinkRequest"},"type":"array","title":"Links"}},"additionalProperties":false,"type":"object","required":["definition_key","expected_current_definition_id","kind","title","source_type","source_ref","source_sha256"],"title":"EvalDefinitionRequest"},"ExplainPictureRequest":{"properties":{"shows":{"type":"string","maxLength":2000,"minLength":1,"title":"Shows"},"words":{"items":{"type":"string"},"type":"array","maxItems":4,"title":"Words"},"aspect_ratio":{"type":"string","maxLength":12,"title":"Aspect Ratio","default":"3:2"},"title":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Title"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"source_execution_type":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"title":"Source Execution Type"},"source_execution_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Source Execution Id"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Idempotency Key"}},"type":"object","required":["shows"],"title":"ExplainPictureRequest","description":"One picture that explains a thing, drawn in the house style."},"FileMediaToTreeRequest":{"properties":{"number":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Number"},"email":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Email"},"description":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}],"title":"Description"},"title":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Title"}},"type":"object","title":"FileMediaToTreeRequest","description":"What the agent knows that the runtime does not."},"FileRegistrationRequest":{"properties":{"path":{"anyOf":[{"type":"string","enum":["standard","sole_proprietor","toll_free"]},{"type":"null"}],"title":"Path"},"line_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Line Id"},"mock":{"type":"boolean","title":"Mock","default":false}},"type":"object","title":"FileRegistrationRequest"},"FrontmatterWrite":{"properties":{"path":{"type":"string","title":"Path"},"key":{"type":"string","title":"Key","default":""},"value":{"type":"string","title":"Value","default":""},"fields":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Fields"},"expected_value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expected Value"},"expected":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Expected"},"via_view":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Via View"}},"type":"object","required":["path"],"title":"FrontmatterWrite"},"GenerateImageRequest":{"properties":{"prompt":{"type":"string","maxLength":4000,"minLength":1,"title":"Prompt"},"title":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Title"},"aspect_ratio":{"type":"string","maxLength":12,"title":"Aspect Ratio","default":"1:1"},"quality":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"title":"Quality"},"kind":{"type":"string","maxLength":100,"title":"Kind","default":"generated_image"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"source_execution_type":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Source Execution Type"},"source_execution_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Source Execution Id"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Idempotency Key"}},"additionalProperties":false,"type":"object","required":["prompt"],"title":"GenerateImageRequest"},"GoalUpdateRequest":{"properties":{"goal":{"type":"string","minLength":1,"title":"Goal"},"expected_revision":{"type":"integer","minimum":0.0,"title":"Expected Revision"}},"type":"object","required":["goal","expected_revision"],"title":"GoalUpdateRequest"},"GuestAdoptRequest":{"properties":{"access_token":{"type":"string","maxLength":8000,"minLength":8,"title":"Access Token"}},"additionalProperties":false,"type":"object","required":["access_token"],"title":"GuestAdoptRequest"},"GuestHumanCheckRequest":{"properties":{"turnstile_token":{"type":"string","maxLength":4000,"title":"Turnstile Token","default":""}},"additionalProperties":false,"type":"object","title":"GuestHumanCheckRequest"},"GuestMintRequest":{"properties":{"name":{"type":"string","maxLength":80,"title":"Name","default":""},"origin":{"type":"string","maxLength":120,"title":"Origin","default":""},"turnstile_token":{"type":"string","maxLength":4000,"title":"Turnstile Token","default":""},"analytics_session_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Analytics Session Id"}},"additionalProperties":false,"type":"object","title":"GuestMintRequest"},"GymAct":{"properties":{"act":{"type":"string","title":"Act"},"sha":{"type":"string","title":"Sha"},"files":{"type":"integer","title":"Files","default":0}},"type":"object","required":["act","sha"],"title":"GymAct"},"GymGit":{"properties":{"path":{"type":"string","title":"Path","default":""},"exists":{"type":"boolean","title":"Exists","default":false},"branch":{"type":"string","title":"Branch","default":""},"head":{"type":"string","title":"Head","default":""},"short":{"type":"string","title":"Short","default":""},"commits":{"type":"integer","title":"Commits","default":0},"uncommitted":{"type":"integer","title":"Uncommitted","default":0},"last_commit_at":{"type":"string","title":"Last Commit At","default":""},"subject":{"type":"string","title":"Subject","default":""}},"type":"object","title":"GymGit","description":"The `git` block of the workspaces contract, verbatim.\n\n`bench/gym/site.py` fills `path`/`exists`/`branch`/`head`/`short` itself by\nreading `.git/HEAD`; the last four need git to run, so the gym computes them\nonce when a run closes and writes them into the manifest. Reading them back\noff a file means a page of thirty cases is thirty file reads, not thirty\nsubprocesses."},"GymRun":{"properties":{"run_id":{"type":"string","title":"Run Id"},"no":{"type":"integer","title":"No","default":0},"branch":{"type":"string","title":"Branch","default":""},"run_dir":{"type":"string","title":"Run Dir","default":""},"lane":{"type":"string","title":"Lane","default":""},"transport":{"type":"string","title":"Transport","default":""},"channels":{"items":{"type":"string"},"type":"array","title":"Channels"},"status":{"type":"string","title":"Status","default":"running"},"opened_at":{"type":"string","title":"Opened At","default":""},"closed_at":{"type":"string","title":"Closed At","default":""},"seed":{"type":"string","title":"Seed","default":""},"head":{"type":"string","title":"Head","default":""},"commits":{"type":"integer","title":"Commits","default":0},"wrote":{"type":"boolean","title":"Wrote","default":false},"changed_files":{"items":{"type":"string"},"type":"array","title":"Changed Files"},"files_changed":{"type":"integer","title":"Files Changed","default":0},"additions":{"type":"integer","title":"Additions","default":0},"deletions":{"type":"integer","title":"Deletions","default":0},"acts":{"items":{"$ref":"#/components/schemas/GymAct"},"type":"array","title":"Acts"},"score":{"type":"string","title":"Score","default":""},"graded":{"type":"string","title":"Graded","default":""},"passed":{"type":"boolean","title":"Passed","default":false},"as_expected":{"type":"boolean","title":"As Expected","default":false},"verdict":{"type":"string","title":"Verdict","default":"unknown"},"error":{"type":"string","title":"Error","default":""},"tags":{"items":{"type":"string"},"type":"array","title":"Tags"},"problems":{"items":{"type":"string"},"type":"array","title":"Problems"}},"type":"object","required":["run_id"],"title":"GymRun","description":"One run of the case, isolated on its own branch."},"GymWorkspaceList":{"properties":{"root":{"type":"string","title":"Root"},"count":{"type":"integer","title":"Count"},"complete":{"type":"boolean","title":"Complete","default":true},"workspaces":{"items":{"$ref":"#/components/schemas/GymWorkspaceRow"},"type":"array","title":"Workspaces"}},"type":"object","required":["root","count","workspaces"],"title":"GymWorkspaceList"},"GymWorkspaceRow":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"case":{"type":"string","title":"Case"},"title":{"type":"string","title":"Title","default":""},"world":{"type":"string","title":"World","default":""},"mode":{"type":"string","title":"Mode","default":""},"expect":{"type":"string","title":"Expect","default":"pass"},"path":{"type":"string","title":"Path","default":""},"git":{"$ref":"#/components/schemas/GymGit"},"run_id":{"type":"string","title":"Run Id","default":""},"run_no":{"type":"integer","title":"Run No","default":0},"branch":{"type":"string","title":"Branch","default":""},"seed":{"type":"string","title":"Seed","default":""},"head":{"type":"string","title":"Head","default":""},"lane":{"type":"string","title":"Lane","default":""},"transport":{"type":"string","title":"Transport","default":""},"channels":{"items":{"type":"string"},"type":"array","title":"Channels"},"status":{"type":"string","title":"Status","default":"running"},"verdict":{"type":"string","title":"Verdict","default":"unknown"},"score":{"type":"string","title":"Score","default":""},"graded":{"type":"string","title":"Graded","default":""},"passed":{"type":"boolean","title":"Passed","default":false},"as_expected":{"type":"boolean","title":"As Expected","default":false},"error":{"type":"string","title":"Error","default":""},"wrote":{"type":"boolean","title":"Wrote","default":false},"changed_files":{"items":{"type":"string"},"type":"array","title":"Changed Files"},"files_changed":{"type":"integer","title":"Files Changed","default":0},"additions":{"type":"integer","title":"Additions","default":0},"deletions":{"type":"integer","title":"Deletions","default":0},"tags":{"items":{"type":"string"},"type":"array","title":"Tags"},"runs":{"items":{"$ref":"#/components/schemas/GymRun"},"type":"array","title":"Runs"},"created_at":{"type":"string","title":"Created At","default":""},"updated_at":{"type":"string","title":"Updated At","default":""},"problems":{"items":{"type":"string"},"type":"array","title":"Problems"}},"type":"object","required":["id","case"],"title":"GymWorkspaceRow","description":"One case, self-describing without opening it.\n\nThe newest run's answers are flattened to the top level because a list shows\none row per case; `runs` underneath is the history. `id` is the handle for\nevery repository route."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HookCreate":{"properties":{"target_kind":{"type":"string","maxLength":60,"minLength":1,"title":"Target Kind"},"target_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Target Id"},"purpose":{"type":"string","maxLength":400,"title":"Purpose","default":""},"expects":{"additionalProperties":true,"type":"object","title":"Expects"},"ttl_hours":{"type":"integer","maximum":720.0,"minimum":1.0,"title":"Ttl Hours","default":24},"max_submissions":{"type":"integer","maximum":1000.0,"minimum":1.0,"title":"Max Submissions","default":1}},"type":"object","required":["target_kind"],"title":"HookCreate"},"HumanConversationContext":{"properties":{"channel":{"type":"string","const":"web_chat","title":"Channel","default":"web_chat"},"modality":{"anyOf":[{"type":"string","enum":["text","voice"]},{"type":"null"}],"title":"Modality"},"transport":{"anyOf":[{"type":"string","const":"browser_webrtc"},{"type":"null"}],"title":"Transport"},"surface":{"type":"string","maxLength":64,"minLength":1,"title":"Surface"},"device":{"type":"string","enum":["phone","tablet","desktop","unknown"],"title":"Device","default":"unknown"},"platform":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"title":"Platform"},"viewport_width":{"anyOf":[{"type":"integer","maximum":20000.0,"minimum":1.0},{"type":"null"}],"title":"Viewport Width"},"viewport_height":{"anyOf":[{"type":"integer","maximum":20000.0,"minimum":1.0},{"type":"null"}],"title":"Viewport Height"},"touch":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Touch"},"locale":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Locale"},"time_zone":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"title":"Time Zone"},"message_visibility":{"type":"string","enum":["human","private"],"title":"Message Visibility","default":"human"},"audience_attached":{"type":"boolean","title":"Audience Attached","default":false},"replying_to":{"anyOf":[{"$ref":"#/components/schemas/ReplyingTo"},{"type":"null"}]},"looking_at":{"anyOf":[{"$ref":"#/components/schemas/Looking"},{"type":"null"}]},"trail":{"anyOf":[{"items":{"$ref":"#/components/schemas/Looking"},"type":"array","maxItems":8},{"type":"null"}],"title":"Trail"},"from_screen":{"anyOf":[{"type":"string","maxLength":240},{"type":"null"}],"title":"From Screen"},"about":{"anyOf":[{"type":"string","maxLength":400},{"type":"null"}],"title":"About"},"interaction":{"anyOf":[{"type":"string","enum":["agent_action","screen_next"]},{"type":"null"}],"title":"Interaction"},"control_key":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Control Key"}},"type":"object","required":["surface"],"title":"HumanConversationContext","description":"Client-observed facts for a human attached to an ordinary run.\n\nThese facts shape communication, never authority.  The server adds the\ncommunication contract and message clocks after accepting the turn."},"IngestEvalReceiptRequest":{"properties":{"source":{"type":"string","maxLength":120,"minLength":1,"title":"Source","default":"darwin-eval"},"receipt":{"additionalProperties":true,"type":"object","title":"Receipt"}},"additionalProperties":false,"type":"object","required":["receipt"],"title":"IngestEvalReceiptRequest"},"InputBrowserCommand":{"properties":{"type":{"type":"string","const":"input","title":"Type"},"node_id":{"type":"string","maxLength":16,"minLength":2,"title":"Node Id"},"value":{"type":"string","maxLength":20000,"title":"Value"}},"additionalProperties":false,"type":"object","required":["type","node_id","value"],"title":"InputBrowserCommand"},"InstancesBody":{"properties":{"instances":{"type":"integer","maximum":50.0,"minimum":0.0,"title":"Instances"}},"type":"object","required":["instances"],"title":"InstancesBody"},"InteractionResponseRequest":{"properties":{"response_key":{"type":"string","maxLength":200,"minLength":1,"title":"Response Key"},"response":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Response"},"decision":{"anyOf":[{"type":"string","enum":["approve","deny","abstain","unreachable"]},{"type":"null"}],"title":"Decision"},"proposal_revision":{"anyOf":[{"type":"integer","minimum":1.0},{"type":"null"}],"title":"Proposal Revision"},"proposal_sha256":{"anyOf":[{"type":"string","maxLength":64,"minLength":64},{"type":"null"}],"title":"Proposal Sha256"},"human_message":{"anyOf":[{"type":"string","maxLength":2000,"minLength":1},{"type":"null"}],"title":"Human Message"}},"type":"object","required":["response_key"],"title":"InteractionResponseRequest"},"KeyboardBrowserCommand":{"properties":{"type":{"type":"string","const":"keyboard","title":"Type"},"node_id":{"type":"string","maxLength":16,"minLength":2,"title":"Node Id"},"key":{"type":"string","maxLength":64,"minLength":1,"title":"Key"},"code":{"anyOf":[{"type":"string","maxLength":64,"minLength":1},{"type":"null"}],"title":"Code"},"event":{"type":"string","enum":["press","down","up"],"title":"Event","default":"press"},"modifiers":{"items":{"type":"string","enum":["Alt","Control","Meta","Shift"]},"type":"array","maxItems":4,"title":"Modifiers"}},"additionalProperties":false,"type":"object","required":["type","node_id","key"],"title":"KeyboardBrowserCommand"},"LaunchSubagentsRequest":{"properties":{"subagents":{"items":{"$ref":"#/components/schemas/SpawnAgentRequest"},"type":"array","maxItems":16,"minItems":1,"title":"Subagents"}},"type":"object","required":["subagents"],"title":"LaunchSubagentsRequest","description":"Several independent child work orders admitted as one atomic launch."},"LinePreview":{"properties":{"line":{"type":"string","title":"Line"},"parts":{"items":{"type":"string"},"type":"array","title":"Parts"},"withheld":{"items":{"type":"string"},"type":"array","title":"Withheld"},"characters":{"type":"integer","title":"Characters"},"content_hash":{"type":"string","title":"Content Hash"}},"type":"object","required":["line","parts","withheld","characters","content_hash"],"title":"LinePreview","description":"What `compose()` actually concatenates for this reader, per line."},"LineRequest":{"properties":{"line_id":{"type":"string","format":"uuid","title":"Line Id"}},"type":"object","required":["line_id"],"title":"LineRequest"},"Looking":{"properties":{"label":{"type":"string","maxLength":200,"minLength":1,"title":"Label"},"kind":{"type":"string","enum":["conversation","place","screen","record","website"],"title":"Kind","default":"screen"},"ref":{"anyOf":[{"type":"string","maxLength":240},{"type":"null"}],"title":"Ref"},"spot":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Spot"},"seconds":{"anyOf":[{"type":"integer","maximum":86400.0,"minimum":0.0},{"type":"null"}],"title":"Seconds"}},"type":"object","required":["label"],"title":"Looking","description":"WHERE THE PERSON IS STANDING while they type, in their own screen's words.\n\nTHE BUG THIS FIXES IS THE `ReplyingTo` BUG, TWICE OVER. The shell has been\nposting `client_context.from_screen` and `client_context.about` from every\ngenerated screen's send button since that path shipped, and this model\ndeclared neither — so pydantic dropped both at the door on every turn, the\nsame silent discard that made \"follow up\" unanswerable. A field the client\nsends and the server does not name is not context; it is bandwidth.\n\nIT IS THE BREADCRUMB, NOT THE PATH. `label` is what their screen actually\nshows them — \"Front Desk › Calls › Robert Liu\" — because that is the phrase\nthey would use if asked what they were looking at, and it is the only form\nin which \"the second one\" resolves. `ref` rides alongside so the desk can\nOPEN the same thing instead of only naming it: they answer different\nquestions and neither substitutes for the other.\n\n`spot` is a heading and a rough depth, never a pixel offset. A person can be\nanswered about \"under 'What we agreed'\"; nobody can be answered about 812.\n\nSized here rather than trusted, like every other client observation."},"MarkThreadReadRequest":{"properties":{"number":{"type":"string","maxLength":20,"minLength":3,"title":"Number"}},"type":"object","required":["number"],"title":"MarkThreadReadRequest","description":"Turn on the customer's \"Read\" receipt — the \"I'm on it\" with no words.\n\n`extra=\"ignore\"` for the reason spelled out on `ReactToNumberRequest`: the\nbound destination is merged into every POST the harness sends, and a model\nwith one field and no room for it answers 422 on exactly the turns this verb\nexists to serve."},"NavigateBrowserCommand":{"properties":{"type":{"type":"string","const":"navigate","title":"Type"},"url":{"type":"string","maxLength":2048,"minLength":8,"title":"Url"}},"additionalProperties":false,"type":"object","required":["type","url"],"title":"NavigateBrowserCommand"},"OpenInboxRequest":{"properties":{"domain":{"type":"string","maxLength":253,"minLength":3,"title":"Domain"},"username":{"type":"string","maxLength":64,"minLength":1,"pattern":"^[a-z0-9]([a-z0-9._-]*[a-z0-9])?$","title":"Username"},"display_name":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"title":"Display Name"}},"type":"object","required":["domain","username"],"title":"OpenInboxRequest","description":"One address on a domain this team already owns."},"OwnerHandoffHumanEvalRequest":{"properties":{"source_line_id":{"type":"string","format":"uuid","title":"Source Line Id"},"target_line_id":{"type":"string","format":"uuid","title":"Target Line Id"},"case_id":{"type":"string","const":"angry-repeat-repair-owner-handoff","title":"Case Id"},"allow_external_effect":{"type":"boolean","const":true,"title":"Allow External Effect"}},"additionalProperties":false,"type":"object","required":["source_line_id","target_line_id","case_id","allow_external_effect"],"title":"OwnerHandoffHumanEvalRequest","description":"Explicit external-effect gate for one real human handoff drill."},"PageWrite":{"properties":{"ref":{"type":"string","title":"Ref"},"rail":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rail"},"commit":{"type":"string","title":"Commit","default":""},"removed":{"items":{"type":"string"},"type":"array","title":"Removed"},"pushed":{"type":"boolean","title":"Pushed","default":false},"push_reason":{"type":"string","title":"Push Reason","default":""}},"type":"object","required":["ref"],"title":"PageWrite","description":"What the tree looks like now, and the commit that made it so."},"PaidFilingRequest":{"properties":{"line_id":{"type":"string","format":"uuid","title":"Line Id"},"confirm_paid_filing":{"type":"boolean","title":"Confirm Paid Filing","default":false}},"type":"object","required":["line_id"],"title":"PaidFilingRequest"},"PauseResponsibilityRequest":{"properties":{"reason":{"type":"string","maxLength":4000,"minLength":1,"title":"Reason"}},"type":"object","required":["reason"],"title":"PauseResponsibilityRequest"},"PaywallCheckoutRequest":{"properties":{"concession":{"type":"boolean","title":"Concession","default":false},"embedded":{"type":"boolean","title":"Embedded","default":false},"card_field":{"type":"boolean","title":"Card Field","default":false}},"additionalProperties":false,"type":"object","title":"PaywallCheckoutRequest","description":"The paywall's own checkout. The offer is not the caller's to choose.\n\n`concession` is a boolean rather than a coupon id on purpose: the client\nasks for THE concession, and the server decides which one that is. A\nclient that could name a coupon could name any coupon in the account.\n\n`embedded` is a boolean for the same reason and answers the owner's ask\n(2026-08-28) for the card field to be \"on the page, not like on the page in\nbad of the card input\". It is the SAME session against the same price and\ncoupon — only where Stripe draws it changes — so it buys a client secret\nfor `kit-ui`'s `Checkout` instead of a URL to hand somebody away to. It\ndefaults to false, which is the hosted handover this route has always\nminted, so every caller that predates it is unaffected.\n\n`card_field` is the same boolean one step further, and it answers what the\nowner said when he saw what `embedded` actually drew (2026-08-28): \"the\ncheckout don't show the just have the payment method input of the credit\ncard … You didn't have to do any of this. This actually breaks the flow.\"\nIt asks for the CARD INPUT AND NOTHING ELSE — no order summary, no wallets,\nno save-my-information, no Stripe button — which Embedded Checkout cannot\nbe configured into, so the server answers it with a SetupIntent against the\nsame offer and the same coupon. A boolean for the third time for the third\nstatement of one reason: the client asks for a KIND OF SURFACE, and what it\ncosts and how it is arranged stays the server's."},"PermissionPreview":{"properties":{"initialized":{"type":"boolean","title":"Initialized"},"order":{"items":{"type":"string"},"type":"array","title":"Order","default":[]},"viewer":{"anyOf":[{"$ref":"#/components/schemas/ViewerIdentity"},{"type":"null"}]},"planes":{"additionalProperties":{"type":"integer"},"type":"object","title":"Planes","default":{}},"readable_planes":{"additionalProperties":{"type":"integer"},"type":"object","title":"Readable Planes","default":{}},"readable_count":{"type":"integer","title":"Readable Count","default":0},"hidden_count":{"type":"integer","title":"Hidden Count","default":0},"truncated":{"type":"boolean","title":"Truncated","default":false},"files":{"items":{"$ref":"#/components/schemas/PreviewFile"},"type":"array","title":"Files","default":[]},"lines":{"items":{"$ref":"#/components/schemas/LinePreview"},"type":"array","title":"Lines","default":[]},"tools":{"items":{"$ref":"#/components/schemas/ToolSurface"},"type":"array","title":"Tools","default":[]},"tool_surface_note":{"type":"string","title":"Tool Surface Note","default":""},"findings":{"items":{"additionalProperties":{"type":"string"},"type":"object"},"type":"array","title":"Findings","default":[]},"computed_by":{"items":{"type":"string"},"type":"array","title":"Computed By","default":[]}},"type":"object","required":["initialized"],"title":"PermissionPreview"},"PersonInput":{"properties":{"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Domain"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linkedin Url"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"}},"type":"object","title":"PersonInput","description":"One person to look up. Give the name plus the company domain, or the\nLinkedIn URL, or both — the two halves answer different questions."},"PointerBrowserCommand":{"properties":{"type":{"type":"string","const":"pointer","title":"Type"},"node_id":{"type":"string","maxLength":16,"minLength":2,"title":"Node Id"},"event":{"type":"string","enum":["down","move","up"],"title":"Event"},"button":{"type":"integer","enum":[0,1,2],"title":"Button","default":0},"x_ratio":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"X Ratio"},"y_ratio":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"Y Ratio"},"raster_version":{"anyOf":[{"type":"integer","minimum":1.0},{"type":"null"}],"title":"Raster Version"}},"additionalProperties":false,"type":"object","required":["type","node_id","event"],"title":"PointerBrowserCommand"},"PrepareProspectSitesRequest":{"properties":{"batch_key":{"type":"string","maxLength":120,"minLength":1,"title":"Batch Key"},"prospects":{"items":{"$ref":"#/components/schemas/ProspectSiteInput"},"type":"array","maxItems":50,"minItems":1,"title":"Prospects"},"publish":{"type":"boolean","title":"Publish","default":true}},"type":"object","required":["batch_key","prospects"],"title":"PrepareProspectSitesRequest"},"PreviewFile":{"properties":{"path":{"type":"string","title":"Path"},"visibility":{"type":"string","title":"Visibility"},"readable":{"type":"boolean","title":"Readable"},"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label"},"label_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label Level"},"inherited":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inherited"},"decided_by":{"type":"string","title":"Decided By"},"reason":{"type":"string","title":"Reason"},"cascade":{"items":{"$ref":"#/components/schemas/CascadeStep"},"type":"array","title":"Cascade"},"is_meta":{"type":"boolean","title":"Is Meta"}},"type":"object","required":["path","visibility","readable","label","label_level","inherited","decided_by","reason","cascade","is_meta"],"title":"PreviewFile"},"ProspectSiteInput":{"properties":{"company_url":{"type":"string","minLength":1,"format":"uri","title":"Company Url"},"company_name":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Company Name"},"contact_name":{"anyOf":[{"type":"string","maxLength":120,"minLength":1},{"type":"null"}],"title":"Contact Name"},"notes":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}],"title":"Notes"}},"type":"object","required":["company_url"],"title":"ProspectSiteInput"},"ProvisionPhoneNumberRequest":{"properties":{"connection_id":{"type":"string","format":"uuid","title":"Connection Id"},"phone_number":{"type":"string","maxLength":32,"minLength":2,"title":"Phone Number"},"display_name":{"type":"string","maxLength":64,"minLength":1,"title":"Display Name"},"monthly_price":{"additionalProperties":true,"type":"object","title":"Monthly Price"},"country_code":{"type":"string","maxLength":2,"minLength":2,"title":"Country Code","default":"US"},"number_type":{"type":"string","enum":["local","toll-free","toll_free","mobile"],"title":"Number Type","default":"local"},"address_sid":{"anyOf":[{"type":"string","maxLength":128,"minLength":1},{"type":"null"}],"title":"Address Sid"},"bundle_sid":{"anyOf":[{"type":"string","maxLength":128,"minLength":1},{"type":"null"}],"title":"Bundle Sid"},"identity_sid":{"anyOf":[{"type":"string","maxLength":128,"minLength":1},{"type":"null"}],"title":"Identity Sid"},"recording_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Recording Enabled"},"voice":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Voice"},"language":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Language"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"purpose":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Purpose"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Idempotency Key"},"decide_by":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decide By"}},"type":"object","required":["connection_id","phone_number","display_name","monthly_price"],"title":"ProvisionPhoneNumberRequest","description":"One exact provider-search result to freeze as a governed purchase."},"ProvisionSimulationLineRequest":{"properties":{"phone_number":{"type":"string","maxLength":32,"minLength":2,"title":"Phone Number"},"display_name":{"anyOf":[{"type":"string","maxLength":64,"minLength":1},{"type":"null"}],"title":"Display Name"}},"type":"object","required":["phone_number"],"title":"ProvisionSimulationLineRequest"},"PublishActivityRequest":{"properties":{"title":{"type":"string","maxLength":180,"minLength":1,"title":"Title"},"activity_type":{"type":"string","maxLength":80,"minLength":1,"title":"Activity Type"},"idempotency_key":{"type":"string","maxLength":180,"minLength":1,"title":"Idempotency Key"},"details":{"type":"string","maxLength":4000,"title":"Details","default":""},"references":{"items":{"$ref":"#/components/schemas/ActivityReferenceInput"},"type":"array","maxItems":20,"title":"References"},"visibility":{"type":"string","enum":["owner","manager","team","public"],"title":"Visibility","default":"team"}},"type":"object","required":["title","activity_type","idempotency_key"],"title":"PublishActivityRequest"},"PurchaseDomainRequest":{"properties":{"quote_id":{"type":"string","format":"uuid","title":"Quote Id"},"include_www":{"type":"boolean","title":"Include Www","default":true},"purpose":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Purpose"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Idempotency Key"},"decide_by":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decide By"}},"type":"object","required":["quote_id"],"title":"PurchaseDomainRequest","description":"Select one immutable quote; price and hostname stay backend-owned."},"QuestionAnswerRequest":{"properties":{"decision_key":{"type":"string","maxLength":200,"minLength":1,"title":"Decision Key"},"answer":{"additionalProperties":true,"type":"object","title":"Answer"}},"type":"object","required":["decision_key","answer"],"title":"QuestionAnswerRequest"},"RailPlacement":{"properties":{"rail":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rail"}},"type":"object","title":"RailPlacement","description":"Where a screen sits down the left — or nothing, which is off it."},"ReactToNumberRequest":{"properties":{"number":{"type":"string","maxLength":20,"minLength":3,"title":"Number"},"reaction":{"type":"string","maxLength":40,"minLength":1,"title":"Reaction"},"message_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Message Id"}},"type":"object","required":["number","reaction"],"title":"ReactToNumberRequest","description":"Tapback keyed the way the agent thinks: a PERSON, not a line and a handle.\n\nThe line-keyed sibling above needs a `line_id` UUID and a raw Sendblue\n`message_handle`, and the harness can obtain neither: `sms_thread` projects\n`provider_message_id` OUT of every row it returns, so the one tool that\ncould hand over a handle does not. `reaction` is a plain string rather than\na Literal so the route can answer with the six names instead of pydantic's\n422 schema dump — a wrong tapback is the model guessing a vocabulary, and\nthe fix is to state it.\n\nUNKNOWN KEYS ARE IGNORED, and this model shipped with `extra=\"forbid\"` for\nabout an hour before that proved fatal. `DarwinApi.request` merges the bound\nconversation's destination into EVERY POST body it sends — that is the\npermission story for sends, and `sms_send` depends on it — so a\ntapback issued from an inbound turn arrives carrying `to`, a field this\nroute neither needs nor asked for. Strict, that is a 422, and the agent\nnever got to react at all. `ReplyMessageRequest` was widened the same day\nafter the identical failure cost the email lane three refusals in nine\nseconds. Nothing is smuggled by the leniency: the handler reads named fields\nonly, and the destination is re-derived server-side from `number`."},"RealtimePrefetchRequest":{"properties":{"caller_epoch":{"type":"integer","maximum":1000000000.0,"minimum":1.0,"title":"Caller Epoch"}},"additionalProperties":false,"type":"object","required":["caller_epoch"],"title":"RealtimePrefetchRequest","description":"One authoritative caller-turn boundary from the Realtime bridge."},"RealtimeToolRequest":{"properties":{"tool_call_id":{"type":"string","maxLength":500,"minLength":1,"title":"Tool Call Id"},"name":{"type":"string","maxLength":100,"minLength":1,"title":"Name"},"arguments":{"additionalProperties":true,"type":"object","title":"Arguments"},"event_type":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Event Type"},"caller_epoch":{"anyOf":[{"type":"integer","maximum":1000000000.0,"minimum":1.0},{"type":"null"}],"title":"Caller Epoch"},"caller_utterance":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Caller Utterance"},"looking_at":{"anyOf":[{"type":"string","maxLength":240},{"type":"null"}],"title":"Looking At"}},"additionalProperties":false,"type":"object","required":["tool_call_id","name"],"title":"RealtimeToolRequest","description":"One function call emitted by the browser's Realtime session."},"ReconcileArtifactsRequest":{"properties":{"artifact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Artifact Id"},"statuses":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Statuses"},"limit":{"type":"integer","maximum":200.0,"minimum":1.0,"title":"Limit","default":50},"dry_run":{"type":"boolean","title":"Dry Run","default":false}},"additionalProperties":false,"type":"object","title":"ReconcileArtifactsRequest"},"RenamePhoneLineNumberRequest":{"properties":{"phone_number":{"type":"string","maxLength":32,"minLength":3,"title":"Phone Number"}},"additionalProperties":false,"type":"object","required":["phone_number"],"title":"RenamePhoneLineNumberRequest","description":"The number a provider reissued for an existing line."},"ReplyMessageRequest":{"properties":{"body_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Body Text"},"body":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Body"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text"},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Html"},"to":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":20},{"type":"null"}],"title":"To"},"cc":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":20},{"type":"null"}],"title":"Cc"},"bcc":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":20},{"type":"null"}],"title":"Bcc"},"reply_all":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Reply All"},"reply_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reply To"},"labels":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":20},{"type":"null"}],"title":"Labels"},"headers":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Headers"},"attachments":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array","maxItems":10},{"type":"null"}],"title":"Attachments"}},"type":"object","title":"ReplyMessageRequest","description":"One answer, in the thread the message it answers already belongs to.\n\nUNKNOWN KEYS ARE IGNORED, for the reason SendMessageRequest states above —\nand this model is the one that was still refusing them. THE CALLER CANNOT\nSTOP SENDING THE KEY: `darwin_mcp.DarwinApi.request` runs\n`_bind_destination` over EVERY POST body, so the bound conversation's\ndestination is merged into the reply body before it leaves the worker. For\nan inbound-email turn that destination is\n`{\"inbox_id\": ..., \"to\": [...]}` (main.py's email reply_to binding), so a\nreply arrives here carrying `inbox_id` — a field this model does not have\nand, under `extra=\"forbid\"`, refused. The lane writes it, the model never\ntyped it, and no amount of prompt could have removed it.\n\nMeasured on the pi lane: run 169192ad answered an inbound email at\n11:43:47 on 2026-08-09 and got three 422s in nine seconds\n(`api refused POST .../messages/702e0dcc.../reply -> 422`), the last of\nwhich ended the attempt. Ten 422s on this route shape in the 2026-08-06+\nwindow, every one of them `extra_forbidden: ['body', 'inbox_id']`.\n\nIgnoring is safe here for the same reason it is safe on a send: the handler\nbelow reads named fields only and forwards nothing blindly, and the thread\nthis lands in is fixed by the `message_id` in the PATH, which no body key\ncan reach."},"ReplyingTo":{"properties":{"id":{"type":"string","maxLength":200,"minLength":1,"title":"Id"},"from":{"type":"string","maxLength":80,"title":"From","default":""},"excerpt":{"type":"string","maxLength":400,"title":"Excerpt","default":""}},"type":"object","required":["id"],"title":"ReplyingTo","description":"WHICH MESSAGE THIS TURN IS AN ANSWER TO, when the person said so.\n\nThe chat has had the whole Telegram-shaped reply gesture since it shipped —\npick a bubble, it rides above the composer, and the sent message quotes it —\nand `useHarnessTurn` has been posting `client_context.replying_to` the whole\ntime. Nothing on this side declared the field, so pydantic dropped it at the\ndoor on every turn: the one fact that disambiguates a short answer was\ncollected, transmitted, and thrown away.\n\nThe receipt (owner, 2026-08-18, `channel:marketing`). He replied INLINE to\nhis own \"Build me Google Ads board please\" with the word \"follow up\", and\nthe desk answered \"Checking the outbound targets and previous outreach right\nnow\" — reading \"follow up\" as chase-the-leads rather than as what the quote\nmade unambiguous. Same failure the blue lane fixed in `thread_context.py`,\none surface over: Apple's pointer and this one both name the message, and\nboth are worthless if the transport strips them.\n\nBounds match what the composer can actually build (`QUOTE_LIMIT = 140`, plus\nroom for the ellipsis) — this is an OBSERVATION from a client, so it is\nsized here rather than trusted."},"RepoActionVerb":{"properties":{"act":{"type":"string","title":"Act"},"actions":{"type":"integer","title":"Actions"},"commits":{"type":"integer","title":"Commits"}},"type":"object","required":["act","actions","commits"],"title":"RepoActionVerb"},"RepoActionsWindow":{"properties":{"ref":{"type":"string","title":"Ref"},"since":{"type":"string","title":"Since"},"verbs":{"items":{"$ref":"#/components/schemas/RepoActionVerb"},"type":"array","title":"Verbs"},"actions":{"type":"integer","title":"Actions"},"scanned_commits":{"type":"integer","title":"Scanned Commits"},"commits_with_actions":{"type":"integer","title":"Commits With Actions"},"truncated_commits":{"type":"integer","title":"Truncated Commits","default":0},"window_start":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Window Start"},"window_end":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Window End"},"complete":{"type":"boolean","title":"Complete","default":true},"cap":{"type":"integer","title":"Cap","default":5000}},"type":"object","required":["ref","since","verbs","actions","scanned_commits","commits_with_actions"],"title":"RepoActionsWindow","description":"The verb histogram, always stamped with the window it actually covers."},"ReportStep":{"properties":{"kind":{"type":"string","enum":["note","action","file","tool","message"],"title":"Kind"},"label":{"type":"string","title":"Label"},"status":{"type":"string","enum":["done","failed","held","pending"],"title":"Status","default":"done"},"at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"At"}},"type":"object","required":["kind","label"],"title":"ReportStep"},"RerunBody":{"properties":{"run_id":{"type":"integer","exclusiveMinimum":0.0,"title":"Run Id"}},"type":"object","required":["run_id"],"title":"RerunBody"},"RetireInboxRequest":{"properties":{"address":{"type":"string","maxLength":320,"minLength":3,"title":"Address"},"idempotency_key":{"type":"string","maxLength":200,"minLength":1,"title":"Idempotency Key"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"decide_by":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decide By"}},"type":"object","required":["address","idempotency_key"],"title":"RetireInboxRequest","description":"Freeze one exact team-owned address for destructive owner approval."},"RollbackSiteBody":{"properties":{"version_id":{"type":"string","maxLength":36,"minLength":36,"title":"Version Id"},"message":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Message"}},"type":"object","required":["version_id"],"title":"RollbackSiteBody"},"RunReport":{"properties":{"run_id":{"type":"string","title":"Run Id"},"status":{"type":"string","title":"Status"},"outcome":{"type":"string","enum":["done","failed","running"],"title":"Outcome"},"goal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Goal"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"started_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Started At"},"finished_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Finished At"},"steps":{"items":{"$ref":"#/components/schemas/ReportStep"},"type":"array","title":"Steps"},"reply":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reply"}},"type":"object","required":["run_id","status","outcome"],"title":"RunReport"},"RunToolPolicy":{"properties":{"allowed_tools":{"items":{"type":"string"},"type":"array","maxItems":32,"minItems":1,"title":"Allowed Tools"},"max_calls":{"type":"integer","maximum":32.0,"minimum":0.0,"title":"Max Calls"},"max_calls_by_tool":{"anyOf":[{"additionalProperties":{"type":"integer"},"type":"object"},{"type":"null"}],"title":"Max Calls By Tool"},"max_steps":{"anyOf":[{"type":"integer","maximum":100.0,"minimum":1.0},{"type":"null"}],"title":"Max Steps"},"execution_profile":{"anyOf":[{"type":"string","const":"voice"},{"type":"null"}],"title":"Execution Profile"}},"type":"object","required":["allowed_tools","max_calls"],"title":"RunToolPolicy","description":"A caller may narrow a run's tools, never expand its authority."},"ScaleBody":{"properties":{"min_instances":{"type":"integer","maximum":100.0,"minimum":0.0,"title":"Min Instances"},"max_instances":{"type":"integer","maximum":100.0,"minimum":1.0,"title":"Max Instances"}},"type":"object","required":["min_instances","max_instances"],"title":"ScaleBody"},"ScreenPress":{"properties":{"control_key":{"type":"string","title":"Control Key"},"run_id":{"type":"string","title":"Run Id"},"status":{"type":"string","title":"Status"},"outcome":{"type":"string","enum":["done","failed","running"],"title":"Outcome"},"goal":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Goal"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"finished_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Finished At"}},"type":"object","required":["control_key","run_id","status","outcome"],"title":"ScreenPress","description":"One control on one screen, pressed once, and the run it opened."},"ScreenPressesResponse":{"properties":{"screen":{"type":"string","title":"Screen"},"presses":{"items":{"$ref":"#/components/schemas/ScreenPress"},"type":"array","title":"Presses"}},"type":"object","required":["screen"],"title":"ScreenPressesResponse"},"ScrollBrowserCommand":{"properties":{"type":{"type":"string","const":"scroll","title":"Type"},"node_id":{"anyOf":[{"type":"string","maxLength":16,"minLength":2},{"type":"null"}],"title":"Node Id"},"delta_x":{"type":"integer","maximum":10000.0,"minimum":-10000.0,"title":"Delta X","default":0},"delta_y":{"type":"integer","maximum":10000.0,"minimum":-10000.0,"title":"Delta Y","default":0}},"additionalProperties":false,"type":"object","required":["type"],"title":"ScrollBrowserCommand"},"SendMessageRequest":{"properties":{"to":{"items":{"type":"string"},"type":"array","maxItems":20,"minItems":1,"title":"To"},"subject":{"type":"string","maxLength":200,"minLength":1,"title":"Subject"},"body_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Body Text"},"body":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Body"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text"},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Html"},"cc":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":20},{"type":"null"}],"title":"Cc"},"bcc":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":20},{"type":"null"}],"title":"Bcc"},"in_reply_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"In Reply To"},"references":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":50},{"type":"null"}],"title":"References"},"reply_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reply To"},"labels":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":20},{"type":"null"}],"title":"Labels"},"headers":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"title":"Headers"},"attachments":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array","maxItems":10},{"type":"null"}],"title":"Attachments"}},"type":"object","required":["to","subject"],"title":"SendMessageRequest","description":"One message from an address this team owns.\n\nUNKNOWN KEYS ARE IGNORED, not refused. `extra=\"forbid\"` here cost a real\nconversation: replying to a message, the agent sent the `message_id` it was\nanswering — the single most natural thing to include — got a 422, decided\nthe route must be wrong, and invented\n`/inboxes/{id}/messages/{message_id}/reply`. That 422'd too, and the loop\nran until the turn gave up with the reply written and unsent.\nA strict schema on a send that already names its recipient buys nothing:\nthere is no field an extra key could smuggle past. The comment below already\nknew this — \"a 422 on a reasonable guess sends an agent off hand-rolling\nHTTP against endpoints that do not exist\" — and then forbade the guesses."},"SendReactionRequest":{"properties":{"message_handle":{"type":"string","maxLength":200,"minLength":1,"title":"Message Handle"},"reaction":{"type":"string","enum":["love","like","dislike","laugh","emphasize","question"],"title":"Reaction"},"part_index":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Part Index"}},"additionalProperties":false,"type":"object","required":["message_handle","reaction"],"title":"SendReactionRequest"},"SendSmsRequest":{"properties":{"line_id":{"type":"string","format":"uuid","title":"Line Id"},"to":{"type":"string","maxLength":32,"minLength":2,"title":"To"},"body_text":{"type":"string","maxLength":1600,"title":"Body Text","default":""},"body":{"anyOf":[{"type":"string","maxLength":1600},{"type":"null"}],"title":"Body"},"media_urls":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":10},{"type":"null"}],"title":"Media Urls"},"media_artifact_ids":{"anyOf":[{"items":{"type":"string","format":"uuid"},"type":"array","maxItems":10},{"type":"null"}],"title":"Media Artifact Ids"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Idempotency Key"},"decide_by":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decide By"}},"type":"object","required":["line_id","to"],"title":"SendSmsRequest"},"SendTypingRequest":{"properties":{"number":{"type":"string","maxLength":20,"minLength":3,"title":"Number"},"state":{"type":"string","enum":["start","stop"],"title":"State","default":"start"},"max_duration_ms":{"anyOf":[{"type":"integer","maximum":300000.0,"minimum":1.0},{"type":"null"}],"title":"Max Duration Ms"}},"additionalProperties":false,"type":"object","required":["number"],"title":"SendTypingRequest","description":"Typing is ephemeral and leaves no record — bounded, never durable."},"SetProfileRequest":{"properties":{"values":{"additionalProperties":true,"type":"object","title":"Values"}},"type":"object","title":"SetProfileRequest"},"SetScheduleStatusRequest":{"properties":{"status":{"type":"string","enum":["active","paused","cancelled"],"title":"Status"},"next_run_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Next Run At"}},"additionalProperties":false,"type":"object","required":["status"],"title":"SetScheduleStatusRequest"},"ShaBody":{"properties":{"sha":{"type":"string","maxLength":40,"minLength":40,"title":"Sha"}},"type":"object","required":["sha"],"title":"ShaBody"},"ShadowConditions":{"properties":{"hours":{"items":{"$ref":"#/components/schemas/ShadowHourWindow"},"type":"array","maxItems":8,"title":"Hours"},"callers":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Callers"},"timezone":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"title":"Timezone"}},"additionalProperties":false,"type":"object","title":"ShadowConditions","description":"WHICH calls go to the human, as opposed to how many of them.\n\nAn owner says \"send me anything after five, and anything from Kowalski\".\nNeither of those is a percentage, and before this the percentage was the\nonly thing shadow mode could express."},"ShadowHourWindow":{"properties":{"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","title":"From"},"to":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","title":"To"}},"additionalProperties":false,"type":"object","required":["from","to"],"title":"ShadowHourWindow","description":"One window in the shop's own clock, `HH:MM` to `HH:MM`.\n\nA window whose end is not after its start runs OVERNIGHT — \"17:00\" to\n\"08:00\" is the after-hours case, which is the one an owner actually asks\nfor, so it must be expressible rather than an empty set."},"SpawnAgentRequest":{"properties":{"task":{"type":"string","maxLength":100000,"minLength":1,"title":"Task"},"idempotency_key":{"type":"string","maxLength":120,"minLength":1,"title":"Idempotency Key"},"lane":{"anyOf":[{"type":"string","maxLength":32},{"type":"null"}],"title":"Lane"},"brief_deadline_seconds":{"anyOf":[{"type":"integer","maximum":3600.0,"minimum":1.0},{"type":"null"}],"title":"Brief Deadline Seconds"}},"type":"object","required":["task","idempotency_key"],"title":"SpawnAgentRequest"},"StartCallRequest":{"properties":{"line_id":{"type":"string","format":"uuid","title":"Line Id"},"remote_number":{"type":"string","maxLength":64,"minLength":2,"title":"Remote Number"},"direction":{"type":"string","enum":["inbound","outbound"],"title":"Direction","default":"inbound"},"purpose":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Purpose"}},"additionalProperties":false,"type":"object","required":["line_id","remote_number"],"title":"StartCallRequest","description":"Open one browser WebRTC call against a Stormy Realtime line."},"StartFreshRequest":{"properties":{"reason":{"type":"string","maxLength":500,"minLength":3,"title":"Reason"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8,"title":"Idempotency Key"}},"type":"object","required":["reason","idempotency_key"],"title":"StartFreshRequest"},"StartPhoneCallRequest":{"properties":{"line_id":{"type":"string","format":"uuid","title":"Line Id"},"to":{"type":"string","maxLength":32,"minLength":2,"title":"To"},"purpose":{"type":"string","maxLength":500,"minLength":1,"title":"Purpose","default":"Outbound call"},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"idempotency_key":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Idempotency Key"},"decide_by":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decide By"}},"type":"object","required":["line_id","to"],"title":"StartPhoneCallRequest"},"StationCounts":{"properties":{"wants_you":{"type":"integer","title":"Wants You","default":0},"handled":{"type":"integer","title":"Handled","default":0}},"type":"object","title":"StationCounts","description":"How much is really there, independent of how much was sent.\n\nA list that has been truncated must say so with a NUMBER, not by ending. The\nUI reads \"6 of 214 handled\" from here; without it a paged list looks like a\ncomplete one and an owner concludes the desk did less than it did."},"StationCreate":{"properties":{"title":{"type":"string","title":"Title"}},"type":"object","required":["title"],"title":"StationCreate","description":"One field, and that is the whole design.\n\nNO TEMPLATE (owner, 2026-08-18: \"just simply no templates just for a new\nchannel\"). A picker of channel TYPES would be us guessing the shape of a\nbusiness we have never seen, and every guess we ship becomes a wall the day\na shop needs the sixth kind we did not think of. A name is the one thing\nonly the owner can supply; everything else about a place — what it holds,\nwhat it looks like, which screen it opens on — is the agent's to decorate\nonce there is something to decorate."},"StationCreated":{"properties":{"station":{"$ref":"#/components/schemas/StationFace"},"commit":{"type":"string","title":"Commit","default":""}},"type":"object","required":["station"],"title":"StationCreated"},"StationFace":{"properties":{"name":{"type":"string","title":"Name"},"title":{"type":"string","title":"Title"},"hue":{"type":"string","title":"Hue","default":""},"needs":{"type":"string","title":"Needs","default":"oversight"},"face":{"type":"string","title":"Face","default":""},"fields":{"additionalProperties":{"type":"string"},"type":"object","title":"Fields"},"tab":{"type":"string","title":"Tab","default":""},"answer":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Answer"},"values":{"additionalProperties":true,"type":"object","title":"Values"},"waiting":{"type":"integer","title":"Waiting","default":0},"asks":{"type":"string","title":"Asks","default":""},"last_at":{"type":"string","title":"Last At","default":""},"created_at":{"type":"string","title":"Created At","default":""},"updated_at":{"type":"string","title":"Updated At","default":""},"pins":{"items":{"$ref":"#/components/schemas/StationPin"},"type":"array","title":"Pins"}},"type":"object","required":["name","title"],"title":"StationFace","description":"What `_meta.md` declares about the folder itself.\n\n`fields` is the whole frontmatter, verbatim — which is what lets a SURFACE be\ndeclared rather than coded. A station that says `view_kind: call_transcript`\nis telling the shell to render the generic scrolling view over that kind, and\nthe agent wrote that line into a file. Adding a new browsable surface is\ntherefore a commit, not a release."},"StationItem":{"properties":{"path":{"type":"string","title":"Path"},"title":{"type":"string","title":"Title"},"party":{"type":"string","title":"Party","default":""},"at":{"type":"string","title":"At","default":""},"needs":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Needs"},"rank":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rank"},"body":{"type":"string","title":"Body","default":""},"body_truncated":{"type":"boolean","title":"Body Truncated","default":false},"visibility":{"type":"string","title":"Visibility","default":"team"},"fields":{"additionalProperties":{"type":"string"},"type":"object","title":"Fields"},"face":{"type":"string","title":"Face","default":""},"has_artifact":{"type":"boolean","title":"Has Artifact","default":false}},"type":"object","required":["path","title"],"title":"StationItem","description":"One note the agent left, and the reason it left it.\n\n`fields` is the whole frontmatter, verbatim and unfiltered, because the\nuseful thing about a tree is that it grows fields nobody designed. The named\nattributes below are conveniences for the three questions every station has\n(who, what, when) — never a schema the agent must satisfy."},"StationList":{"properties":{"initialized":{"type":"boolean","title":"Initialized"},"stations":{"items":{"$ref":"#/components/schemas/StationFace"},"type":"array","title":"Stations"}},"type":"object","required":["initialized"],"title":"StationList"},"StationPin":{"properties":{"ref":{"type":"string","title":"Ref"},"path":{"type":"string","title":"Path"},"title":{"type":"string","title":"Title"},"needs":{"type":"string","title":"Needs"},"who":{"type":"string","title":"Who","default":""},"at":{"type":"string","title":"At","default":""},"rank":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rank"}},"type":"object","required":["ref","path","title","needs"],"title":"StationPin","description":"ONE THING THIS CHANNEL IS ASKING A PERSON — the owner's own to-do.\n\nThis is the same `needs:` seam the rail already counts, carried as ROWS\ninstead of a number so the conversation can pin them where the person is\nactually standing. A count tells an owner that three things want them and\nthen makes them go and find out which; a pin says what, and opens onto it.\n\nIT IS NOT THE SYSTEM'S WORK QUEUE, and that separation is the whole point of\nit being its own entity. The desk keeps its own bookkeeping — the work items\nit opened, the sweeps it has queued, the wakes it armed — and none of that is\nan owner's to-do list; a person who is shown the machinery starts managing\nthe machinery. A pin exists only where the desk decided a HUMAN has to answer\nsomething, which is exactly what writing `needs:` means, and a record that\ndeclares `system: true` is the desk talking to itself and never becomes one."},"StationRead":{"properties":{"initialized":{"type":"boolean","title":"Initialized"},"station":{"anyOf":[{"$ref":"#/components/schemas/StationFace"},{"type":"null"}]},"wants_you":{"items":{"$ref":"#/components/schemas/StationItem"},"type":"array","title":"Wants You"},"handled":{"items":{"$ref":"#/components/schemas/StationItem"},"type":"array","title":"Handled"},"counts":{"$ref":"#/components/schemas/StationCounts"},"next_offset":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Next Offset"}},"type":"object","required":["initialized"],"title":"StationRead"},"SuggestedField":{"properties":{"key":{"type":"string","title":"Key"},"coverage":{"type":"number","title":"Coverage"},"distinct":{"type":"integer","title":"Distinct"}},"type":"object","required":["key","coverage","distinct"],"title":"SuggestedField"},"SyncEvalDefinitionsRequest":{"properties":{"definitions":{"items":{"$ref":"#/components/schemas/EvalDefinitionRequest"},"type":"array","maxItems":2000,"minItems":1,"title":"Definitions"}},"additionalProperties":false,"type":"object","required":["definitions"],"title":"SyncEvalDefinitionsRequest"},"TelegramLinkChallengeRequest":{"properties":{"connection_id":{"type":"string","format":"uuid","title":"Connection Id"},"make_feedback_default":{"type":"boolean","title":"Make Feedback Default","default":true}},"additionalProperties":false,"type":"object","required":["connection_id"],"title":"TelegramLinkChallengeRequest"},"ToolSurface":{"properties":{"lane":{"type":"string","title":"Lane"},"decided_by":{"type":"string","title":"Decided By"},"caller_scoped":{"type":"boolean","title":"Caller Scoped"},"plane_scoped":{"type":"boolean","title":"Plane Scoped"},"offered":{"items":{"type":"string"},"type":"array","title":"Offered"},"withheld":{"items":{"type":"string"},"type":"array","title":"Withheld"},"note":{"type":"string","title":"Note"},"computed_by":{"type":"string","title":"Computed By"}},"type":"object","required":["lane","decided_by","caller_scoped","plane_scoped","offered","withheld","note","computed_by"],"title":"ToolSurface"},"TrafficBody":{"properties":{"revision":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Revision","description":"a revision name, or null for latest"}},"type":"object","title":"TrafficBody"},"TreeQuery":{"properties":{"sql":{"type":"string","title":"Sql"},"limit":{"type":"integer","title":"Limit","default":60}},"type":"object","required":["sql"],"title":"TreeQuery","description":"One model-written SELECT over this team's tree."},"UpdateCallForwardingRequest":{"properties":{"forwarding_number":{"anyOf":[{"type":"string","maxLength":20,"minLength":3},{"type":"null"}],"title":"Forwarding Number"}},"additionalProperties":false,"type":"object","title":"UpdateCallForwardingRequest","description":"Where a blue number's calls ring.\n\nOmit `forwarding_number` and the line's voice twin decides — the normal\ncase. Supplying one overrides it (calls to the owner's cell during a\nchangeover) without touching the twin link the rest of the system reads."},"UpdateConnectionHealthRequest":{"properties":{"status":{"type":"string","enum":["connected","degraded","disconnected","revoked"],"title":"Status"},"error":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Error"}},"additionalProperties":false,"type":"object","required":["status"],"title":"UpdateConnectionHealthRequest"},"UpdateConnectionRequest":{"properties":{"display_name":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Display Name"},"secret_ref":{"anyOf":[{"type":"string","maxLength":1000,"minLength":1},{"type":"null"}],"title":"Secret Ref"},"capabilities":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":100},{"type":"null"}],"title":"Capabilities"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"}},"additionalProperties":false,"type":"object","title":"UpdateConnectionRequest"},"UpdateEmailAccountRequest":{"properties":{"connection_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Connection Id"},"display_name":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Display Name"},"status":{"anyOf":[{"type":"string","enum":["connected","syncing","degraded","disconnected","revoked"]},{"type":"null"}],"title":"Status"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"}},"additionalProperties":false,"type":"object","title":"UpdateEmailAccountRequest"},"UpdateEvalRoutingRequest":{"properties":{"expected_current_definition_id":{"type":"string","format":"uuid","title":"Expected Current Definition Id"},"expected_routing_version":{"type":"integer","minimum":1.0,"title":"Expected Routing Version"},"owner_principal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Owner Principal Id"},"reviewer_principal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Reviewer Principal Id"},"priority":{"type":"integer","maximum":5.0,"minimum":1.0,"title":"Priority","default":3},"labels":{"items":{"type":"string"},"type":"array","maxItems":50,"title":"Labels"}},"additionalProperties":false,"type":"object","required":["expected_current_definition_id","expected_routing_version"],"title":"UpdateEvalRoutingRequest"},"UpdateMemberRequest":{"properties":{"idempotency_key":{"type":"string","maxLength":300,"minLength":1,"title":"Idempotency Key"},"role":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Role"},"capabilities":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":100},{"type":"null"}],"title":"Capabilities"},"status":{"anyOf":[{"type":"string","enum":["invited","active","suspended","removed"]},{"type":"null"}],"title":"Status"}},"additionalProperties":false,"type":"object","required":["idempotency_key"],"title":"UpdateMemberRequest"},"UpdatePhoneLineRequest":{"properties":{"connection_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Connection Id"},"display_name":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Display Name"},"status":{"anyOf":[{"type":"string","enum":["provisioning","active","degraded","offline","uncertain","released"]},{"type":"null"}],"title":"Status"},"capabilities":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":100},{"type":"null"}],"title":"Capabilities"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"config_merge":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config Merge"},"voice_twin_line_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Voice Twin Line Id"}},"additionalProperties":false,"type":"object","title":"UpdatePhoneLineRequest"},"UpdatePhoneRecordingRequest":{"properties":{"enabled":{"type":"boolean","title":"Enabled"}},"additionalProperties":false,"type":"object","required":["enabled"],"title":"UpdatePhoneRecordingRequest"},"UpdatePhoneShadowModeRequest":{"properties":{"forwarding_enabled":{"type":"boolean","title":"Forwarding Enabled"},"learning_enabled":{"type":"boolean","title":"Learning Enabled"},"forward_percent":{"anyOf":[{"type":"integer","maximum":100.0,"minimum":0.0},{"type":"null"}],"title":"Forward Percent"},"target":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Target"},"recording_notice":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"Recording Notice"},"when":{"anyOf":[{"$ref":"#/components/schemas/ShadowConditions"},{"type":"null"}]}},"additionalProperties":false,"type":"object","required":["forwarding_enabled","learning_enabled"],"title":"UpdatePhoneShadowModeRequest"},"UpdateVoiceTwinRequest":{"properties":{"twin_line_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Twin Line Id"}},"additionalProperties":false,"type":"object","title":"UpdateVoiceTwinRequest","description":"Which line answers a blue line's calls. `null` unnames it."},"UpdateWarmupRequest":{"properties":{"connection_id":{"type":"string","format":"uuid","title":"Connection Id"},"enabled":{"type":"boolean","title":"Enabled","default":true},"total_warmup_per_day":{"type":"integer","maximum":50.0,"minimum":1.0,"title":"Total Warmup Per Day","default":20},"daily_rampup":{"type":"integer","maximum":20.0,"minimum":5.0,"title":"Daily Rampup","default":5},"reply_rate_percentage":{"type":"integer","maximum":100.0,"minimum":20.0,"title":"Reply Rate Percentage","default":30},"work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Work Item Id"},"idempotency_key":{"type":"string","maxLength":200,"minLength":1,"title":"Idempotency Key"}},"type":"object","required":["connection_id","idempotency_key"],"title":"UpdateWarmupRequest"},"UpdateWorkItemRequest":{"properties":{"title":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Title"},"description":{"anyOf":[{"type":"string","maxLength":50000},{"type":"null"}],"title":"Description"},"kind":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Kind"},"parent_work_item_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Parent Work Item Id"},"status":{"anyOf":[{"type":"string","enum":["open","in_progress","waiting","blocked","completed","cancelled"]},{"type":"null"}],"title":"Status"},"priority":{"anyOf":[{"type":"integer","maximum":5.0,"minimum":1.0},{"type":"null"}],"title":"Priority"},"assigned_principal_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Assigned Principal Id"},"requires_human":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Requires Human"},"human_request":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Human Request"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"additionalProperties":false,"type":"object","title":"UpdateWorkItemRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerificationEvidence":{"properties":{"provider":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Provider"},"provider_reference":{"anyOf":[{"type":"string","maxLength":500,"minLength":1},{"type":"null"}],"title":"Provider Reference"},"artifact_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Artifact Id"},"observed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Observed At"}},"additionalProperties":false,"type":"object","title":"VerificationEvidence","description":"Non-secret verification coordinates; provider credentials never belong here."},"ViewRead":{"properties":{"initialized":{"type":"boolean","title":"Initialized"},"kind":{"type":"string","title":"Kind","default":""},"items":{"items":{"$ref":"#/components/schemas/StationItem"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total","default":0},"next_offset":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Next Offset"},"fields":{"items":{"$ref":"#/components/schemas/SuggestedField"},"type":"array","title":"Fields"}},"type":"object","required":["initialized"],"title":"ViewRead","description":"A VIEW — every note of one kind, wherever in the tree it was filed."},"ViewerIdentity":{"properties":{"mode":{"type":"string","title":"Mode"},"ceiling":{"type":"string","title":"Ceiling"},"readable_planes":{"items":{"type":"string"},"type":"array","title":"Readable Planes"},"ceiling_from":{"type":"string","title":"Ceiling From"},"caller":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Caller"},"resolved":{"type":"boolean","title":"Resolved","default":false},"tier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tier"},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Role"},"kind":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"resolved_from":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resolved From"},"resolved_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resolved By"},"subject_kind":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Subject Kind"},"grant_ceiling":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Grant Ceiling"},"grant_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Grant Sha256"},"note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note"}},"type":"object","required":["mode","ceiling","readable_planes","ceiling_from"],"title":"ViewerIdentity"},"WebVoiceSessionRequest":{"properties":{"agent_session_id":{"type":"string","format":"uuid","title":"Agent Session Id"},"surface":{"$ref":"#/components/schemas/BrowserSurfaceContext"}},"additionalProperties":false,"type":"object","required":["agent_session_id","surface"],"title":"WebVoiceSessionRequest","description":"Attach browser speech to the conversation already open in the web app."},"WorkNoteRequest":{"properties":{"note":{"type":"string","maxLength":4000,"minLength":1,"title":"Note"},"delivery":{"type":"string","enum":["silent","when_free","interrupt"],"title":"Delivery","default":"silent"}},"type":"object","required":["note"],"title":"WorkNoteRequest","description":"One line of the run's public log, in the words the owner would use.\n\nThe ceiling is `WORK_NOTE_MAX_CHARS`, imported rather than restated so the\nvalidation that refuses a paragraph and the store that refuses one cannot\ncome to disagree about how long a line is."}}}}