{"openapi":"3.1.0","info":{"title":"Domino Capability API","version":"2026-08-11.3","description":"Agent-oriented access to Domino. Capability-specific operations are generated from the same registry used at runtime."},"servers":[{"url":"https:\/\/letsdomino.io"}],"security":[{"bearerAuth":[]}],"paths":{"\/api\/v2\/capabilities\/actions.commit":{"post":{"operationId":"actions_commit","summary":"Commit one same-principal, same-surface prepared Domino action after explicit review. The prepared action is revalidated immediately before any effect.","tags":["Actions"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"action_handle":{"type":"string","maxLength":64}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"action_handle":{"type":"string","maxLength":64}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"actions.commit","version":"1.0","effect":"external_send","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":{"mode":"prepared_action","same_principal":true,"same_surface":true}}}},"\/api\/v2\/capabilities\/availability.query":{"post":{"operationId":"availability_query","summary":"Find and rank privacy-safe two-hour planning windows for the authenticated user and optionally saved Domino friends. Returns only free, busy, partial, or unknown constraints; never calendar event details. Results use stable snapshots, opaque time handles, explicit freshness, and required uncertainty disclosures.","tags":["Availability"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"when_preset":{"type":"string","enum":["today","tomorrow","next-few-days","next-few-days-weekdays","next-few-days-weekends","this-week","next-week","this-weekend","next-weekend","next-few-weekends","next-few-weeks","next-few-weeks-weekdays"]},"starts_after":{"type":"string","format":"date-time"},"starts_before":{"type":"string","format":"date-time"},"daily_start":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"daily_end":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"days_of_week":{"type":"array","items":{"type":"integer","minimum":1,"maximum":7},"maxItems":7},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":25},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"allow_refresh":{"type":"boolean"},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"when_preset":{"type":"string","enum":["today","tomorrow","next-few-days","next-few-days-weekdays","next-few-days-weekends","this-week","next-week","this-weekend","next-weekend","next-few-weekends","next-few-weeks","next-few-weeks-weekdays"]},"starts_after":{"type":"string","format":"date-time"},"starts_before":{"type":"string","format":"date-time"},"daily_start":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"daily_end":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"days_of_week":{"type":"array","items":{"type":"integer","minimum":1,"maximum":7},"maxItems":7},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":25},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"allow_refresh":{"type":"boolean"},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"availability.query","version":"2.0","effect":"read","result_statuses":["completed","needs_input","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["ideas.recommendations.get","calendar.status.get"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/calendar.status.get":{"post":{"operationId":"calendar_status_get","summary":"Return the authenticated user\u2019s privacy-safe calendar connection status, refresh freshness, availability usability, group-sharing state, and a web management link. Never returns account emails, feed URLs, event details, calendar IDs, tokens, or credentials.","tags":["Calendar"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":[]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":[]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"calendar.status.get","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["availability.query"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/events.search":{"post":{"operationId":"events_search","summary":"Search existing Domino events visible to the user by title, venue, and concrete time window. This read creates no execution receipt.","tags":["Events"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"query":{"type":"string","maxLength":160},"q":{"type":"string","maxLength":160},"event_query":{"type":"string","maxLength":160},"venue_query":{"type":"string","maxLength":160},"starts_after":{"type":"string","maxLength":80},"starts_before":{"type":"string","maxLength":80},"timezone":{"type":"string","maxLength":80},"limit":{"type":"integer","minimum":1,"maximum":25}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"query":{"type":"string","maxLength":160},"q":{"type":"string","maxLength":160},"event_query":{"type":"string","maxLength":160},"venue_query":{"type":"string","maxLength":160},"starts_after":{"type":"string","maxLength":80},"starts_before":{"type":"string","maxLength":80},"timezone":{"type":"string","maxLength":80},"limit":{"type":"integer","minimum":1,"maximum":25}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"events.search","version":"1.0","effect":"read","result_statuses":["completed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/executions.get":{"post":{"operationId":"executions_get","summary":"Read the authenticated user\u2019s durable write execution by its public execution reference.","tags":["Executions"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"execution_id":{"type":"string","minLength":26,"maxLength":26}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"execution_id":{"type":"string","minLength":26,"maxLength":26}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"executions.get","version":"1.0","effect":"read","result_statuses":["completed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.candidates.like":{"post":{"operationId":"ideas_candidates_like","summary":"Like one or more Domino-issued recommendation candidates for the current user or selected friends.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"candidate_ids":{"type":"array","items":{"type":"string"},"minItems":1},"person_handles":{"type":"array","items":{"type":"string","maxLength":191}},"idea_list_handle":{"type":"string","maxLength":191}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"candidate_ids":{"type":"array","items":{"type":"string"},"minItems":1},"person_handles":{"type":"array","items":{"type":"string","maxLength":191}},"idea_list_handle":{"type":"string","maxLength":191}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.candidates.like","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.capture":{"post":{"operationId":"ideas_capture","summary":"Capture one raw Domino idea from text, one source URL, or uploaded media, or answer the current clarification for one capture. Domino persists the capture synchronously, enriches it asynchronously, and never reports terminal success until the paired read confirms persisted state. Intentionally multi-item sources belong to roundup capture.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"raw_text":{"type":"string","maxLength":10000},"text":{"type":"string","maxLength":10000},"source_url":{"type":"string","format":"uri","maxLength":2048},"target_feed_text":{"type":"string","maxLength":160},"target_person_text":{"type":"string","maxLength":160},"media_refs":{"type":"array","items":{"type":"string","maxLength":40},"maxItems":4},"capture_public_id":{"type":"string","maxLength":32},"clarification_answer":{"type":"string","maxLength":2000},"target_ideas_list_handle":{"type":"string","maxLength":191}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"raw_text":{"type":"string","maxLength":10000},"text":{"type":"string","maxLength":10000},"source_url":{"type":"string","format":"uri","maxLength":2048},"target_feed_text":{"type":"string","maxLength":160},"target_person_text":{"type":"string","maxLength":160},"media_refs":{"type":"array","items":{"type":"string","maxLength":40},"maxItems":4},"capture_public_id":{"type":"string","maxLength":32},"clarification_answer":{"type":"string","maxLength":2000},"target_ideas_list_handle":{"type":"string","maxLength":191}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.capture","version":"2.0","effect":"write","result_statuses":["accepted","needs_input","failed"],"status_capability":"ideas.capture.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.capture.get":{"post":{"operationId":"ideas_capture_get","summary":"Read one authenticated user-owned idea capture and report whether enrichment is still accepted, needs input, failed honestly, or completed. This read creates no execution receipt.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"capture_public_id":{"type":"string","maxLength":32},"after_cursor":{"type":"integer","minimum":0}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"capture_public_id":{"type":"string","maxLength":32},"after_cursor":{"type":"integer","minimum":0}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.capture.get","version":"1.0","effect":"read","result_statuses":["completed","accepted","needs_input","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.created.archive":{"post":{"operationId":"ideas_created_archive","summary":"Archive one owned created idea so it no longer appears in active saved-idea or recommendation views.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"idea_handle":{"type":"string","maxLength":64}},"required":["idea_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"idea_handle":{"type":"string","maxLength":64}},"required":["idea_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.created.archive","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.created.update":{"post":{"operationId":"ideas_created_update","summary":"Update the title, description, source URL, For You visibility, or Ideas List memberships of one owned created idea without changing its underlying place or event identity.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"idea_handle":{"type":"string","maxLength":64},"title":{"type":"string","maxLength":160},"description":{"type":["string","null"],"maxLength":2000},"source_url":{"type":["string","null"],"format":"uri","maxLength":2048},"show_in_for_you":{"type":"boolean"},"ideas_list_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50}},"required":["idea_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"idea_handle":{"type":"string","maxLength":64},"title":{"type":"string","maxLength":160},"description":{"type":["string","null"],"maxLength":2000},"source_url":{"type":["string","null"],"format":"uri","maxLength":2048},"show_in_for_you":{"type":"boolean"},"ideas_list_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50}},"required":["idea_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.created.update","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.list.generate":{"post":{"operationId":"ideas_list_generate","summary":"Generate and persist one Domino ideas list from explicit people, activity, area, timing, or search filters.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"name":{"type":"string","maxLength":120},"people":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"names":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":25,"description":"Opaque saved-person handles returned by Domino. Copy them exactly; never invent or transform them."},"feed_name":{"type":"string","maxLength":120},"feed_names":{"type":"array","items":{"type":"string"}},"idea_list_name":{"type":"string","maxLength":120},"idea_list_names":{"type":"array","items":{"type":"string"}},"neighborhoods":{"type":"array","items":{"type":"string"}},"activities":{"type":"array","items":{"type":"string"},"description":"Required activity or experience categories that returned choices must satisfy. Use natural category wording when the user would reject choices from unrelated activity categories."},"user_activities":{"type":"array","items":{"type":"string"}},"when_preset":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never default to today, tonight, or the current date."},"when":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never infer a convenient time from the current datetime."},"time_slots":{"type":"array","description":"Concrete time windows derived only from timing the user explicitly supplied or previously confirmed.","items":{"type":"object","properties":{"starts_at":{"type":"string","maxLength":80},"ends_at":{"type":"string","maxLength":80}},"required":["starts_at","ends_at"],"additionalProperties":false}},"duration_minutes":{"type":"integer","minimum":1},"search":{"type":"string","maxLength":200,"description":"A hard lexical requirement: a concrete named venue, object, cuisine, or activity that returned candidates must match."},"preference_terms":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":10,"description":"Cross-category qualitative modifiers used for ranking and explanation, not eligibility. Use only when choices from different activity categories could still satisfy the request; required activity or experience categories belong in activities."},"limit":{"type":"integer","minimum":1,"maximum":25},"idea_list_handles":{"type":"array","items":{"type":"string","maxLength":191}}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"name":{"type":"string","maxLength":120},"people":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"names":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":25,"description":"Opaque saved-person handles returned by Domino. Copy them exactly; never invent or transform them."},"feed_name":{"type":"string","maxLength":120},"feed_names":{"type":"array","items":{"type":"string"}},"idea_list_name":{"type":"string","maxLength":120},"idea_list_names":{"type":"array","items":{"type":"string"}},"neighborhoods":{"type":"array","items":{"type":"string"}},"activities":{"type":"array","items":{"type":"string"},"description":"Required activity or experience categories that returned choices must satisfy. Use natural category wording when the user would reject choices from unrelated activity categories."},"user_activities":{"type":"array","items":{"type":"string"}},"when_preset":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never default to today, tonight, or the current date."},"when":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never infer a convenient time from the current datetime."},"time_slots":{"type":"array","description":"Concrete time windows derived only from timing the user explicitly supplied or previously confirmed.","items":{"type":"object","properties":{"starts_at":{"type":"string","maxLength":80},"ends_at":{"type":"string","maxLength":80}},"required":["starts_at","ends_at"],"additionalProperties":false}},"duration_minutes":{"type":"integer","minimum":1},"search":{"type":"string","maxLength":200,"description":"A hard lexical requirement: a concrete named venue, object, cuisine, or activity that returned candidates must match."},"preference_terms":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":10,"description":"Cross-category qualitative modifiers used for ranking and explanation, not eligibility. Use only when choices from different activity categories could still satisfy the request; required activity or experience categories belong in activities."},"limit":{"type":"integer","minimum":1,"maximum":25},"idea_list_handles":{"type":"array","items":{"type":"string","maxLength":191}}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.list.generate","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.create":{"post":{"operationId":"ideas_lists_create","summary":"Create one private Ideas List with optional saved people, planning defaults, directions, and an explicit choice to apply matching past likes.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"name":{"type":"string","maxLength":120},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50},"neighborhood_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"activity_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"custom_activity_names":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":25},"when_preset":{"type":["string","null"],"maxLength":80},"when_start":{"type":["string","null"],"format":"date-time"},"when_end":{"type":["string","null"],"format":"date-time"},"directions":{"type":"array","items":{"type":"string","maxLength":240},"maxItems":8},"apply_matching_likes":{"type":"boolean"}},"required":["name"]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"name":{"type":"string","maxLength":120},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50},"neighborhood_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"activity_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"custom_activity_names":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":25},"when_preset":{"type":["string","null"],"maxLength":80},"when_start":{"type":["string","null"],"format":"date-time"},"when_end":{"type":["string","null"],"format":"date-time"},"directions":{"type":"array","items":{"type":"string","maxLength":240},"maxItems":8},"apply_matching_likes":{"type":"boolean"}},"required":["name"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.create","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.defaults.update":{"post":{"operationId":"ideas_lists_defaults_update","summary":"Update one Ideas List\u2019s neighborhood, activity, custom-activity, and timing defaults using names from Domino\u2019s existing catalogs.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"neighborhood_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"activity_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"custom_activity_names":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":25},"when_preset":{"type":["string","null"],"maxLength":80},"when_start":{"type":["string","null"],"format":"date-time"},"when_end":{"type":["string","null"],"format":"date-time"}},"required":["ideas_list_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"neighborhood_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"activity_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":25},"custom_activity_names":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":25},"when_preset":{"type":["string","null"],"maxLength":80},"when_start":{"type":["string","null"],"format":"date-time"},"when_end":{"type":["string","null"],"format":"date-time"}},"required":["ideas_list_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.defaults.update","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.delete":{"post":{"operationId":"ideas_lists_delete","summary":"Delete one owned Ideas List without deleting the underlying saved ideas. This does not contact anyone.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.delete","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.directions.get":{"post":{"operationId":"ideas_lists_directions_get","summary":"Read the natural-language directions guiding one Ideas List and their current planning status.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.directions.get","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.duplicate":{"post":{"operationId":"ideas_lists_duplicate","summary":"Create a private owner-controlled copy of one Ideas List, including its current ideas, people, defaults, and directions.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.duplicate","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.get":{"post":{"operationId":"ideas_lists_get","summary":"Read one owned Ideas List, including its saved ideas, people, directions, planning defaults, and share-link count.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64}},"required":["ideas_list_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.get","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["ideas.lists.members.update","ideas.lists.defaults.update","ideas.lists.share.prepare"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.items.update":{"post":{"operationId":"ideas_lists_items_update","summary":"Add, remove, or replace up to 50 existing user-owned saved ideas in one Ideas List using only opaque Domino handles. Replaying the same final membership is unchanged.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"idea_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"mode":{"type":"string","enum":["replace","add","remove"]}},"required":["ideas_list_handle","idea_handles","mode"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"idea_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"mode":{"type":"string","enum":["replace","add","remove"]}},"required":["ideas_list_handle","idea_handles","mode"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.items.update","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.likes.apply":{"post":{"operationId":"ideas_lists_likes_apply","summary":"Apply an explicitly reviewed Ideas List likes preview to selected saved people using durable, idempotent relationship-interest records.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50},"source_person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"source_person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50}},"required":["ideas_list_handle"],"anyOf":[{"required":["person_handles"]},{"required":["person_names"]}]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50},"source_person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"source_person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50}},"required":["ideas_list_handle"],"anyOf":[{"required":["person_handles"]},{"required":["person_names"]}]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.likes.apply","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.likes.preview":{"post":{"operationId":"ideas_lists_likes_preview","summary":"Preview how many existing saved likes can be privately associated with newly added Ideas List people. This read changes nothing.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50},"source_person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"source_person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50}},"required":["ideas_list_handle"],"anyOf":[{"required":["person_handles"]},{"required":["person_names"]}]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50},"source_person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"source_person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50}},"required":["ideas_list_handle"],"anyOf":[{"required":["person_handles"]},{"required":["person_names"]}]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.likes.preview","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["ideas.lists.likes.apply"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.members.update":{"post":{"operationId":"ideas_lists_members_update","summary":"Replace, add, or remove saved Domino people from an Ideas List. This changes private planning context and never contacts those people.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"mode":{"type":"string","enum":["replace","add","remove"]},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50}},"required":["ideas_list_handle","mode"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"mode":{"type":"string","enum":["replace","add","remove"]},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":50},"person_names":{"type":"array","items":{"type":"string","maxLength":120},"maxItems":50}},"required":["ideas_list_handle","mode"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.members.update","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":["ideas.lists.likes.preview","ideas.lists.likes.apply"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.query":{"post":{"operationId":"ideas_lists_query","summary":"List the authenticated user\u2019s Ideas Lists with safe counts, saved people, planning defaults, stable pagination, and opaque handles.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"query":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"query":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.query","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["ideas.lists.get","ideas.lists.create"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.rename":{"post":{"operationId":"ideas_lists_rename","summary":"Rename one owned Ideas List while preserving its ideas, people, defaults, directions, and share history.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"name":{"type":"string","maxLength":120}},"required":["ideas_list_handle","name"]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"name":{"type":"string","maxLength":120}},"required":["ideas_list_handle","name"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.rename","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.lists.share.prepare":{"post":{"operationId":"ideas_lists_share_prepare","summary":"Prepare an Ideas List share to one saved person. Eligible Connected Friends require explicit commit; Friends in Mind receive a manual link and are never contacted by Domino.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"person_handle":{"type":"string","maxLength":64},"person_name":{"type":"string","maxLength":120}},"required":["ideas_list_handle"],"anyOf":[{"required":["person_handle"]},{"required":["person_name"]}]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"ideas_list_handle":{"type":"string","maxLength":64},"person_handle":{"type":"string","maxLength":64},"person_name":{"type":"string","maxLength":120}},"required":["ideas_list_handle"],"anyOf":[{"required":["person_handle"]},{"required":["person_name"]}]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.lists.share.prepare","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":["actions.commit"],"confirmation_policy":{"mode":"prepared_action_when_connected","commit_capability":"actions.commit"}}}},"\/api\/v2\/capabilities\/ideas.object.get":{"post":{"operationId":"ideas_object_get","summary":"Open or inspect one visible Domino object, list the user\u2019s ideas lists, inspect one list\u2019s contents or defaults, or list a supported object collection. This read creates no execution receipt.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"operation":{"type":"string","enum":["open","inspect","list_contents","list_ideas_lists","inspect_defaults"]},"subject":{"type":"object","properties":{"type":{"type":"string","enum":["ideas_list","idea","recommendation","capture","place","event","plan"]},"candidate_id":{"type":"string","maxLength":191},"query":{"type":"string","maxLength":240},"interaction_reference":{"type":"string","maxLength":191}},"additionalProperties":false},"collection":{"type":"string","enum":["saved_items","relationship_interests","recommendations"]},"limit":{"type":"integer","minimum":1,"maximum":25},"offset":{"type":"integer","minimum":0}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"operation":{"type":"string","enum":["open","inspect","list_contents","list_ideas_lists","inspect_defaults"]},"subject":{"type":"object","properties":{"type":{"type":"string","enum":["ideas_list","idea","recommendation","capture","place","event","plan"]},"candidate_id":{"type":"string","maxLength":191},"query":{"type":"string","maxLength":240},"interaction_reference":{"type":"string","maxLength":191}},"additionalProperties":false},"collection":{"type":"string","enum":["saved_items","relationship_interests","recommendations"]},"limit":{"type":"integer","minimum":1,"maximum":25},"offset":{"type":"integer","minimum":0}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.object.get","version":"2.0","effect":"read","result_statuses":["completed","needs_input"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.object.mutate":{"post":{"operationId":"ideas_object_mutate","summary":"Add or remove an actual saved list member, update ideas-list defaults, create a manual share link, or undo one identified list change.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"operation":{"type":"string","enum":["add_to_list","remove_from_list","create_share_link","undo","update_defaults"]},"subject":{"type":"object","additionalProperties":true},"destination":{"type":"object","additionalProperties":true},"defaults":{"type":"object","additionalProperties":true},"share_options":{"type":"object","additionalProperties":true},"reversible_action_id":{"type":"string","maxLength":32}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"operation":{"type":"string","enum":["add_to_list","remove_from_list","create_share_link","undo","update_defaults"]},"subject":{"type":"object","additionalProperties":true},"destination":{"type":"object","additionalProperties":true},"defaults":{"type":"object","additionalProperties":true},"share_options":{"type":"object","additionalProperties":true},"reversible_action_id":{"type":"string","maxLength":32}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.object.mutate","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.recommendations.get":{"post":{"operationId":"ideas_recommendations_get","summary":"Get transient Domino recommendations from the user\u2019s existing Ideas Lists and inventory context without saving a list. Domino captures the complete ranked result as one authorized immutable snapshot and returns a surface-sized page with a continuation cursor. Use page_size only for presentation and cursor only to advance the existing snapshot. Pass opaque person_handles or named people directly: exact existing people resolve canonically, while unresolved names return a typed relationships.people.ensure prerequisite instead of becoming durable identity. Put qualitative modifiers such as casual, cozy, or nearby in preference_terms; use activities or search only for a category or lexical requirement the user would reject unrelated choices for. This read creates no execution receipt.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"people":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"names":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":25,"description":"Opaque saved-person handles returned by Domino. Copy them exactly; never invent or transform them."},"feed_name":{"type":"string","maxLength":120},"feed_names":{"type":"array","items":{"type":"string"}},"idea_list_name":{"type":"string","maxLength":120},"idea_list_names":{"type":"array","items":{"type":"string"}},"neighborhoods":{"type":"array","items":{"type":"string"}},"activities":{"type":"array","items":{"type":"string"},"description":"Required activity or experience categories that returned choices must satisfy. Use natural category wording when the user would reject choices from unrelated activity categories."},"user_activities":{"type":"array","items":{"type":"string"}},"when_preset":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never default to today, tonight, or the current date."},"when":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never infer a convenient time from the current datetime."},"time_slots":{"type":"array","description":"Concrete time windows derived only from timing the user explicitly supplied or previously confirmed.","items":{"type":"object","properties":{"starts_at":{"type":"string","maxLength":80},"ends_at":{"type":"string","maxLength":80}},"required":["starts_at","ends_at"],"additionalProperties":false}},"duration_minutes":{"type":"integer","minimum":1},"search":{"type":"string","maxLength":200,"description":"A hard lexical requirement: a concrete named venue, object, cuisine, or activity that returned candidates must match."},"preference_terms":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":10,"description":"Cross-category qualitative modifiers used for ranking and explanation, not eligibility. Use only when choices from different activity categories could still satisfy the request; required activity or experience categories belong in activities."},"page_size":{"type":"integer","minimum":1,"maximum":25,"description":"Number of ranked candidates to present in this page. Domino owns the complete immutable result snapshot; this never limits how many matching candidates exist."},"cursor":{"type":"string","maxLength":4096,"description":"Opaque continuation cursor returned by the previous recommendations page. Copy it exactly and do not combine it with new discovery constraints."},"prioritize_likes":{"type":"boolean"},"allow_calendar_fetch":{"type":"boolean"},"idea_list_handles":{"type":"array","items":{"type":"string","maxLength":191}}}},{"type":"object","properties":{"version":{"type":"string","const":"2.1"},"input":{"type":"object","properties":{"people":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"names":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"person_handles":{"type":"array","items":{"type":"string","maxLength":64},"maxItems":25,"description":"Opaque saved-person handles returned by Domino. Copy them exactly; never invent or transform them."},"feed_name":{"type":"string","maxLength":120},"feed_names":{"type":"array","items":{"type":"string"}},"idea_list_name":{"type":"string","maxLength":120},"idea_list_names":{"type":"array","items":{"type":"string"}},"neighborhoods":{"type":"array","items":{"type":"string"}},"activities":{"type":"array","items":{"type":"string"},"description":"Required activity or experience categories that returned choices must satisfy. Use natural category wording when the user would reject choices from unrelated activity categories."},"user_activities":{"type":"array","items":{"type":"string"}},"when_preset":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never default to today, tonight, or the current date."},"when":{"type":"string","maxLength":80,"description":"Timing explicitly stated by the user or already present in durable constraints. Never infer a convenient time from the current datetime."},"time_slots":{"type":"array","description":"Concrete time windows derived only from timing the user explicitly supplied or previously confirmed.","items":{"type":"object","properties":{"starts_at":{"type":"string","maxLength":80},"ends_at":{"type":"string","maxLength":80}},"required":["starts_at","ends_at"],"additionalProperties":false}},"duration_minutes":{"type":"integer","minimum":1},"search":{"type":"string","maxLength":200,"description":"A hard lexical requirement: a concrete named venue, object, cuisine, or activity that returned candidates must match."},"preference_terms":{"type":"array","items":{"type":"string","maxLength":80},"maxItems":10,"description":"Cross-category qualitative modifiers used for ranking and explanation, not eligibility. Use only when choices from different activity categories could still satisfy the request; required activity or experience categories belong in activities."},"page_size":{"type":"integer","minimum":1,"maximum":25,"description":"Number of ranked candidates to present in this page. Domino owns the complete immutable result snapshot; this never limits how many matching candidates exist."},"cursor":{"type":"string","maxLength":4096,"description":"Opaque continuation cursor returned by the previous recommendations page. Copy it exactly and do not combine it with new discovery constraints."},"prioritize_likes":{"type":"boolean"},"allow_calendar_fetch":{"type":"boolean"},"idea_list_handles":{"type":"array","items":{"type":"string","maxLength":191}}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.recommendations.get","version":"2.1","effect":"read","result_statuses":["completed","needs_input"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.roundup.get":{"post":{"operationId":"ideas_roundup_get","summary":"Read one authenticated user-owned roundup operation and report its current scope, destination, generation, item outcomes, updates, and terminal state. This read creates no execution receipt.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"public_id":{"type":"string","maxLength":32},"after_cursor":{"type":"integer","minimum":0}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"public_id":{"type":"string","maxLength":32},"after_cursor":{"type":"integer","minimum":0}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.roundup.get","version":"1.0","effect":"read","result_statuses":["completed","accepted","needs_input","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.roundup.mutate":{"post":{"operationId":"ideas_roundup_mutate","summary":"Create or mutate one intentional multi-item Domino roundup. The shared roundup coordinator owns extraction, scope, destination, ranking, child captures, duplicate reuse, and terminal state. Each mutation requires a stable idempotency key; continuation mutations use a new key and the current expected_generation.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"operation":{"type":"string","enum":["create","resolve_scope","assign_destination","select_items","retry","archive"]},"public_id":{"type":"string","maxLength":32},"source_url":{"type":"string","format":"uri","maxLength":2048},"source_text":{"type":"string","maxLength":20000},"items":{"type":"array","minItems":2,"maxItems":100,"items":{"type":"object","properties":{"title":{"type":"string","maxLength":240},"kind":{"type":"string","enum":["place","event"]},"position":{"type":"integer","minimum":1},"excerpt":{"type":"string","maxLength":1200}},"required":["title"],"additionalProperties":false}},"mode":{"type":"string","enum":["capture","recommendation"]},"scope":{"type":"string","enum":["all","general_source","named_items"]},"selection_policy":{"type":"string","enum":["curated","save_all"]},"selected_items":{"type":"array","items":{"type":"string","maxLength":240},"maxItems":10},"target_feed_text":{"type":"string","maxLength":160},"target_person_text":{"type":"string","maxLength":160},"explicit_requirements":{"type":"array","items":{"type":"string","maxLength":240}},"recommendation_context":{"type":"object"},"expected_generation":{"type":"integer","minimum":0},"target_ideas_list_handle":{"type":"string","maxLength":191}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"operation":{"type":"string","enum":["create","resolve_scope","assign_destination","select_items","retry","archive"]},"public_id":{"type":"string","maxLength":32},"source_url":{"type":"string","format":"uri","maxLength":2048},"source_text":{"type":"string","maxLength":20000},"items":{"type":"array","minItems":2,"maxItems":100,"items":{"type":"object","properties":{"title":{"type":"string","maxLength":240},"kind":{"type":"string","enum":["place","event"]},"position":{"type":"integer","minimum":1},"excerpt":{"type":"string","maxLength":1200}},"required":["title"],"additionalProperties":false}},"mode":{"type":"string","enum":["capture","recommendation"]},"scope":{"type":"string","enum":["all","general_source","named_items"]},"selection_policy":{"type":"string","enum":["curated","save_all"]},"selected_items":{"type":"array","items":{"type":"string","maxLength":240},"maxItems":10},"target_feed_text":{"type":"string","maxLength":160},"target_person_text":{"type":"string","maxLength":160},"explicit_requirements":{"type":"array","items":{"type":"string","maxLength":240}},"recommendation_context":{"type":"object"},"expected_generation":{"type":"integer","minimum":0},"target_ideas_list_handle":{"type":"string","maxLength":191}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.roundup.mutate","version":"2.0","effect":"write","result_statuses":["completed","accepted","needs_input","failed"],"status_capability":"ideas.roundup.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.saved.query":{"post":{"operationId":"ideas_saved_query","summary":"List the authenticated user\u2019s saved places and created ideas, including their Ideas Lists and privacy-safe mutual-interest context. Use person_name or person_handle to filter mutual ideas for one saved person; generic query searches idea content, not people. Results use stable snapshots and opaque resource handles.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["all","saved_places","created_ideas"]},"query":{"type":"string","maxLength":160},"mutual_only":{"type":"boolean"},"person_handle":{"type":"string","maxLength":64},"person_name":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"kind":{"type":"string","enum":["all","saved_places","created_ideas"]},"query":{"type":"string","maxLength":160},"mutual_only":{"type":"boolean"},"person_handle":{"type":"string","maxLength":64},"person_name":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.saved.query","version":"2.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["plans.draft.create"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.search":{"post":{"operationId":"ideas_search","summary":"Search existing Domino plans, places, ideas, events, and ideas lists visible to the authenticated user. Supply non-empty query or q text grounded in the user request; people, activity, neighborhood, and scope filters cannot replace the search text. This is read-only, never creates objects or execution receipts, and may return retry_suggestions for a simpler Domino lookup.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"query":{"type":"string","maxLength":120,"description":"Non-empty search text grounded in the user request, such as a named place or the requested activity. Structured filters do not replace this text."},"q":{"type":"string","maxLength":120,"description":"Alias for query. Supply one non-empty query field; structured filters alone cannot execute a search."},"scopes":{"type":"array","items":{"type":"string","enum":["plans","places","ideas","events","feeds"]}},"scope":{"type":"string","enum":["plans","places","ideas","events","feeds"]},"people":{"type":"array","items":{"type":"string"}},"names":{"type":"array","items":{"type":"string"}},"activities":{"type":"array","items":{"type":"string"},"description":"Required activity or experience categories that returned choices must satisfy. Use natural category wording when the user would reject choices from unrelated activity categories."},"neighborhoods":{"type":"array","items":{"type":"string"}},"limit":{"type":"integer","minimum":1,"maximum":25}},"anyOf":[{"required":["query"]},{"required":["q"]}]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"query":{"type":"string","maxLength":120,"description":"Non-empty search text grounded in the user request, such as a named place or the requested activity. Structured filters do not replace this text."},"q":{"type":"string","maxLength":120,"description":"Alias for query. Supply one non-empty query field; structured filters alone cannot execute a search."},"scopes":{"type":"array","items":{"type":"string","enum":["plans","places","ideas","events","feeds"]}},"scope":{"type":"string","enum":["plans","places","ideas","events","feeds"]},"people":{"type":"array","items":{"type":"string"}},"names":{"type":"array","items":{"type":"string"}},"activities":{"type":"array","items":{"type":"string"},"description":"Required activity or experience categories that returned choices must satisfy. Use natural category wording when the user would reject choices from unrelated activity categories."},"neighborhoods":{"type":"array","items":{"type":"string"}},"limit":{"type":"integer","minimum":1,"maximum":25}},"anyOf":[{"required":["query"]},{"required":["q"]}]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.search","version":"1.0","effect":"read","result_statuses":["completed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/ideas.structured_create":{"post":{"operationId":"ideas_structured_create","summary":"Create a fully structured saved Domino idea. Raw links and incomplete source material belong to ideas.capture instead.","tags":["Ideas"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["place","event"]},"title":{"type":"string","maxLength":160},"description":{"type":"string","maxLength":2000},"custom_activity_name":{"type":"string","maxLength":80},"fixed_when":{"type":"string","format":"date-time"},"event_start_at":{"type":"string","format":"date-time"},"event_url":{"type":"string","format":"uri"},"show_in_for_you":{"type":"boolean"},"place_handle":{"type":"string","maxLength":191},"venue_place_handle":{"type":"string","maxLength":191},"ideas_list_handles":{"type":"array","items":{"type":"string","maxLength":191}}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"kind":{"type":"string","enum":["place","event"]},"title":{"type":"string","maxLength":160},"description":{"type":"string","maxLength":2000},"custom_activity_name":{"type":"string","maxLength":80},"fixed_when":{"type":"string","format":"date-time"},"event_start_at":{"type":"string","format":"date-time"},"event_url":{"type":"string","format":"uri"},"show_in_for_you":{"type":"boolean"},"place_handle":{"type":"string","maxLength":191},"venue_place_handle":{"type":"string","maxLength":191},"ideas_list_handles":{"type":"array","items":{"type":"string","maxLength":191}}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"ideas.structured_create","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/invites.get":{"post":{"operationId":"invites_get","summary":"Read one Domino invite addressed to the authenticated user. This read creates no execution receipt.","tags":["Invites"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"invite_handle":{"type":"string","maxLength":191}},"required":["invite_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"invite_handle":{"type":"string","maxLength":191}},"required":["invite_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"invites.get","version":"2.0","effect":"read","result_statuses":["completed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/invites.list":{"post":{"operationId":"invites_list","summary":"List Domino invites addressed to the authenticated user, including authoritative RSVP availability. This read creates no execution receipt.","tags":["Invites"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"rsvp_status":{"type":"string","enum":["pending","accepted","declined","removed"]},"include_removed":{"type":"boolean"},"include_expired":{"type":"boolean"},"limit":{"type":"integer","minimum":1,"maximum":50}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"rsvp_status":{"type":"string","enum":["pending","accepted","declined","removed"]},"include_removed":{"type":"boolean"},"include_expired":{"type":"boolean"},"limit":{"type":"integer","minimum":1,"maximum":50}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"invites.list","version":"1.0","effect":"read","result_statuses":["completed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/invites.rsvp":{"post":{"operationId":"invites_rsvp","summary":"Accept or decline one open Domino invite as the authenticated invitee through the authoritative RSVP service.","tags":["Invites"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"invite_handle":{"type":"string","maxLength":191},"response":{"type":"string","enum":["accepted","declined"]},"rsvp_status":{"type":"string","enum":["accepted","declined"]}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"invite_handle":{"type":"string","maxLength":191},"response":{"type":"string","enum":["accepted","declined"]},"rsvp_status":{"type":"string","enum":["accepted","declined"]}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"invites.rsvp","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/places.private.archive":{"post":{"operationId":"places_private_archive","summary":"Archive one owner-only private place so it is excluded from active selection while preserving historical plans.","tags":["Places"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"place_handle":{"type":"string","maxLength":64}},"required":["place_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"place_handle":{"type":"string","maxLength":64}},"required":["place_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"places.private.archive","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/places.private.create":{"post":{"operationId":"places_private_create","summary":"Create one owner-only private place from a name and optional address, description, timezone, or existing Domino activity. Image generation and uploads remain web-managed.","tags":["Places"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"name":{"type":"string","maxLength":160},"address":{"type":["string","null"],"maxLength":240},"description":{"type":["string","null"],"maxLength":2000},"timezone":{"type":["string","null"],"maxLength":80},"activity_name":{"type":["string","null"],"maxLength":120}},"required":["name"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"name":{"type":"string","maxLength":160},"address":{"type":["string","null"],"maxLength":240},"description":{"type":["string","null"],"maxLength":2000},"timezone":{"type":["string","null"],"maxLength":80},"activity_name":{"type":["string","null"],"maxLength":120}},"required":["name"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"places.private.create","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/places.private.query":{"post":{"operationId":"places_private_query","summary":"List the authenticated user\u2019s private places with opaque handles, stable pagination, and owner-safe details. Image and dense management work remain on the web.","tags":["Places"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"query":{"type":"string","maxLength":160},"include_archived":{"type":"boolean"},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"query":{"type":"string","maxLength":160},"include_archived":{"type":"boolean"},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"places.private.query","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["places.private.create","places.private.update","places.private.archive"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/places.private.update":{"post":{"operationId":"places_private_update","summary":"Update the safe text fields or activity of one owner-only private place. Image replacement remains a web management action.","tags":["Places"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"place_handle":{"type":"string","maxLength":64},"name":{"type":"string","maxLength":160},"address":{"type":["string","null"],"maxLength":240},"description":{"type":["string","null"],"maxLength":2000},"timezone":{"type":["string","null"],"maxLength":80},"activity_name":{"type":["string","null"],"maxLength":120}},"required":["place_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"place_handle":{"type":"string","maxLength":64},"name":{"type":"string","maxLength":160},"address":{"type":["string","null"],"maxLength":240},"description":{"type":["string","null"],"maxLength":2000},"timezone":{"type":["string","null"],"maxLength":80},"activity_name":{"type":["string","null"],"maxLength":120}},"required":["place_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"places.private.update","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/planning.brief.get":{"post":{"operationId":"planning_brief_get","summary":"Return a prioritized executive brief of Domino work needing attention: RSVP or tipping deadlines, incomplete drafts, waiting responses, plans within seven days, incomplete logistics, and mutual-interest opportunities without an active plan.","tags":["Planning"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":[]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":[]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"planning.brief.get","version":"2.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["plans.get","ideas.saved.query"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.cancel.prepare":{"post":{"operationId":"plans_cancel_prepare","summary":"Prepare cancellation of one hosted Domino against its current revision, roster, delivery eligibility, and destinations. Nothing changes and nobody is contacted until actions.commit.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"expected_revision":{"type":"integer","minimum":0}},"required":["plan_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"expected_revision":{"type":"integer","minimum":0}},"required":["plan_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.cancel.prepare","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":["confirmation.action_prepared"],"permitted_next_actions":["actions.commit"],"confirmation_policy":{"mode":"prepared_action","commit_capability":"actions.commit"}}}},"\/api\/v2\/capabilities\/plans.discard":{"post":{"operationId":"plans_discard","summary":"Discard one unexposed tentative Domino after authoritative eligibility checks. Plans with recipient exposure must be canceled instead.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}},"required":["plan_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}},"required":["plan_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.discard","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.draft.create":{"post":{"operationId":"plans_draft_create","summary":"Create or reuse one unsent Domino invite draft from a Domino-issued candidate, preserving card copy unless explicit overrides are supplied.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"candidate_id":{"type":"string","maxLength":160},"custom_activity_name":{"type":"string","maxLength":80},"scheduled_at":{"type":"string","format":"date-time"},"rsvp_deadline":{"type":"string","format":"date-time"},"capacity_min":{"type":"integer","minimum":2},"capacity_max":{"type":"integer","minimum":2},"title_override":{"type":"string","maxLength":240},"description_override":{"type":"string","maxLength":5000},"audience_selection":{"type":"object","properties":{"person_names":{"type":"array","items":{"type":"string"}},"person_handles":{"type":"array","items":{"type":"string","maxLength":191}}},"additionalProperties":false},"connect_on_signup":{"type":"boolean"},"idea_list_handle":{"type":"string","maxLength":191},"place_handle":{"type":"string","maxLength":191}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"candidate_id":{"type":"string","maxLength":160},"custom_activity_name":{"type":"string","maxLength":80},"scheduled_at":{"type":"string","format":"date-time"},"rsvp_deadline":{"type":"string","format":"date-time"},"capacity_min":{"type":"integer","minimum":2},"capacity_max":{"type":"integer","minimum":2},"title_override":{"type":"string","maxLength":240},"description_override":{"type":"string","maxLength":5000},"audience_selection":{"type":"object","properties":{"person_names":{"type":"array","items":{"type":"string"}},"person_handles":{"type":"array","items":{"type":"string","maxLength":191}}},"additionalProperties":false},"connect_on_signup":{"type":"boolean"},"idea_list_handle":{"type":"string","maxLength":191},"place_handle":{"type":"string","maxLength":191}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.draft.create","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":["plans.draft.update","plans.draft.preview","plans.prepare_send"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.draft.delete":{"post":{"operationId":"plans_draft_delete","summary":"Delete one user-owned unsent invite draft; active or sent plans cannot be deleted through this capability.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.draft.delete","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.draft.preview":{"post":{"operationId":"plans_draft_preview","summary":"Render and mark the current user-owned invite draft version as reviewed. This is a write because the reviewed checksum is persisted.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.draft.preview","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.draft.update":{"post":{"operationId":"plans_draft_update","summary":"Modify one user-owned Domino invite draft without sending it.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"candidate_id":{"type":"string","maxLength":160},"custom_activity_name":{"type":["string","null"],"maxLength":80},"scheduled_at":{"type":["string","null"],"format":"date-time"},"rsvp_deadline":{"type":["string","null"],"format":"date-time"},"capacity_min":{"type":"integer","minimum":2},"capacity_max":{"type":["integer","null"],"minimum":2},"title_override":{"type":["string","null"],"maxLength":240},"description_override":{"type":["string","null"],"maxLength":5000},"audience_selection":{"type":["object","null"],"properties":{"person_names":{"type":"array","items":{"type":"string"}},"person_handles":{"type":"array","items":{"type":"string","maxLength":191}}},"additionalProperties":false},"connect_on_signup":{"type":"boolean"},"idea_list_handle":{"type":"string","maxLength":191},"place_handle":{"type":"string","maxLength":191}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"candidate_id":{"type":"string","maxLength":160},"custom_activity_name":{"type":["string","null"],"maxLength":80},"scheduled_at":{"type":["string","null"],"format":"date-time"},"rsvp_deadline":{"type":["string","null"],"format":"date-time"},"capacity_min":{"type":"integer","minimum":2},"capacity_max":{"type":["integer","null"],"minimum":2},"title_override":{"type":["string","null"],"maxLength":240},"description_override":{"type":["string","null"],"maxLength":5000},"audience_selection":{"type":["object","null"],"properties":{"person_names":{"type":"array","items":{"type":"string"}},"person_handles":{"type":"array","items":{"type":"string","maxLength":191}}},"additionalProperties":false},"connect_on_signup":{"type":"boolean"},"idea_list_handle":{"type":"string","maxLength":191},"place_handle":{"type":"string","maxLength":191}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.draft.update","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.get":{"post":{"operationId":"plans_get","summary":"Read one authorized Domino plan, its current revision, timing, host or invitee role, RSVP counts, pending recipients visible to the host, delivery boundary, management state, and logistics progress.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}},"required":["plan_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}},"required":["plan_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.get","version":"2.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["plans.draft.update","plans.draft.preview","plans.prepare_send","plans.update.prepare","plans.cancel.prepare","plans.roster.prepare","plans.logistics.get","plans.discard","invites.list"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.logistics.get":{"post":{"operationId":"plans_logistics_get","summary":"Read the authorized logistics checklist and current progress for one Domino. Invitees receive only guest-visible items.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}},"required":["plan_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}},"required":["plan_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.logistics.get","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.logistics.update":{"post":{"operationId":"plans_logistics_update","summary":"Replace or add to the host-managed logistics checklist for one Domino. Booking, purchasing, and payment effects remain unsupported.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"mode":{"type":"string","enum":["replace","add"]},"guest_visible_default":{"type":"boolean"},"items":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["host_action","guest_requirement","payment_expectation"]},"action_type":{"type":"string","maxLength":80},"phase":{"type":"string","enum":["before_invite","before_plan_tips","after_plan_tips","before_arrival","after_plan"]},"actor_type":{"type":"string","enum":["host","each_guest","all_guests","system","custom"]},"visibility":{"type":"string","enum":["host","guest"]},"status":{"type":"string","enum":["suggested","pending","completed","skipped","dismissed"]},"title":{"type":"string","maxLength":240},"target_url":{"type":["string","null"],"format":"uri","maxLength":8192},"amount_note":{"type":["string","null"],"maxLength":240}},"required":["kind","action_type","phase","actor_type","visibility","title"],"additionalProperties":false},"maxItems":5},"item":{"type":"object","properties":{"kind":{"type":"string","enum":["host_action","guest_requirement","payment_expectation"]},"action_type":{"type":"string","maxLength":80},"phase":{"type":"string","enum":["before_invite","before_plan_tips","after_plan_tips","before_arrival","after_plan"]},"actor_type":{"type":"string","enum":["host","each_guest","all_guests","system","custom"]},"visibility":{"type":"string","enum":["host","guest"]},"status":{"type":"string","enum":["suggested","pending","completed","skipped","dismissed"]},"title":{"type":"string","maxLength":240},"target_url":{"type":["string","null"],"format":"uri","maxLength":8192},"amount_note":{"type":["string","null"],"maxLength":240}},"required":["title"],"additionalProperties":false}},"required":["plan_handle","mode"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"mode":{"type":"string","enum":["replace","add"]},"guest_visible_default":{"type":"boolean"},"items":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["host_action","guest_requirement","payment_expectation"]},"action_type":{"type":"string","maxLength":80},"phase":{"type":"string","enum":["before_invite","before_plan_tips","after_plan_tips","before_arrival","after_plan"]},"actor_type":{"type":"string","enum":["host","each_guest","all_guests","system","custom"]},"visibility":{"type":"string","enum":["host","guest"]},"status":{"type":"string","enum":["suggested","pending","completed","skipped","dismissed"]},"title":{"type":"string","maxLength":240},"target_url":{"type":["string","null"],"format":"uri","maxLength":8192},"amount_note":{"type":["string","null"],"maxLength":240}},"required":["kind","action_type","phase","actor_type","visibility","title"],"additionalProperties":false},"maxItems":5},"item":{"type":"object","properties":{"kind":{"type":"string","enum":["host_action","guest_requirement","payment_expectation"]},"action_type":{"type":"string","maxLength":80},"phase":{"type":"string","enum":["before_invite","before_plan_tips","after_plan_tips","before_arrival","after_plan"]},"actor_type":{"type":"string","enum":["host","each_guest","all_guests","system","custom"]},"visibility":{"type":"string","enum":["host","guest"]},"status":{"type":"string","enum":["suggested","pending","completed","skipped","dismissed"]},"title":{"type":"string","maxLength":240},"target_url":{"type":["string","null"],"format":"uri","maxLength":8192},"amount_note":{"type":["string","null"],"maxLength":240}},"required":["title"],"additionalProperties":false}},"required":["plan_handle","mode"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.logistics.update","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.prepare_send":{"post":{"operationId":"plans_prepare_send","summary":"Prepare a 15-minute confirmation token for the exact reviewed invite action and recipient snapshot. This never sends by itself.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"action":{"type":"string","enum":["create_share_link","send_invites"]},"send_person_names":{"type":"array","items":{"type":"string"}},"send_person_handles":{"type":"array","items":{"type":"string","maxLength":191}}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"action":{"type":"string","enum":["create_share_link","send_invites"]},"send_person_names":{"type":"array","items":{"type":"string"}},"send_person_handles":{"type":"array","items":{"type":"string","maxLength":191}}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.prepare_send","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":["confirmation.action_prepared"],"permitted_next_actions":[],"confirmation_policy":{"mode":"prepared_action","commit_capability":"actions.commit"}}}},"\/api\/v2\/capabilities\/plans.query":{"post":{"operationId":"plans_query","summary":"List the authenticated user\u2019s visible Domino plans as stable, snapshot-backed choices. Classifies drafts, upcoming, past, canceled, and discarded plans; distinguishes host and invitee roles; and returns only authorized opaque handles.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"scope":{"type":"string","enum":["all","active","upcoming","past","drafts","canceled","discarded"]},"role":{"type":"string","enum":["all","host","invitee"]},"query":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"scope":{"type":"string","enum":["all","active","upcoming","past","drafts","canceled","discarded"]},"role":{"type":"string","enum":["all","host","invitee"]},"query":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.query","version":"2.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":["plans.get"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.roster.prepare":{"post":{"operationId":"plans_roster_prepare","summary":"Prepare the exact invitation roster for a reviewed Domino. Connected eligible recipients use Domino delivery; Friends in Mind remain manual-share recipients. Nothing is sent until actions.commit.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"expected_revision":{"type":"integer","minimum":0},"recipient_handles":{"type":"array","items":{"type":"string","maxLength":64},"minItems":1,"maxItems":250},"recipient_names":{"type":"array","items":{"type":"string","maxLength":120},"minItems":1,"maxItems":250}},"required":["plan_handle"]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"expected_revision":{"type":"integer","minimum":0},"recipient_handles":{"type":"array","items":{"type":"string","maxLength":64},"minItems":1,"maxItems":250},"recipient_names":{"type":"array","items":{"type":"string","maxLength":120},"minItems":1,"maxItems":250}},"required":["plan_handle"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.roster.prepare","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":["confirmation.action_prepared"],"permitted_next_actions":["actions.commit"],"confirmation_policy":{"mode":"prepared_action","commit_capability":"actions.commit"}}}},"\/api\/v2\/capabilities\/plans.status.get":{"post":{"operationId":"plans_status_get","summary":"Read authoritative Domino plan, invite, and RSVP status for one visible plan. This read creates no execution receipt.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.status.get","version":"2.0","effect":"read","result_statuses":["completed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/plans.update.prepare":{"post":{"operationId":"plans_update_prepare","summary":"Prepare an exact update to a shared or active plan against its current revision and recipient\/destination snapshot. Unsent drafts must use plans.draft.update, then preview and prepare-send again. The update and any requested notifications occur only through actions.commit.","tags":["Plans"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"expected_revision":{"type":"integer","minimum":0},"notify_recipients":{"type":"boolean"},"changes":{"type":"object","properties":{"scheduled_at":{"type":["string","null"],"format":"date-time"},"scheduled_date_local":{"type":"string","format":"date","description":"The intended calendar date in the Domino owner timezone. Preserve the current date when the user changes only the time."},"scheduled_time_local":{"type":"string","maxLength":20,"description":"The intended wall-clock time in the Domino owner timezone, such as 7:30 PM or 19:30. Use this instead of converting a time-only request to an ISO timestamp."},"scheduled_ends_at":{"type":["string","null"],"format":"date-time"},"meetup_at":{"type":["string","null"],"format":"date-time"},"meetup_location_text":{"type":["string","null"],"maxLength":500},"rsvp_deadline":{"type":["string","null"],"format":"date-time"},"capacity_min":{"type":"integer","minimum":2,"maximum":250},"capacity_max":{"type":["integer","null"],"minimum":2,"maximum":250},"title_override":{"type":["string","null"],"maxLength":240},"description_override":{"type":["string","null"],"maxLength":4000}},"additionalProperties":false}},"required":["plan_handle","changes"]},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"plan_handle":{"type":"string","maxLength":64},"expected_revision":{"type":"integer","minimum":0},"notify_recipients":{"type":"boolean"},"changes":{"type":"object","properties":{"scheduled_at":{"type":["string","null"],"format":"date-time"},"scheduled_date_local":{"type":"string","format":"date","description":"The intended calendar date in the Domino owner timezone. Preserve the current date when the user changes only the time."},"scheduled_time_local":{"type":"string","maxLength":20,"description":"The intended wall-clock time in the Domino owner timezone, such as 7:30 PM or 19:30. Use this instead of converting a time-only request to an ISO timestamp."},"scheduled_ends_at":{"type":["string","null"],"format":"date-time"},"meetup_at":{"type":["string","null"],"format":"date-time"},"meetup_location_text":{"type":["string","null"],"maxLength":500},"rsvp_deadline":{"type":["string","null"],"format":"date-time"},"capacity_min":{"type":"integer","minimum":2,"maximum":250},"capacity_max":{"type":["integer","null"],"minimum":2,"maximum":250},"title_override":{"type":["string","null"],"maxLength":240},"description_override":{"type":["string","null"],"maxLength":4000}},"additionalProperties":false}},"required":["plan_handle","changes"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"plans.update.prepare","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":["confirmation.action_prepared"],"permitted_next_actions":["actions.commit"],"confirmation_policy":{"mode":"prepared_action","commit_capability":"actions.commit"}}}},"\/api\/v2\/capabilities\/relationships.connection.prepare":{"post":{"operationId":"relationships_connection_prepare","summary":"Prepare a safe ideas-list share to one friend or return a manual Domino connection invitation. It never sends the prepared list share by itself.","tags":["Relationships"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"operation":{"type":"string","enum":["prepare_list_share","prepare_connection_invite"]},"idea_list_handle":{"type":"string","maxLength":191},"idea_list_query":{"type":"string","maxLength":160},"person_handle":{"type":"string","maxLength":191},"person_query":{"type":"string","maxLength":120}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"operation":{"type":"string","enum":["prepare_list_share","prepare_connection_invite"]},"idea_list_handle":{"type":"string","maxLength":191},"idea_list_query":{"type":"string","maxLength":160},"person_handle":{"type":"string","maxLength":191},"person_query":{"type":"string","maxLength":120}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"relationships.connection.prepare","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/relationships.interest.get":{"post":{"operationId":"relationships_interest_get","summary":"Check whether the user and one selected friend independently share interest in one visible Domino subject. This read creates no execution receipt.","tags":["Relationships"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"operation":{"type":"string","enum":["check_mutual"]},"subject":{"type":"object","properties":{"type":{"type":"string","enum":["recommendation","idea","place","event"]},"candidate_id":{"type":"string","maxLength":191},"idea_list_handle":{"type":"string","maxLength":191}},"additionalProperties":true},"person_handle":{"type":"string","maxLength":191},"person_query":{"type":"string","maxLength":120}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"operation":{"type":"string","enum":["check_mutual"]},"subject":{"type":"object","properties":{"type":{"type":"string","enum":["recommendation","idea","place","event"]},"candidate_id":{"type":"string","maxLength":191},"idea_list_handle":{"type":"string","maxLength":191}},"additionalProperties":true},"person_handle":{"type":"string","maxLength":191},"person_query":{"type":"string","maxLength":120}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"relationships.interest.get","version":"2.0","effect":"read","result_statuses":["completed"],"status_capability":null,"required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/relationships.interest.mutate":{"post":{"operationId":"relationships_interest_mutate","summary":"Like, unlike, or undo a relationship-specific interest for one visible Domino subject and friend.","tags":["Relationships"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"operation":{"type":"string","enum":["like","unlike","undo"]},"subject":{"type":"object","properties":{"type":{"type":"string","enum":["recommendation","idea","place","event"]},"candidate_id":{"type":"string","maxLength":191},"idea_list_handle":{"type":"string","maxLength":191}},"additionalProperties":true},"person_handle":{"type":"string","maxLength":191},"person_query":{"type":"string","maxLength":120},"idea_list_handle":{"type":"string","maxLength":191},"reversible_action_id":{"type":"string","maxLength":32}}},{"type":"object","properties":{"version":{"type":"string","const":"2.0"},"input":{"type":"object","properties":{"operation":{"type":"string","enum":["like","unlike","undo"]},"subject":{"type":"object","properties":{"type":{"type":"string","enum":["recommendation","idea","place","event"]},"candidate_id":{"type":"string","maxLength":191},"idea_list_handle":{"type":"string","maxLength":191}},"additionalProperties":true},"person_handle":{"type":"string","maxLength":191},"person_query":{"type":"string","maxLength":120},"idea_list_handle":{"type":"string","maxLength":191},"reversible_action_id":{"type":"string","maxLength":32}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"relationships.interest.mutate","version":"2.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/relationships.people.ensure":{"post":{"operationId":"relationships_people_ensure","summary":"Explicitly create or reuse private Domino person references for named people. This write is only for user-requested relationship memory or a typed prerequisite; relationship reads never invoke it and it never notifies the named people.","tags":["Relationships"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"people":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"names":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"people":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."},"names":{"type":"array","items":{"type":"string"},"description":"Explicitly named people. People-sensitive discovery resolves exact existing Domino people and returns a typed prerequisite for unresolved names."}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"relationships.people.ensure","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/relationships.people.manage":{"post":{"operationId":"relationships_people_manage","summary":"Explicitly create, rename, or delete the authenticated user\u2019s private Friends in Mind. Reads never call this capability. Connected Friends cannot be deleted here, and nobody is notified by these private-memory changes.","tags":["Relationships"],"security":[{"bearerAuth":[]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key for exactly-once mutation replay. Use a new key when intentionally submitting changed input.","schema":{"type":"string","maxLength":191}}],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"operation":{"type":"string","enum":["create","rename","delete"]},"display_name":{"type":"string","maxLength":160},"person_handle":{"type":"string","maxLength":64}},"required":["operation"]},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"operation":{"type":"string","enum":["create","rename","delete"]},"display_name":{"type":"string","maxLength":160},"person_handle":{"type":"string","maxLength":64}},"required":["operation"]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"relationships.people.manage","version":"1.0","effect":"write","result_statuses":["completed","unchanged","needs_input","failed"],"status_capability":"executions.get","required_disclosures":[],"permitted_next_actions":[],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/relationships.people.query":{"post":{"operationId":"relationships_people_query","summary":"List and safely classify only people saved in the authenticated user\u2019s Domino friends. Returns Connected Friends and Friends in Mind with counts, opaque handles, stable pagination, and management guidance. A named check never creates relationship memory or reveals whether an unrelated person has a Domino account.","tags":["Relationships"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"classification":{"type":"string","enum":["all","connected","friend_in_mind"]},"name":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}},{"type":"object","properties":{"version":{"type":"string","const":"1.0"},"input":{"type":"object","properties":{"classification":{"type":"string","enum":["all","connected","friend_in_mind"]},"name":{"type":"string","maxLength":160},"limit":{"type":"integer","minimum":1,"maximum":25},"snapshot_handle":{"type":"string","maxLength":64},"cursor":{"type":"string","maxLength":2048}}}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"relationships.people.query","version":"1.0","effect":"read","result_statuses":["completed","failed"],"status_capability":null,"required_disclosures":["relationship.saved_scope_only"],"permitted_next_actions":["relationships.people.manage"],"confirmation_policy":[]}}},"\/api\/v2\/capabilities\/relationships.person.get":{"post":{"operationId":"relationships_person_get","summary":"Explain what Domino privately remembers about one saved relationship, including classification, aliases, related Ideas Lists, saved interests, plans, and invite history. Accepts an authorized opaque person handle or an unambiguous saved name and never reveals unrelated Domino accounts.","tags":["Relationships"],"security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application\/json":{"schema":{"oneOf":[{"type":"object","properties":{"person_handle":{"type":"string","maxLength":64},"name":{"type":"string","maxLength":160}},"anyOf":[{"required":["person_handle"]},{"required":["name"]}]},{"type":"object","properties":{"version":{"type":"string","const":"1.2"},"input":{"type":"object","properties":{"person_handle":{"type":"string","maxLength":64},"name":{"type":"string","maxLength":160}},"anyOf":[{"required":["person_handle"]},{"required":["name"]}]}},"required":["input"],"additionalProperties":false}]}}}},"responses":{"200":{"description":"A typed Domino capability outcome.","content":{"application\/json":{"schema":{"type":"object","required":["contract","status","outcome"],"properties":{"contract":{"type":"string"},"status":{"type":"string"},"outcome":{"type":"object"},"data":{"type":["object","null"]},"error":{"type":["object","null"]},"effects":{"type":"array","items":{"type":"object"}},"next_actions":{"type":"array","items":{"type":"object"}}},"additionalProperties":true}}}},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/ValidationError"},"429":{"$ref":"#\/components\/responses\/RateLimited"}},"x-domino-capability":{"name":"relationships.person.get","version":"1.2","effect":"read","result_statuses":["completed","needs_input","failed"],"status_capability":null,"required_disclosures":["relationship.saved_scope_only"],"permitted_next_actions":["relationships.person.get","ideas.recommendations.get"],"confirmation_policy":[]}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"responses":{"Unauthorized":{"description":"The access token is missing or invalid."},"Forbidden":{"description":"The principal is not allowed to use this capability or protocol version."},"Conflict":{"description":"The request conflicts with current state or reuses an idempotency key with changed input."},"ValidationError":{"description":"The structured request is invalid."},"RateLimited":{"description":"Retry after the response delay."}}},"x-domino-registry-fingerprint":"2ef4aecb29ba0139c96c1b946d675cc45614bf4c471dd267ab3e3b0b2987f939"}