{"openapi":"3.1.0","info":{"title":"WatchFox API","version":"0.1.0","description":"Watches mailboxes and calls your webhook when an email matches what you asked for. Full guide for developers and AI agents: https://watchfox.run/llms-full.txt"},"paths":{"/v1/health":{"get":{"summary":"Service status, no key needed: `ok` and `ready`","description":"Service status, no key needed: `ok` and `ready`. With a valid key it also reports `version`, `agent` (primary, backup or down) and `queued`.","operationId":"get_v1_health","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/presets":{"get":{"summary":"The built-in types and your own, with descriptions and thresholds","operationId":"get_v1_presets","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"The built-in types and your own, with descriptions and thresholds."}},"/v1/providers":{"get":{"summary":"Which mailbox kinds this server can connect (gmail, m365, imap, sandbox)","operationId":"get_v1_providers","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"Which mailbox kinds this server can connect (gmail, m365, imap, sandbox)."}},"/v1/keys":{"get":{"summary":"List your API keys (prefix, name, last used)","operationId":"get_v1_keys","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"List your API keys (prefix, name, last used). Never returns full keys.","security":[{"bearerAuth":[]}]},"post":{"summary":"Create an API key","operationId":"post_v1_keys","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Create an API key. The full key is returned once. Max 10 per account.","security":[{"bearerAuth":[]}]}},"/v1/keys/{kid}":{"delete":{"summary":"Revoke an API key immediately","operationId":"delete_v1_keys_kid","parameters":[{"name":"kid","in":"path","required":true,"schema":{"type":"string","title":"Kid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Revoke an API key immediately.","security":[{"bearerAuth":[]}]}},"/v1/connect-links":{"post":{"summary":"Create a one-time hosted page where your customer connects Gmail or Microsoft 365","description":"Create a one-time hosted page where your customer connects Gmail or Microsoft 365. Returns `url`; redirect them there. Optional branding: `app_name`, `logo_url`, `accent_color`, `support_email`, `hide_powered_by` (paid plans).","operationId":"post_v1_connect_links","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/connections":{"get":{"summary":"List mailboxes with status (`active` or `needs_attention`) and delivery mode","operationId":"get_v1_connections","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"List mailboxes with status (`active` or `needs_attention`) and delivery mode.","security":[{"bearerAuth":[]}]},"post":{"summary":"Connect a mailbox from your server (imap, gmail with app password, or sandbox)","description":"Connect a mailbox from your server (imap, gmail with app password, or sandbox). Credentials are verified first.","operationId":"post_v1_connections","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/connections/{cid}":{"get":{"summary":"One mailbox","operationId":"get_v1_connections_cid","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"One mailbox.","security":[{"bearerAuth":[]}]},"delete":{"summary":"Disconnect a mailbox; its credentials, watches and records are deleted","operationId":"delete_v1_connections_cid","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Disconnect a mailbox; its credentials, watches and records are deleted.","security":[{"bearerAuth":[]}]}},"/v1/connections/{cid}/sandbox-emails":{"post":{"summary":"Drop a test email (optionally with attachments) into a sandbox mailbox","description":"Drop a test email (optionally with attachments) into a sandbox mailbox. Uses one run. 429 when runs are used up.","operationId":"post_v1_connections_cid_sandbox_emails","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SandboxEmail"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/watches":{"get":{"summary":"List watches","operationId":"get_v1_watches","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"List watches.","security":[{"bearerAuth":[]}]},"post":{"summary":"Create a watch: mailbox + what to catch + optional webhook","operationId":"post_v1_watches","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Create a watch: mailbox + what to catch + optional webhook. Returns `webhook_secret` once. 409 for an exact duplicate.","security":[{"bearerAuth":[]}]}},"/v1/watches/{wid}":{"patch":{"summary":"Change what a watch catches, its webhook, or what the webhook carries (`include`)","description":"Change what a watch catches, its webhook, or what the webhook carries (`include`).","operationId":"patch_v1_watches_wid","parameters":[{"name":"wid","in":"path","required":true,"schema":{"type":"string","title":"Wid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchPatch"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]},"get":{"summary":"One watch","operationId":"get_v1_watches_wid","parameters":[{"name":"wid","in":"path","required":true,"schema":{"type":"string","title":"Wid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"One watch.","security":[{"bearerAuth":[]}]},"delete":{"summary":"Delete a watch and the records it produced","operationId":"delete_v1_watches_wid","parameters":[{"name":"wid","in":"path","required":true,"schema":{"type":"string","title":"Wid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Delete a watch and the records it produced.","security":[{"bearerAuth":[]}]}},"/v1/watches/{wid}/test":{"post":{"summary":"Send one signed sample event to the watch's webhook and report what your server answered","description":"Send one signed sample event to the watch's webhook and report what your server answered.","operationId":"post_v1_watches_wid_test","parameters":[{"name":"wid","in":"path","required":true,"schema":{"type":"string","title":"Wid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/watches/{wid}/deliveries":{"get":{"summary":"Recent webhook deliveries with status, HTTP code and attempts","operationId":"get_v1_watches_wid_deliveries","parameters":[{"name":"wid","in":"path","required":true,"schema":{"type":"string","title":"Wid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Recent webhook deliveries with status, HTTP code and attempts.","security":[{"bearerAuth":[]}]}},"/v1/connections/{cid}/emails/{eid}/raw":{"get":{"summary":"Download the original .eml, read live from the mailbox","description":"Download the original .eml, read live from the mailbox. Only for emails that matched a watch.","operationId":"get_v1_connections_cid_emails_eid_raw","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}},{"name":"eid","in":"path","required":true,"schema":{"type":"string","title":"Eid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/connections/{cid}/emails/{eid}/attachments":{"get":{"summary":"List an email's attachments (id, filename, content_type, size, url)","operationId":"get_v1_connections_cid_emails_eid_attachments","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}},{"name":"eid","in":"path","required":true,"schema":{"type":"string","title":"Eid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"List an email's attachments (id, filename, content_type, size, url).","security":[{"bearerAuth":[]}]}},"/v1/connections/{cid}/emails/{eid}/attachments/{aid}":{"get":{"summary":"Download one attachment as the file itself","operationId":"get_v1_connections_cid_emails_eid_attachments_aid","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}},{"name":"eid","in":"path","required":true,"schema":{"type":"string","title":"Eid"}},{"name":"aid","in":"path","required":true,"schema":{"type":"string","title":"Aid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Download one attachment as the file itself.","security":[{"bearerAuth":[]}]}},"/v1/matches":{"get":{"summary":"Emails that matched, newest first","operationId":"get_v1_matches","parameters":[{"name":"what","in":"query","required":false,"schema":{"type":"string","default":"","title":"What"}},{"name":"watch_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Watch Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Emails that matched, newest first. Filters: what, watch_id, limit (max 1000).","security":[{"bearerAuth":[]}]}},"/v1/emails":{"get":{"summary":"Every email that was checked, matched or not","operationId":"get_v1_emails","parameters":[{"name":"watch_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Watch Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Every email that was checked, matched or not. Filters: watch_id, limit.","security":[{"bearerAuth":[]}]}},"/v1/log/export":{"get":{"summary":"The activity log as CSV (same filters as /v1/log)","description":"The activity log as CSV (same filters as /v1/log). 6 per minute.","operationId":"get_v1_log_export","parameters":[{"name":"matched","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Matched"}},{"name":"watch_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Watch Id"}},{"name":"connection_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Connection Id"}},{"name":"what","in":"query","required":false,"schema":{"type":"string","default":"","title":"What"}},{"name":"delivery","in":"query","required":false,"schema":{"type":"string","default":"","title":"Delivery"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"since","in":"query","required":false,"schema":{"type":"number","default":0,"title":"Since"}},{"name":"max_rows","in":"query","required":false,"schema":{"type":"integer","default":100000,"title":"Max Rows"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/log":{"get":{"summary":"The 90-day activity log with delivery status","description":"The 90-day activity log with delivery status. Page with `before` = previous `next_before`.","operationId":"get_v1_log","parameters":[{"name":"matched","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Matched"}},{"name":"watch_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Watch Id"}},{"name":"connection_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Connection Id"}},{"name":"what","in":"query","required":false,"schema":{"type":"string","default":"","title":"What"}},{"name":"delivery","in":"query","required":false,"schema":{"type":"string","default":"","title":"Delivery"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"since","in":"query","required":false,"schema":{"type":"number","default":0,"title":"Since"}},{"name":"before","in":"query","required":false,"schema":{"type":"number","default":0,"title":"Before"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/events":{"get":{"summary":"Server-Sent Events stream of every checked email, same shape as a webhook event","description":"Server-Sent Events stream of every checked email, same shape as a webhook event. Read it from a server.","operationId":"get_v1_events","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"bearerAuth":[]}]}},"/v1/types":{"get":{"summary":"Your custom types","operationId":"get_v1_types","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"Your custom types.","security":[{"bearerAuth":[]}]},"post":{"summary":"Save a tuned type (use the JSON returned by /v1/types/tune)","operationId":"post_v1_types","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Save a tuned type (use the JSON returned by /v1/types/tune). Counts against the plan's custom-type limit.","security":[{"bearerAuth":[]}]}},"/v1/types/kinds":{"get":{"summary":"Everyday email kinds that can be marked as also counting as yes when tuning","description":"Everyday email kinds that can be marked as also counting as yes when tuning.","operationId":"get_v1_types_kinds","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"bearerAuth":[]}]}},"/v1/types/{tid}":{"get":{"summary":"A custom type with the examples it was tuned on","description":"A custom type with the examples it was tuned on.","operationId":"get_v1_types_tid","parameters":[{"name":"tid","in":"path","required":true,"schema":{"type":"string","title":"Tid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]},"put":{"summary":"Replace a type's settings (also applies a re-tune to a built-in type)","description":"Replace a type's settings (also applies a re-tune to a built-in type).","operationId":"put_v1_types_tid","parameters":[{"name":"tid","in":"path","required":true,"schema":{"type":"string","title":"Tid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]},"delete":{"summary":"Delete a custom type, or reset a built-in type to its default settings","operationId":"delete_v1_types_tid","parameters":[{"name":"tid","in":"path","required":true,"schema":{"type":"string","title":"Tid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Delete a custom type, or reset a built-in type to its default settings.","security":[{"bearerAuth":[]}]}},"/v1/types/suggest":{"post":{"summary":"AI assistant: one sentence in, a drafted type out","description":"AI assistant: one sentence in, a drafted type out. 501 if the assistant is not set up.","operationId":"post_v1_types_suggest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuggestIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/types/examples":{"post":{"summary":"AI assistant: more invented example emails (matches and look-alikes) for a type","description":"AI assistant: more invented example emails (matches and look-alikes) for a type.","operationId":"post_v1_types_examples","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExamplesIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/types/tune":{"post":{"summary":"Draft a type's settings from your examples (about 30 s)","description":"Draft a type's settings from your examples (about 30 s). Needs >= 3 positives. Nothing is saved. 12 per hour.","operationId":"post_v1_types_tune","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TuneIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/feedback":{"post":{"summary":"Flag a checked email: kind `wrong` (should not have matched) or `missed` (should have)","description":"Flag a checked email: kind `wrong` (should not have matched) or `missed` (should have). Stores that one email's subject and up to 3,000 characters for re-tuning.","operationId":"post_v1_feedback","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedbackIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/corrections":{"get":{"summary":"Types that have flagged emails waiting to teach them","operationId":"get_v1_corrections","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"Types that have flagged emails waiting to teach them.","security":[{"bearerAuth":[]}]}},"/v1/corrections/{what}":{"delete":{"summary":"Forget the flagged emails for a type","operationId":"delete_v1_corrections_what","parameters":[{"name":"what","in":"path","required":true,"schema":{"type":"string","title":"What"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Forget the flagged emails for a type.","security":[{"bearerAuth":[]}]}},"/v1/corrections/{what}/retune":{"post":{"summary":"Draft improved settings using the flagged emails","description":"Draft improved settings using the flagged emails. Review, then apply with PUT /v1/types/{what}. 12 per hour.","operationId":"post_v1_corrections_what_retune","parameters":[{"name":"what","in":"path","required":true,"schema":{"type":"string","title":"What"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/v1/classify":{"post":{"summary":"Score text against any types without a mailbox","operationId":"post_v1_classify","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassifyIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"description":"Score text against any types without a mailbox. Nothing is saved. Uses one run. 120 per minute.","security":[{"bearerAuth":[]}]}},"/v1/plans":{"get":{"summary":"The plans, their limits and prices","operationId":"get_v1_plans","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"The plans, their limits and prices."}},"/v1/plan":{"get":{"summary":"Your plan, runs used/remaining, reset time and count limits","operationId":"get_v1_plan","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"Your plan, runs used/remaining, reset time and count limits.","security":[{"bearerAuth":[]}]}},"/v1/usage":{"get":{"summary":"Runs used this month and when the count resets","operationId":"get_v1_usage","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"description":"Runs used this month and when the count resets.","security":[{"bearerAuth":[]}]}}},"components":{"schemas":{"CheckoutIn":{"properties":{"kind":{"type":"string","title":"Kind","default":"subscribe"},"plan":{"type":"string","title":"Plan","default":""},"billing":{"type":"string","title":"Billing","default":"monthly"}},"type":"object","title":"CheckoutIn"},"ClassifyIn":{"properties":{"subject":{"type":"string","title":"Subject","default":""},"body":{"type":"string","title":"Body"},"sender":{"type":"string","title":"Sender","default":""},"what":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"additionalProperties":true,"type":"object"}]},"type":"array"},{"additionalProperties":true,"type":"object"}],"title":"What","default":"enquiry"}},"type":"object","required":["body"],"title":"ClassifyIn"},"ConfirmIn":{"properties":{"checkoutToken":{"type":"string","title":"Checkouttoken"},"eventMessage":{"title":"Eventmessage"}},"type":"object","required":["checkoutToken"],"title":"ConfirmIn"},"ConnectionIn":{"properties":{"provider":{"type":"string","title":"Provider"},"host":{"type":"string","title":"Host","default":""},"port":{"type":"integer","title":"Port","default":993},"user":{"type":"string","title":"User","default":""},"password":{"type":"string","title":"Password","default":""},"folder":{"type":"string","title":"Folder","default":"INBOX"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata","default":{}}},"type":"object","required":["provider"],"title":"ConnectionIn"},"Credentials":{"properties":{"email":{"type":"string","title":"Email"},"password":{"type":"string","title":"Password"}},"type":"object","required":["email","password"],"title":"Credentials"},"DemoIn":{"properties":{"text":{"type":"string","title":"Text"},"what":{"type":"string","title":"What","default":"enquiry"}},"type":"object","required":["text"],"title":"DemoIn"},"ExampleIn":{"properties":{"subject":{"type":"string","title":"Subject","default":""},"body":{"type":"string","title":"Body"}},"type":"object","required":["body"],"title":"ExampleIn"},"ExamplesIn":{"properties":{"label":{"type":"string","title":"Label"},"description":{"type":"string","title":"Description"},"positives":{"type":"integer","title":"Positives","default":6},"negatives":{"type":"integer","title":"Negatives","default":6}},"type":"object","required":["label","description"],"title":"ExamplesIn"},"FeedbackIn":{"properties":{"what":{"type":"string","title":"What"},"watch_id":{"type":"string","title":"Watch Id"},"email_id":{"type":"string","title":"Email Id"},"kind":{"type":"string","title":"Kind"}},"type":"object","required":["what","watch_id","email_id","kind"],"title":"FeedbackIn"},"ForgotIn":{"properties":{"email":{"type":"string","title":"Email"}},"type":"object","required":["email"],"title":"ForgotIn"},"GmailConnect":{"properties":{"t":{"type":"string","title":"T"},"email":{"type":"string","title":"Email"},"app_password":{"type":"string","title":"App Password"}},"type":"object","required":["t","email","app_password"],"title":"GmailConnect"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"InviteIn":{"properties":{"email":{"type":"string","title":"Email"}},"type":"object","required":["email"],"title":"InviteIn"},"JoinIn":{"properties":{"token":{"type":"string","title":"Token"},"password":{"type":"string","title":"Password"}},"type":"object","required":["token","password"],"title":"JoinIn"},"KeyIn":{"properties":{"name":{"type":"string","title":"Name","default":"Default"}},"type":"object","title":"KeyIn"},"LinkIn":{"properties":{"provider":{"type":"string","title":"Provider","default":""},"redirect_url":{"type":"string","title":"Redirect Url","default":""},"state":{"type":"string","title":"State","default":""},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata","default":{}},"app_name":{"type":"string","title":"App Name","default":""},"connection_id":{"type":"string","title":"Connection Id","default":""},"logo_url":{"type":"string","title":"Logo Url","default":""},"accent_color":{"type":"string","title":"Accent Color","default":""},"support_email":{"type":"string","title":"Support Email","default":""},"hide_powered_by":{"type":"boolean","title":"Hide Powered By","default":false}},"type":"object","title":"LinkIn"},"OrgIn":{"properties":{"name":{"type":"string","title":"Name"}},"type":"object","required":["name"],"title":"OrgIn"},"PasswordIn":{"properties":{"current":{"type":"string","title":"Current"},"password":{"type":"string","title":"Password"}},"type":"object","required":["current","password"],"title":"PasswordIn"},"ResetIn":{"properties":{"token":{"type":"string","title":"Token"},"password":{"type":"string","title":"Password"}},"type":"object","required":["token","password"],"title":"ResetIn"},"SandboxAttachment":{"properties":{"filename":{"type":"string","title":"Filename"},"content_type":{"type":"string","title":"Content Type","default":"application/octet-stream"},"content_base64":{"type":"string","title":"Content Base64"}},"type":"object","required":["filename","content_base64"],"title":"SandboxAttachment"},"SandboxEmail":{"properties":{"subject":{"type":"string","title":"Subject","default":""},"body":{"type":"string","title":"Body"},"sender":{"type":"string","title":"Sender","default":"someone@example.com"},"attachments":{"items":{"$ref":"#/components/schemas/SandboxAttachment"},"type":"array","title":"Attachments","default":[]}},"type":"object","required":["body"],"title":"SandboxEmail"},"SuggestIn":{"properties":{"sentence":{"type":"string","title":"Sentence"}},"type":"object","required":["sentence"],"title":"SuggestIn"},"TuneIn":{"properties":{"label":{"type":"string","title":"Label"},"description":{"type":"string","title":"Description"},"positives":{"items":{"$ref":"#/components/schemas/ExampleIn"},"type":"array","title":"Positives","default":[]},"negatives":{"items":{"$ref":"#/components/schemas/ExampleIn"},"type":"array","title":"Negatives","default":[]},"treat_as_yes":{"items":{"type":"string"},"type":"array","title":"Treat As Yes","default":[]},"use_assistant":{"type":"boolean","title":"Use Assistant","default":true}},"type":"object","required":["label","description"],"title":"TuneIn"},"TypeIn":{"properties":{"label":{"type":"string","title":"Label"},"description":{"type":"string","title":"Description"},"question":{"type":"string","title":"Question"},"threshold":{"type":"number","title":"Threshold"},"excludes":{"title":"Excludes","default":[]},"ignore_subject":{"title":"Ignore Subject","default":[]},"report":{"title":"Report","default":{}},"inputs":{"title":"Inputs","default":{}}},"type":"object","required":["label","description","question","threshold"],"title":"TypeIn"},"UpgradeIn":{"properties":{"plan":{"type":"string","title":"Plan"},"billing":{"type":"string","title":"Billing","default":"monthly"}},"type":"object","required":["plan"],"title":"UpgradeIn"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"WatchIn":{"properties":{"connection_id":{"type":"string","title":"Connection Id"},"what":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"additionalProperties":true,"type":"object"}]},"type":"array"}],"title":"What","default":"enquiry"},"webhook_url":{"type":"string","title":"Webhook Url","default":""},"webhook_secret":{"type":"string","title":"Webhook Secret","default":""},"backfill_days":{"type":"integer","title":"Backfill Days","default":0},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata","default":{}},"include":{"items":{"type":"string"},"type":"array","title":"Include","default":[]}},"type":"object","required":["connection_id"],"title":"WatchIn"},"WatchPatch":{"properties":{"what":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"What"},"webhook_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Webhook Url"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"},"include":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Include"}},"type":"object","title":"WatchPatch"}},"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"An API key from the dashboard: Authorization: Bearer wf_live_..."}}},"servers":[{"url":"https://watchfox.run"}]}