{"info":{"description":"One connector for every business API hosted by Unamused. Search businesses, inspect their actions, and call them \u2014 from Meta's Muse, Claude, ChatGPT, or any agent. Free, MIT, no key. Approval-gated actions are marked x-unamused-requires-approval: ask the human before calling.","title":"Unamused Connector","version":"1.0.0"},"openapi":"3.1.0","paths":{"/connector/action-log/{log_id}":{"get":{"description":"Look up one action-log entry by its stable log_id (returned by call_action). Poll no more often than every 5 minutes.","operationId":"get_action_status","parameters":[{"in":"path","name":"log_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Action-log entry"}},"summary":"Status of one executed action"}},"/connector/actions/{business_id}/{action}":{"post":{"description":"Executes one action on one business. Actions flagged x-unamused-requires-approval are gated server-side: the first call validates and returns approval_required + a single-use approval_token (10 min); call again with {\"approval_token\": \"...\"} after the human approves to execute.","operationId":"call_action","parameters":[{"in":"path","name":"business_id","required":true,"schema":{"type":"string"}},{"in":"path","name":"action","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"description":"Action parameters","type":"object"}}},"required":true},"responses":{"200":{"description":"Action result"}},"summary":"Call a business action","x-unamused-requires-approval":true}},"/connector/brief":{"get":{"description":"A login-free page written for AI agents: what Unamused is, endpoints, auth, the tool catalog, approval flow, webhooks, polling, deletion, rate limits, privacy. Start here when creating a Custom Connector.","operationId":"get_brief","responses":{"200":{"description":"Brief page (HTML)"}},"summary":"Plain-language connector brief for agents"}},"/connector/businesses":{"get":{"operationId":"search_businesses","parameters":[{"description":"Business name or keyword; omit to list all","in":"query","name":"q","schema":{"type":"string"}}],"responses":{"200":{"description":"Business summaries"}},"summary":"Search hosted businesses"}},"/connector/businesses/{business_id}":{"get":{"operationId":"get_business","parameters":[{"in":"path","name":"business_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Business detail"}},"summary":"Business detail with action schemas"}},"/connector/businesses/{business_id}/status":{"get":{"description":"Lightweight status: stable ids, current status, per-action last-execution info. Poll no more often than every 5 minutes. Deleted businesses return status 'deleted' with their receipt_id.","operationId":"get_business_status","parameters":[{"in":"path","name":"business_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Business status"}},"summary":"Pollable status for one business"}},"/connector/changes":{"get":{"description":"Everything that changed after 'since': new businesses, executed actions, deletions. Use this instead of re-reading everything; poll no more often than every 5 minutes.","operationId":"get_changes","parameters":[{"description":"ISO-8601 timestamp","in":"query","name":"since","required":true,"schema":{"type":"string"}},{"description":"Optional: limit to one business","in":"query","name":"business_id","schema":{"type":"string"}}],"responses":{"200":{"description":"Change list"}},"summary":"Delta poll: changes since a timestamp"}},"/connector/deletion/confirm":{"post":{"description":"Step 2: permanently deletes the business record, its action-log entries, and pending approval tokens; returns a deletion receipt (receipt_id) as proof. Cannot be undone.","operationId":"confirm_deletion","requestBody":{"content":{"application/json":{"schema":{"properties":{"deletion_token":{"type":"string"}},"required":["deletion_token"],"type":"object"}}},"required":true},"responses":{"200":{"description":"Deletion receipt"}},"summary":"Confirm a deletion","x-unamused-requires-approval":true}},"/connector/deletion/request":{"post":{"description":"The 'forget me' flow, step 1: returns a single-use deletion_token (10 min) plus exactly what will be deleted. Show the owner, get a clear yes, then confirm. Nothing is deleted by this call.","operationId":"request_deletion","requestBody":{"content":{"application/json":{"schema":{"properties":{"business_id":{"type":"string"}},"required":["business_id"],"type":"object"}}},"required":true},"responses":{"200":{"description":"Deletion token"}},"summary":"Start deleting a business's data","x-unamused-requires-approval":true}}},"servers":[{"url":"https://unamused.app"}]}
