{"openapi":"3.1.0","info":{"title":"Consent Check API","version":"0.1.0","description":"A fully local educational reference on communicating and respecting boundaries and consent in relationships: a five-principle framework, boundary types, communication guides, a myth-vs-fact reference, conversation starters, scenario notes, a further-resources pointer and a glossary.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://consentcheck.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/consentcheck/docs"},"termsOfService":"https://connectorbay.com/consentcheck/terms"},"servers":[{"url":"https://consentcheck.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/consentcheck/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/consent_principles_guide":{"post":{"operationId":"consent_principles_guide","summary":"A widely used five-part framework for consent: agreement should be Freely given, Reversible, Informed,","description":"A widely used five-part framework for consent: agreement should be Freely given, Reversible, Informed,\n    Enthusiastic, and Specific. Returns one principle's detail, or all five. Use for \"what does enthusiastic\n    consent mean\", \"what are the principles of consent\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"principle":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"One principle to look up (by name or letter); omit for all five.","title":"Principle"}},"title":"consent_principles_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/boundary_types_guide":{"post":{"operationId":"boundary_types_guide","summary":"Five kinds of personal boundaries — physical, emotional, time & energy, digital, material — each with a","description":"Five kinds of personal boundaries — physical, emotional, time & energy, digital, material — each with a\n    description and an example. Use for \"what kinds of boundaries are there in a relationship\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"boundary_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"One boundary type to look up; omit for all five.","title":"Boundary Type"}},"title":"boundary_types_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/communicating_boundaries_guide":{"post":{"operationId":"communicating_boundaries_guide","summary":"General technique and original phrase-starters for stating a boundary clearly — naming the specific","description":"General technique and original phrase-starters for stating a boundary clearly — naming the specific\n    behavior, its effect, and a preferred alternative, and what to do if a boundary isn't respected the first\n    time. Use for \"how do I tell my partner about a boundary\", \"how do I say no clearly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"communicating_boundaries_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/respecting_others_boundaries_guide":{"post":{"operationId":"respecting_others_boundaries_guide","summary":"General guidance for respecting someone else's boundaries — checking in rather than assuming, reading","description":"General guidance for respecting someone else's boundaries — checking in rather than assuming, reading\n    non-verbal hesitation, and why consent needs to be ongoing and specific rather than assumed from history.\n    Use for \"how do I make sure I'm respecting someone's boundaries\", \"what counts as checking in properly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"respecting_others_boundaries_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/myth_vs_fact":{"post":{"operationId":"myth_vs_fact","summary":"Common misconceptions about consent and boundaries contrasted with the accurate picture. Use for \"is it","description":"Common misconceptions about consent and boundaries contrasted with the accurate picture. Use for \"is it\n    true that not saying no means yes\", \"common consent myths\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A keyword to filter myths/facts by; omit for all.","title":"Topic"}},"title":"myth_vs_factArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/conversation_starters":{"post":{"operationId":"conversation_starters","summary":"Original prompts for discussing boundaries and consent with a partner. Use for \"give us conversation","description":"Original prompts for discussing boundaries and consent with a partner. Use for \"give us conversation\n    starters about boundaries\", \"how do we bring this up with each other\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"conversation_startersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/scenario_reference":{"post":{"operationId":"scenario_reference","summary":"Brief, general notes on how boundary and consent communication tends to differ across contexts — a new","description":"Brief, general notes on how boundary and consent communication tends to differ across contexts — a new\n    relationship, a long-term relationship or marriage, a friendship, family, or the workplace. Use for \"how is\n    this different in a long-term relationship versus a new one\", \"what about boundaries at work\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"scenario":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A relationship context: new relationship, long-term relationship, friendship, family, or workplace. Omit for all.","title":"Scenario"}},"title":"scenario_referenceArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/further_resources_guide":{"post":{"operationId":"further_resources_guide","summary":"Points toward the kinds of real resources worth seeking out beyond this general reference — accredited","description":"Points toward the kinds of real resources worth seeking out beyond this general reference — accredited\n    school or workplace programs, licensed counselors, public health organizations, and HR for workplace-\n    specific concerns. Categories only, not specific unverified organizations. Use for \"where can I learn more\n    about this properly\", \"is there a real course I should look for\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"further_resources_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/glossary":{"post":{"operationId":"glossary","summary":"Definitions of terms used elsewhere in this connector — consent, coercion, enthusiastic consent,","description":"Definitions of terms used elsewhere in this connector — consent, coercion, enthusiastic consent,\n    autonomy, boundary, ongoing consent, enmeshment. Use for \"what does coercion mean\", \"what's enmeshment\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific term to look up; omit to list all.","title":"Term"}},"title":"glossaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}