{"components":{"securitySchemes":{"key":{"description":"An API key from Integrations, starting sbk_","scheme":"bearer","type":"http"}}},"info":{"description":"Read and change a company's Spotbookr records with one of its API keys.","title":"Spotbookr Business API","version":"1"},"openapi":"3.0.3","paths":{"/api/v1/appointments":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Appointments, meetings and work sessions between two dates. Filters: from, to (YYYY-MM-DD; the next 30 days when left out).","tags":["Scheduling (read only)"]}},"/api/v1/companies":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"List companies. Filter: q.","tags":["Companies"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Add a company. Needs name. Also: website, phone, industry, address, notes, tags, owner_id, custom.","tags":["Companies"]}},"/api/v1/companies/{id}":{"get":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"One company.","tags":["Companies"]},"patch":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Change a company. Renaming it renames it on its people.","tags":["Companies"]}},"/api/v1/contacts":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"List contacts. Filters: q, email, status, company_id.","tags":["Contacts"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Add a contact. Needs name. Also: email, phone, title, company, status, source, tags, address, notes, owner_id, custom.","tags":["Contacts"]}},"/api/v1/contacts/{id}":{"delete":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Delete a contact that has no deals.","tags":["Contacts"]},"get":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"One contact.","tags":["Contacts"]},"patch":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Change any of the same fields. Send only what changes.","tags":["Contacts"]}},"/api/v1/deals":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"List deals. Filters: stage (a stage name, or open), pipeline (a pipeline name), contact_id, owner_id.","tags":["Deals"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Open a deal. Needs name and contact_id. Also: value, pipeline, stage, expected_close, description, owner_id, tags, custom.","tags":["Deals"]}},"/api/v1/deals/{id}":{"get":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"One deal.","tags":["Deals"]},"patch":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Change a deal, or move it between your open stages. Winning, losing and reopening are done in Spotbookr.","tags":["Deals"]}},"/api/v1/estimates":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"List estimates.","tags":["Invoicing (read only)"]}},"/api/v1/invoices":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"List invoices with their totals, balance and state. Filter: state.","tags":["Invoicing (read only)"]}},"/api/v1/items/{id}":{"get":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"One work item.","tags":["Project Management"]},"patch":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Change a work item, or move it with \"status\": the name of a column. The board's own rules apply.","tags":["Project Management"]}},"/api/v1/leads":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Add a lead in one call: a contact, a deal in your first stage and a task to reply. Needs name and email. Also: company, phone, message, source.","tags":["Leads"]}},"/api/v1/ping":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Check a key works. Answers with your company name.","tags":["General"]}},"/api/v1/projects":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"List projects, each with the names of its columns.","tags":["Project Management"]}},"/api/v1/projects/{id}/items":{"get":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"A project's work items. Filters: done, assignee_id, type.","tags":["Project Management"]},"post":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Add a work item. Needs title. Also: type, description, assignee_id, priority, start_date, due_date, labels.","tags":["Project Management"]}},"/api/v1/services":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"The services customers can book.","tags":["Scheduling (read only)"]}},"/api/v1/tasks":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"List CRM tasks. Filters: done (true or false), owner_id, contact_id, deal_id.","tags":["Tasks"]},"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Add a task. Needs title. Also: due, owner_id, contact_id, deal_id, notes.","tags":["Tasks"]}},"/api/v1/tasks/{id}":{"delete":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Delete a task.","tags":["Tasks"]},"get":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"One task.","tags":["Tasks"]},"patch":{"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"Change a task, or finish it with \"done\": true.","tags":["Tasks"]}},"/api/v1/users":{"get":{"responses":{"200":{"description":"OK"},"401":{"description":"The key is missing or not valid"}},"summary":"The people on your account, for use as owner_id or assignee_id.","tags":["General"]}}},"security":[{"key":[]}],"servers":[{"url":"https://work.spotbookr.com"}]}
