{"openapi":"3.1.0","info":{"title":"Mixmax (BYOK) API","version":"0.1.0","description":"Mixmax (BYOK) lets an AI assistant read your own Mixmax data through the Mixmax API with a key you supply (Mixmax API token). Read-only: 9 tools (list_sequences, list_sequence_recipients, list_sequence_folders, list_templates, list_template_folders, list_live_feed, list_messages, list_meeting_types, list_insights_reports). The BYOK key travels with each request, is used for that one call only and...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-mixmax.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-mixmax/docs"},"termsOfService":"https://connectorbay.com/byok-mixmax/terms"},"servers":[{"url":"https://byok-mixmax.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-mixmax/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_sequences":{"post":{"operationId":"list_sequences","summary":"List the email sequences you can access with name, creation date, stages, timezone, pause state and folder. Filter by na","description":"List the email sequences you can access with name, creation date, stages, timezone, pause state and folder. Filter by name or folder; cursor-paged. Use for \"Which Mixmax sequences do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"name":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only sequences whose name matches this text.","title":"Name"},"folder":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Only sequences in this sequence folder id.","title":"Folder"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 100).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"The 'next' value of the previous answer to get the next page; leave empty for the first page.","title":"Cursor"}},"title":"list_sequencesArguments","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/list_sequence_recipients":{"post":{"operationId":"list_sequence_recipients","summary":"List the recipients of one sequence with state, completion reason, per-stage activity and open, click and download count","description":"List the recipients of one sequence with state, completion reason, per-stage activity and open, click and download counts. Optionally search by text; offset-paged. Use for \"Who is in the Mixmax sequence seq1 and have they opened\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sequence_id":{"description":"The sequence id (the _id field from list_sequences).","maxLength":200,"title":"Sequence Id","type":"string"},"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only recipients matching this text (name or email).","title":"Query"},"limit":{"anyOf":[{"maximum":50,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many recipients to return (1 to 50).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many recipients to skip.","title":"Offset"},"sort_desc":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":true,"description":"True (default) for newest activity first.","title":"Sort Desc"}},"required":["sequence_id"],"title":"list_sequence_recipientsArguments","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/list_sequence_folders":{"post":{"operationId":"list_sequence_folders","summary":"List the sequence folders you can access with name and the ids of the sequences inside. Use for \"What sequence folders e","description":"List the sequence folders you can access with name and the ids of the sequences inside. Use for \"What sequence folders exist in Mixmax\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_sequence_foldersArguments","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/list_templates":{"post":{"operationId":"list_templates","summary":"List the email templates (snippets) you can access with name, title, sharing, folder id and dates. Optionally search by ","description":"List the email templates (snippets) you can access with name, title, sharing, folder id and dates. Optionally search by text; cursor-paged. Use for \"Which Mixmax templates mention onboarding\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"search":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only templates matching this text.","title":"Search"},"is_inline":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True for inline snippets only, false for templates only.","title":"Is Inline"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 100).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"The 'next' value of the previous answer to get the next page; leave empty for the first page.","title":"Cursor"}},"title":"list_templatesArguments","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/list_template_folders":{"post":{"operationId":"list_template_folders","summary":"List template and snippet folders with name, sharing and the number of templates in each. Use for \"What template folders","description":"List template and snippet folders with name, sharing and the number of templates in each. Use for \"What template folders do I have in Mixmax\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"search":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only folders matching this text.","title":"Search"},"is_inline":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True for snippet folders, false for template folders.","title":"Is Inline"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 200).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"The 'next' value of the previous answer to get the next page; leave empty for the first page.","title":"Cursor"}},"title":"list_template_foldersArguments","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/list_live_feed":{"post":{"operationId":"list_live_feed","summary":"Search the live feed of sent emails with recipients, subject, send time, open, click and download counts, and reply, bou","description":"Search the live feed of sent emails with recipients, subject, send time, open, click and download counts, and reply, bounce or meeting response flags. Search by text; offset or cursor paged. Use for \"Which of my Mixmax emails got replies this week\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search text matched against recipients and subject.","title":"Query"},"limit":{"anyOf":[{"maximum":300,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 300).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip.","title":"Offset"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"The 'next' value of the previous answer to get the next page; leave empty for the first page.","title":"Cursor"}},"title":"list_live_feedArguments","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/list_messages":{"post":{"operationId":"list_messages","summary":"List your drafts, scheduled, sent and failed messages, newest first, with sender, recipients, subject and creation time.","description":"List your drafts, scheduled, sent and failed messages, newest first, with sender, recipients, subject and creation time. Cursor-paged. Use for \"What draft emails do I have in Mixmax\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":300,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 300).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"The 'next' value of the previous answer to get the next page; leave empty for the first page.","title":"Cursor"}},"title":"list_messagesArguments","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/list_meeting_types":{"post":{"operationId":"list_meeting_types","summary":"List your Mixmax Calendar meeting types with name, booking link, duration, type, buffer and double-booking setting. Use ","description":"List your Mixmax Calendar meeting types with name, booking link, duration, type, buffer and double-booking setting. Use for \"What meeting types can people book with me in Mixmax\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access":{"anyOf":[{"enum":["mine","shared"],"type":"string"},{"type":"null"}],"default":null,"description":"Which meeting types: mine or shared.","title":"Access"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many to return.","title":"Limit"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"The 'next' value of the previous answer to get the next page; leave empty for the first page.","title":"Cursor"}},"title":"list_meeting_typesArguments","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/list_insights_reports":{"post":{"operationId":"list_insights_reports","summary":"List the saved Insights reports you can access with title, type, query and fields. Cursor-paged. Use for \"Which Insights","description":"List the saved Insights reports you can access with title, type, query and fields. Cursor-paged. Use for \"Which Insights reports are saved in Mixmax\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":50,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 50).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"The 'next' value of the previous answer to get the next page; leave empty for the first page.","title":"Cursor"}},"title":"list_insights_reportsArguments","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}}}}