Cria um agendamento presencial com status: "scheduled" e origin: "api", no tipo de atendimento informado em appointment_type_id (veja GET /appointment-types) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo appointments:write. Envie Idempotency-Key para poder repetir a chamada com segurança. Responde 409 com codeslot_blocked (horário bloqueado na agenda do profissional) ou room_required (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de GET.
Chave opcional (até 255 caracteres) que torna a criação idempotente: repetir a mesma requisição com a mesma chave em até 24 horas devolve o registro já criado, com o cabeçalho Idempotent-Replayed: true, em vez de criar outro. A mesma chave com um corpo diferente, ou em outro endpoint, responde 422.
Corpo para criar um agendamento. O agendamento nasce presencial, com
status: "scheduled" e origin: "api", no tipo informado e com o pagador
Particular do profissional; o valor vem da tabela de preços da clínica.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"ByDoctor API","description":"API pública do ByDoctor: leitura, criação, alteração e cancelamento de agendamentos e cadastro de pacientes por REST, mais webhooks em tempo real, para clínicas e fornecedores de software que integram o ByDoctor aos próprios sistemas.","colors":{"primary":"#2bb656","light":"#59cb59","dark":"#0ca750"},"logo":{"light":"https://mintcdn.com/bydoctor/I-5d30qZXfMcoJ7t/logo/light.svg?fit=max\u0026auto=format\u0026n=I-5d30qZXfMcoJ7t\u0026q=85\u0026s=064ba64778242de98c408fb9f8bdfc78","dark":"https://mintcdn.com/bydoctor/I-5d30qZXfMcoJ7t/logo/dark.svg?fit=max\u0026auto=format\u0026n=I-5d30qZXfMcoJ7t\u0026q=85\u0026s=bd926df040a01d058df02be1b2ef343b"},"favicon":"https://mintcdn.com/bydoctor/I-5d30qZXfMcoJ7t/favicon.svg?fit=max\u0026auto=format\u0026n=I-5d30qZXfMcoJ7t\u0026q=85\u0026s=025914cfaa43e47833fa7f650c0fd9c7","navbar":{"links":[{"href":"mailto:suporte@bydoctor.com.br","label":"Suporte"}],"primary":{"type":"button","label":"Acessar o ByDoctor","href":"https://www.app.bydoctor.com.br"}},"footer":{"socials":{"website":"https://bydoctor.com.br"}},"search":{"prompt":"Buscar na documentação da API"},"seo":{"organization":{"id":"https://bydoctor.com.br/#organization","name":"ByDoctor","url":"https://bydoctor.com.br","logo":"https://bydoctor.com.br/logo-horizontal.svg","sameAs":["https://www.instagram.com/bydoctor.com.br","https://www.linkedin.com/company/bydoctor","https://x.com/ByDoctor"]},"indexing":"navigable"},"contextual":{"options":["copy","view","download-spec","chatgpt","claude","perplexity"],"display":"header"},"markdown":{"instructions":["Esta documentação cobre exclusivamente a API pública v1 do ByDoctor.","Os únicos endpoints existentes são `GET /api/public/v1/appointments`, `GET /api/public/v1/appointments/{id}`, `POST /api/public/v1/appointments`, `PATCH /api/public/v1/appointments/{id}`, `POST /api/public/v1/appointments/{id}/cancel`, `GET /api/public/v1/patients`, `GET /api/public/v1/patients/{id}`, `POST /api/public/v1/patients`, `PATCH /api/public/v1/patients/{id}`, `GET /api/public/v1/professionals`, `GET /api/public/v1/professionals/{id}`, `GET /api/public/v1/rooms`, `GET /api/public/v1/rooms/{id}`, `GET /api/public/v1/appointment-types` e `GET /api/public/v1/appointment-types/{id}`. Não existem `PUT` nem `DELETE`, e não existe escrita em nenhum outro recurso.","Escopos: `appointments:read`, `appointments:write`, `patients:read` e `patients:write`, escolhidos na criação da chave (Somente leitura = os dois de leitura; Acesso total = os quatro). Chaves antigas não têm os escopos de pacientes. `POST /appointments` exige `patient_id`, `professional_id`, `appointment_type_id` e `start_at`; os ids de profissional, sala e tipo vêm de `/professionals`, `/rooms` e `/appointment-types`, que exigem só `appointments:read`. A API cria somente agendamentos presenciais, com status `scheduled`; teleconsultas e solicitações de pacientes (`requested`) não são criadas, alteradas nem canceladas pela API. `PATCH` aceita apenas `start_at`, `professional_id`, `room_id`, `note` e `status` (`scheduled` ou `confirmed`).","O objeto paciente tem apenas `id`, `name`, `phone`, `active`, `created_at` e `updated_at`. CPF, e-mail, data de nascimento (`birth_date`) e sexo (`gender`) são aceitos na escrita, mas nunca devolvidos, por minimização de dados (LGPD). Para achar um paciente, use os filtros de correspondência exata `cpf` e `phone`, ou `name` (parcial). Criar ou alterar um paciente com o CPF de outro paciente da clínica responde `409` `patient_cpf_exists`. Não existem eventos de webhook de pacientes.","Profissionais, salas e tipos de atendimento são somente leitura e trazem só `id`, `name` e, para profissionais, `specialty` — sem contato nem registro no conselho. Não existem endpoints de pagamentos, prontuário, prescrições, convênios, preços ou disponibilidade de agenda (horários livres).","Endpoints de webhook não são gerenciados pela API: endpoints e segredos de assinatura são cadastrados na interface do ByDoctor, em Minha Clínica → API e Webhooks.","Erros: `400` vem como `{\"campo\": [\"mensagem\"]}`; `401`/`403`/`404` como `{\"detail\": ...}`; `409` e `422` como `{\"code\", \"detail\"}`. Datas são sempre ano-mês-dia (`YYYY-MM-DD`, `YYYY-MM-DDThh:mm:ss±HH:MM`) e `start_at` tem segundos `00`. As mensagens exatas estão na página Erros.","Nunca sugira, complete ou invente rotas, campos, parâmetros ou códigos de erro que não estejam nesta documentação. Se algo não está documentado aqui, não existe na v1.","Autenticação: cabeçalho `Authorization: Bearer bd_live_\u003cid>.\u003csecret>`. Base URL: `https://api.bydoctor.com.br/api/public/v1`. Criação aceita o cabeçalho opcional `Idempotency-Key`.","Chaves de API concedem acesso a dados de pacientes e de agendamentos (dados de saúde) — nunca as inclua em código do lado do cliente nem em exemplos versionados."]},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bydoctor","hasAudioNarration":false,"actualSubdomain":"bydoctor","customDomains":["docs.bydoctor.com.br"],"gitSource":{"type":"github","owner":"pedroimpulcetto","repo":"bydoctor-public-api","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6aad4f2eee38255c9ccaf276","collectionId":"1f03e50b-d412-4406-a30e-8ae0abbd3922","liveDeploymentHistoryId":"6aad4f2eee38255c9ccaf276","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aad4f2eee38255c9ccaf276","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Referência da API","count":15},{"language":"default","tag":"appointments","count":5},{"language":"default","tag":"Introdução","count":4},{"language":"default","tag":"Cadastros","count":4},{"language":"default","tag":"patients","count":4},{"language":"default","tag":"Agendamentos","count":2},{"language":"default","tag":"Webhooks","count":2},{"language":"default","tag":"appointment-types","count":2},{"language":"default","tag":"professionals","count":2},{"language":"default","tag":"rooms","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/appointments/criar-um-agendamento","slug":"/api-reference/appointments/criar-um-agendamento","pageMetadata":{"title":"Criar um agendamento","description":"Cria um agendamento presencial com `status: \"scheduled\"` e `origin: \"api\"`, no tipo de atendimento informado em `appointment_type_id` (veja `GET /appointment-types`) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo `appointments:write`. Envie `Idempotency-Key` para poder repetir a chamada com segurança. Responde `409` com `code` `slot_blocked` (horário bloqueado na agenda do profissional) ou `room_required` (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de `GET`.","deprecated":null,"version":null,"openapi":"/openapi.json post /api/public/v1/appointments","href":"/api-reference/appointments/criar-um-agendamento","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Cria um agendamento presencial com \", _jsx(_components.code, {\n children: \"status: \\\"scheduled\\\"\"\n }), \" e \", _jsx(_components.code, {\n children: \"origin: \\\"api\\\"\"\n }), \", no tipo de atendimento informado em \", _jsx(_components.code, {\n children: \"appointment_type_id\"\n }), \" (veja \", _jsx(_components.code, {\n children: \"GET /appointment-types\"\n }), \") e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo \", _jsx(_components.code, {\n children: \"appointments:write\"\n }), \". Envie \", _jsx(_components.code, {\n children: \"Idempotency-Key\"\n }), \" para poder repetir a chamada com segurança. Responde \", _jsx(_components.code, {\n children: \"409\"\n }), \" com \", _jsx(_components.code, {\n children: \"code\"\n }), \" \", _jsx(_components.code, {\n children: \"slot_blocked\"\n }), \" (horário bloqueado na agenda do profissional) ou \", _jsx(_components.code, {\n children: \"room_required\"\n }), \" (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de \", _jsx(_components.code, {\n children: \"GET\"\n }), \".\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Criar um agendamento","description":"Cria um agendamento presencial com `status: \"scheduled\"` e `origin: \"api\"`, no tipo de atendimento informado em `appointment_type_id` (veja `GET /appointment-types`) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo `appointments:write`. Envie `Idempotency-Key` para poder repetir a chamada com segurança. Responde `409` com `code` `slot_blocked` (horário bloqueado na agenda do profissional) ou `room_required` (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de `GET`.","deprecated":null,"version":null,"openapi":"/openapi.json post /api/public/v1/appointments","href":"/api-reference/appointments/criar-um-agendamento","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Cria um agendamento presencial com `status: \"scheduled\"` e `origin: \"api\"`, no tipo de atendimento informado em `appointment_type_id` (veja `GET /appointment-types`) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo `appointments:write`. Envie `Idempotency-Key` para poder repetir a chamada com segurança. Responde `409` com `code` `slot_blocked` (horário bloqueado na agenda do profissional) ou `room_required` (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de `GET`.","operationId":"appointments_create","parameters":["bc9cc10a-833d-4843-9a37-b8036775ecaf"],"requestBody":"c58ca476-9ee0-4968-b841-1d57a8ee65b7","responses":{"201":"f14a29af-85c3-4e40-a491-4cf0b4eb71ba"},"security":["e5a377f2-cebe-42b0-bb9c-07cd28644b22"],"summary":"Criar um agendamento","tags":["appointments"],"method":"post","type":"path","servers":["e249cd74-e732-4691-bcf3-78420cc31e09"],"path":"/api/public/v1/appointments","baseUrlOptions":["https://api.bydoctor.com.br"],"title":"Criar um agendamento","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"bc9cc10a-833d-4843-9a37-b8036775ecaf":{"description":"Chave opcional (até 255 caracteres) que torna a criação idempotente: repetir a mesma requisição com a mesma chave em até 24 horas devolve o registro já criado, com o cabeçalho `Idempotent-Replayed: true`, em vez de criar outro. A mesma chave com um corpo diferente, ou em outro endpoint, responde `422`.","in":"header","name":"Idempotency-Key","schema":{"type":"string","description":"Chave opcional (até 255 caracteres) que torna a criação idempotente: repetir a mesma requisição com a mesma chave em até 24 horas devolve o registro já criado, com o cabeçalho `Idempotent-Replayed: true`, em vez de criar outro. A mesma chave com um corpo diferente, ou em outro endpoint, responde `422`.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"description":"Corpo para criar um agendamento. O agendamento nasce presencial, com\n`status: \"scheduled\"` e `origin: \"api\"`, no tipo informado e com o pagador\nParticular do profissional; o valor vem da tabela de preços da clínica.","properties":{"appointment_type_id":{"description":"`id` de um tipo de atendimento ativo da clínica (`GET /appointment-types`).","type":"integer","isRequired":true,"uniqueKey":"appointment_type_id","typeLabel":"integer"},"patient_id":{"description":"`patient.id` de um paciente ativo da clínica.","type":"integer","isRequired":true,"uniqueKey":"patient_id","typeLabel":"integer"},"professional_id":{"description":"`professional.id` de um profissional ativo da clínica que atende pacientes.","type":"integer","isRequired":true,"uniqueKey":"professional_id","typeLabel":"integer"},"start_at":{"description":"Início do atendimento, ISO 8601. Sem fuso horário, é lido em America/Sao_Paulo. Os segundos devem ser `00`.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"start_at","typeLabel":"string\u003cdate-time>"},"note":{"description":"Observação interna do agendamento, até 2000 caracteres.","maxLength":2000,"type":"string","uniqueKey":"note","typeLabel":"string"},"room_id":{"oneOf":[{"description":"`room.id` de uma sala ativa. Omitido, usa a sala padrão da grade do profissional, se houver.","type":"integer","uniqueKey":"room_id.oneOf.0","typeLabel":"integer"},{"description":"`room.id` de uma sala ativa. Omitido, usa a sala padrão da grade do profissional, se houver.","type":"null","uniqueKey":"room_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"room_id","typeLabel":"integer | null"}},"required":["appointment_type_id","patient_id","professional_id","start_at"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"appointment_type_id":123,"patient_id":123,"professional_id":123,"start_at":"2023-11-07T05:31:56Z","note":"\u003cstring>","room_id":123}}},"exampleType":"generated"},"application/x-www-form-urlencoded":{"schema":{"description":"Corpo para criar um agendamento. O agendamento nasce presencial, com\n`status: \"scheduled\"` e `origin: \"api\"`, no tipo informado e com o pagador\nParticular do profissional; o valor vem da tabela de preços da clínica.","properties":{"appointment_type_id":{"description":"`id` de um tipo de atendimento ativo da clínica (`GET /appointment-types`).","type":"integer","isRequired":true,"uniqueKey":"appointment_type_id","typeLabel":"integer"},"patient_id":{"description":"`patient.id` de um paciente ativo da clínica.","type":"integer","isRequired":true,"uniqueKey":"patient_id","typeLabel":"integer"},"professional_id":{"description":"`professional.id` de um profissional ativo da clínica que atende pacientes.","type":"integer","isRequired":true,"uniqueKey":"professional_id","typeLabel":"integer"},"start_at":{"description":"Início do atendimento, ISO 8601. Sem fuso horário, é lido em America/Sao_Paulo. Os segundos devem ser `00`.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"start_at","typeLabel":"string\u003cdate-time>"},"note":{"description":"Observação interna do agendamento, até 2000 caracteres.","maxLength":2000,"type":"string","uniqueKey":"note","typeLabel":"string"},"room_id":{"oneOf":[{"description":"`room.id` de uma sala ativa. Omitido, usa a sala padrão da grade do profissional, se houver.","type":"integer","uniqueKey":"room_id.oneOf.0","typeLabel":"integer"},{"description":"`room.id` de uma sala ativa. Omitido, usa a sala padrão da grade do profissional, se houver.","type":"null","uniqueKey":"room_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"room_id","typeLabel":"integer | null"}},"required":["appointment_type_id","patient_id","professional_id","start_at"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"appointment_type_id":123,"patient_id":123,"professional_id":123,"start_at":"2023-11-07T05:31:56Z","note":"\u003cstring>","room_id":123}}},"exampleType":"generated"},"multipart/form-data":{"schema":{"description":"Corpo para criar um agendamento. O agendamento nasce presencial, com\n`status: \"scheduled\"` e `origin: \"api\"`, no tipo informado e com o pagador\nParticular do profissional; o valor vem da tabela de preços da clínica.","properties":{"appointment_type_id":{"description":"`id` de um tipo de atendimento ativo da clínica (`GET /appointment-types`).","type":"integer","isRequired":true,"uniqueKey":"appointment_type_id","typeLabel":"integer"},"patient_id":{"description":"`patient.id` de um paciente ativo da clínica.","type":"integer","isRequired":true,"uniqueKey":"patient_id","typeLabel":"integer"},"professional_id":{"description":"`professional.id` de um profissional ativo da clínica que atende pacientes.","type":"integer","isRequired":true,"uniqueKey":"professional_id","typeLabel":"integer"},"start_at":{"description":"Início do atendimento, ISO 8601. Sem fuso horário, é lido em America/Sao_Paulo. Os segundos devem ser `00`.","format":"date-time","type":"string","isRequired":true,"uniqueKey":"start_at","typeLabel":"string\u003cdate-time>"},"note":{"description":"Observação interna do agendamento, até 2000 caracteres.","maxLength":2000,"type":"string","uniqueKey":"note","typeLabel":"string"},"room_id":{"oneOf":[{"description":"`room.id` de uma sala ativa. Omitido, usa a sala padrão da grade do profissional, se houver.","type":"integer","uniqueKey":"room_id.oneOf.0","typeLabel":"integer"},{"description":"`room.id` de uma sala ativa. Omitido, usa a sala padrão da grade do profissional, se houver.","type":"null","uniqueKey":"room_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"room_id","typeLabel":"integer | null"}},"required":["appointment_type_id","patient_id","professional_id","start_at"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"appointment_type_id":123,"patient_id":123,"professional_id":123,"start_at":"2023-11-07T05:31:56Z","note":"\u003cstring>","room_id":123}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"f14a29af-85c3-4e40-a491-4cf0b4eb71ba":{"content":{"application/json":{"schema":{"properties":{"appointment_type":{"type":"object","description":"Tipo de atendimento do agendamento, como \"Consulta\" ou \"Retorno\".","required":["id","name"],"properties":{"id":{"type":"integer","isRequired":true,"uniqueKey":"appointment_type.id","typeLabel":"integer"},"name":{"type":"string","isRequired":true,"uniqueKey":"appointment_type.name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"appointment_type","typeLabel":"object"},"created_at":{"format":"date-time","readOnly":true,"type":"string","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"end_at":{"format":"date-time","readOnly":true,"type":"string","isRequired":true,"uniqueKey":"end_at","typeLabel":"string\u003cdate-time>"},"id":{"oneOf":[{"format":"uuid","readOnly":true,"type":"string","isRequired":true,"uniqueKey":"id.oneOf.0","typeLabel":"string\u003cuuid>"},{"format":"uuid","readOnly":true,"type":"null","isRequired":true,"uniqueKey":"id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid> | null"},"modality":{"description":"* `in_person` - Presencial\n* `telehealth` - Teleconsulta","enum":["in_person","telehealth"],"type":"string","isRequired":true,"uniqueKey":"modality","typeLabel":"enum\u003cstring>"},"origin":{"description":"* `staff` - Equipe\n* `patient_booking` - Agendamento online\n* `api` - API pública","enum":["staff","patient_booking","api"],"type":"string","isRequired":true,"uniqueKey":"origin","typeLabel":"enum\u003cstring>"},"patient":{"oneOf":[{"type":"object","description":"Paciente do agendamento.","required":["id","name","phone"],"properties":{"id":{"type":"integer","isRequired":true,"uniqueKey":"patient.oneOf.0.id","typeLabel":"integer"},"name":{"type":"string","isRequired":true,"uniqueKey":"patient.oneOf.0.name","typeLabel":"string"},"phone":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"patient.oneOf.0.phone.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"patient.oneOf.0.phone.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"patient.oneOf.0.phone","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"patient.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"patient.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"patient","typeLabel":"object | null"},"professional":{"oneOf":[{"type":"object","description":"Profissional responsável pelo atendimento.","required":["id","name","specialty"],"properties":{"id":{"type":"integer","isRequired":true,"uniqueKey":"professional.oneOf.0.id","typeLabel":"integer"},"name":{"type":"string","isRequired":true,"uniqueKey":"professional.oneOf.0.name","typeLabel":"string"},"specialty":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"professional.oneOf.0.specialty.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"professional.oneOf.0.specialty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"professional.oneOf.0.specialty","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"professional.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"professional.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"professional","typeLabel":"object | null"},"room":{"oneOf":[{"type":"object","description":"Sala em que o atendimento acontece, quando a clínica usa salas.","required":["id","name"],"properties":{"id":{"type":"integer","isRequired":true,"uniqueKey":"room.oneOf.0.id","typeLabel":"integer"},"name":{"type":"string","isRequired":true,"uniqueKey":"room.oneOf.0.name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"room.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"room.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"room","typeLabel":"object | null"},"start_at":{"format":"date-time","readOnly":true,"type":"string","isRequired":true,"uniqueKey":"start_at","typeLabel":"string\u003cdate-time>"},"status":{"type":"string","description":"One of: requested, scheduled, confirmed, checked_in, completed, no_show, cancelled.","enum":["requested","scheduled","confirmed","checked_in","completed","no_show","cancelled"],"isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","isRequired":true,"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"}},"required":["appointment_type","created_at","end_at","id","modality","origin","patient","professional","room","start_at","status","updated_at"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"appointment_type":{"id":123,"name":"\u003cstring>"},"created_at":"2023-11-07T05:31:56Z","end_at":"2023-11-07T05:31:56Z","id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","modality":"in_person","origin":"staff","patient":{"id":123,"name":"\u003cstring>","phone":"\u003cstring>"},"professional":{"id":123,"name":"\u003cstring>","specialty":"\u003cstring>"},"room":{"id":123,"name":"\u003cstring>"},"start_at":"2023-11-07T05:31:56Z","status":"requested","updated_at":"2023-11-07T05:31:56Z"}}},"exampleType":"generated"}},"description":"","exampleType":"generated"}},"security":{"e5a377f2-cebe-42b0-bb9c-07cd28644b22":{"ApiKeyAuth":{"description":"Chave de API no formato bd_live_xxxxxxxx.xxxx...","scheme":"bearer","type":"http","scopes":[]}}},"servers":{"e249cd74-e732-4691-bcf3-78420cc31e09":{"description":"Produção","url":"https://api.bydoctor.com.br"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"Chave de API no formato bd_live_xxxxxxxx.xxxx...","scheme":"bearer","type":"http","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Chave de API no formato bd_live_xxxxxxxx.xxxx...","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"ApiKeyAuth","name":"Authorization"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"openapi.json"},"subdomain":"bydoctor","siteName":"ByDoctor API","title":"Criar um agendamento - ByDoctor API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-18T14:19:43.871Z","originalFileLocation":"api-reference/appointments/criar-um-agendamento.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Cria um agendamento presencial com status: \u0026quot;scheduled\u0026quot; e origin: \u0026quot;api\u0026quot;, no tipo de atendimento informado em appointment_type_id (veja GET /appointment-types) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo appointments:write. Envie Idempotency-Key para poder repetir a chamada com segurança. Responde 409 com code slot_blocked (horário bloqueado na agenda do profissional) ou room_required (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de GET.\">\u003cmeta data-mint-head name=\"application-name\" content=\"ByDoctor API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Criar um agendamento - ByDoctor API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Cria um agendamento presencial com status: \u0026quot;scheduled\u0026quot; e origin: \u0026quot;api\u0026quot;, no tipo de atendimento informado em appointment_type_id (veja GET /appointment-types) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo appointments:write. Envie Idempotency-Key para poder repetir a chamada com segurança. Responde 409 com code slot_blocked (horário bloqueado na agenda do profissional) ou room_required (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de GET.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ByDoctor API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bydoctor.mintlify.app/_mintlify/api/og/v2?division=appointments\u0026amp;title=Criar+um+agendamento\u0026amp;description=Cria+um+agendamento+presencial+com+%60status%3A+%22scheduled%22%60+e+%60origin%3A+%22api%22%60%2C+no+tipo+de+atendimento+informado+em+%60appointment_type_id%60+%28veja+%60GET+%2Fappointment-ty\u0026amp;theme=dad5087e4f4bba799f5a2369\u0026amp;signature=7217b239e106eaa427489063789235ef173184e4153942e208844d4b87666266\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Criar um agendamento - ByDoctor API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Cria um agendamento presencial com status: \u0026quot;scheduled\u0026quot; e origin: \u0026quot;api\u0026quot;, no tipo de atendimento informado em appointment_type_id (veja GET /appointment-types) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo appointments:write. Envie Idempotency-Key para poder repetir a chamada com segurança. Responde 409 com code slot_blocked (horário bloqueado na agenda do profissional) ou room_required (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de GET.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bydoctor.mintlify.app/_mintlify/api/og/v2?division=appointments\u0026amp;title=Criar+um+agendamento\u0026amp;description=Cria+um+agendamento+presencial+com+%60status%3A+%22scheduled%22%60+e+%60origin%3A+%22api%22%60%2C+no+tipo+de+atendimento+informado+em+%60appointment_type_id%60+%28veja+%60GET+%2Fappointment-ty\u0026amp;theme=dad5087e4f4bba799f5a2369\u0026amp;signature=7217b239e106eaa427489063789235ef173184e4153942e208844d4b87666266\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/bydoctor/FaMj7ubqKrKWHbR_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ByDoctor API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2bb656\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/appointments/criar-um-agendamento.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://bydoctor.com.br/#organization\",\"name\":\"ByDoctor\",\"url\":\"https://bydoctor.com.br\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://bydoctor.com.br/logo-horizontal.svg\"},\"sameAs\":[\"https://www.instagram.com/bydoctor.com.br\",\"https://www.linkedin.com/company/bydoctor\",\"https://x.com/ByDoctor\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.bydoctor.com.br#website\",\"name\":\"ByDoctor API\",\"url\":\"https://docs.bydoctor.com.br\",\"publisher\":{\"@id\":\"https://bydoctor.com.br/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento#webpage\",\"url\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento\",\"name\":\"Criar um agendamento\",\"description\":\"Cria um agendamento presencial com status: \\\"scheduled\\\" e origin: \\\"api\\\", no tipo de atendimento informado em appointment_type_id (veja GET /appointment-types) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo appointments:write. Envie Idempotency-Key para poder repetir a chamada com segurança. Responde 409 com code slot_blocked (horário bloqueado na agenda do profissional) ou room_required (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de GET.\",\"dateModified\":\"2026-09-18T14:19:43.871Z\",\"isPartOf\":{\"@id\":\"https://docs.bydoctor.com.br#website\"},\"breadcrumb\":{\"@id\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Referência da API\",\"item\":\"https://docs.bydoctor.com.br/api-reference/appointment-types/listar-tipos-de-atendimento\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"appointments\",\"item\":\"https://docs.bydoctor.com.br/api-reference/appointments/listar-agendamentos\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Criar um agendamento\",\"item\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento#apireference\",\"headline\":\"Criar um agendamento\",\"name\":\"Criar um agendamento\",\"description\":\"Cria um agendamento presencial com status: \\\"scheduled\\\" e origin: \\\"api\\\", no tipo de atendimento informado em appointment_type_id (veja GET /appointment-types) e com o pagador Particular do profissional; o valor vem da tabela de preços da clínica. Requer o escopo appointments:write. Envie Idempotency-Key para poder repetir a chamada com segurança. Responde 409 com code slot_blocked (horário bloqueado na agenda do profissional) ou room_required (a clínica exige sala e a grade do profissional não tem sala padrão para o horário). O corpo da resposta é o mesmo objeto de GET.\",\"url\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento\",\"mainEntityOfPage\":{\"@id\":\"https://docs.bydoctor.com.br/api-reference/appointments/criar-um-agendamento#webpage\"},\"dateModified\":\"2026-09-18T14:19:43.871Z\",\"publisher\":{\"@id\":\"https://bydoctor.com.br/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.bydoctor.com.br#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ByDoctor API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ByDoctor API","nav":{"global":null,"pages":[{"group":"Introdução","pages":[{"title":"API do ByDoctor","href":"/index"},{"title":"Primeiros passos","href":"/primeiros-passos"},{"title":"Autenticação","href":"/autenticacao"},{"title":"Erros","href":"/erros"}]},{"group":"Agendamentos","pages":[{"title":"Agendamentos","href":"/agendamentos"},{"title":"Sincronização","href":"/sincronizacao"}]},{"group":"Cadastros","pages":[{"title":"Pacientes","href":"/pacientes"},{"title":"Profissionais","href":"/profissionais"},{"title":"Salas","href":"/salas"},{"title":"Tipos de atendimento","href":"/tipos-de-atendimento"}]},{"group":"Webhooks","pages":[{"title":"Webhooks","href":"/webhooks"},{"title":"Verificação de assinatura","href":"/verificacao-de-assinatura"}]},{"group":"Referência da API","pages":[{"group":"appointment-types","pages":[{"title":"Listar tipos de atendimento","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/appointment-types","href":"/api-reference/appointment-types/listar-tipos-de-atendimento"},{"title":"Consultar um tipo de atendimento","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/appointment-types/{id}","href":"/api-reference/appointment-types/consultar-um-tipo-de-atendimento"}]},{"group":"appointments","pages":[{"title":"Listar agendamentos","description":"Retorna os agendamentos da clínica em ordem crescente de atualização (`updated_at` mais antigo primeiro), com paginação por cursor — siga `next` até o fim para obter tudo. Use `updated_since` para sincronizar apenas o que mudou desde a última consulta: agendamentos cancelados continuam aparecendo com `status: \"cancelled\"` em vez de desaparecerem da lista.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/appointments","href":"/api-reference/appointments/listar-agendamentos"},{"title":"Criar um agendamento","deprecated":null,"version":null,"openapi":"/openapi.json post /api/public/v1/appointments","href":"/api-reference/appointments/criar-um-agendamento"},{"title":"Consultar um agendamento","description":"Retorna um único agendamento pelo seu `id` (UUID) — guarde-o como chave estrangeira do agendamento no seu sistema.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/appointments/{public_id}","href":"/api-reference/appointments/consultar-um-agendamento"},{"title":"Alterar um agendamento","deprecated":null,"version":null,"openapi":"/openapi.json patch /api/public/v1/appointments/{public_id}","href":"/api-reference/appointments/alterar-um-agendamento"},{"title":"Cancelar um agendamento","deprecated":null,"version":null,"openapi":"/openapi.json post /api/public/v1/appointments/{public_id}/cancel","href":"/api-reference/appointments/cancelar-um-agendamento"}]},{"group":"patients","pages":[{"title":"Listar pacientes","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/patients","href":"/api-reference/patients/listar-pacientes"},{"title":"Criar um paciente","deprecated":null,"version":null,"openapi":"/openapi.json post /api/public/v1/patients","href":"/api-reference/patients/criar-um-paciente"},{"title":"Consultar um paciente","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/patients/{id}","href":"/api-reference/patients/consultar-um-paciente"},{"title":"Alterar um paciente","deprecated":null,"version":null,"openapi":"/openapi.json patch /api/public/v1/patients/{id}","href":"/api-reference/patients/alterar-um-paciente"}]},{"group":"professionals","pages":[{"title":"Listar profissionais","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/professionals","href":"/api-reference/professionals/listar-profissionais"},{"title":"Consultar um profissional","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/professionals/{id}","href":"/api-reference/professionals/consultar-um-profissional"}]},{"group":"rooms","pages":[{"title":"Listar salas","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/rooms","href":"/api-reference/rooms/listar-salas"},{"title":"Consultar uma sala","deprecated":null,"version":null,"openapi":"/openapi.json get /api/public/v1/rooms/{id}","href":"/api-reference/rooms/consultar-uma-sala"}]}]}]},"basePath":"","title":"Criar um agendamento - ByDoctor API","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C8RPHPxo.js","utils-0BK-9q6z.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DfjzsUJT.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B4v9psJ4.js","snippetPresets-CpTQv-Ez.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-BNP-Fvr0.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BSgu6h1D.js","shallow-Biv1i9Gs.js","getApiPlaygroundDisplay-BoGOXhtF.js","CodeSnippet-DvQoT18_.js","CodeSnippets-Dnpa15xT.js","Page-Buji1S4J.js","getPastedJson-xAIyhUFE.js","icon-S6FBih11.js","MethodPill-SaYeUZyk.js","DuplicateIcon-Cs-p3v2Q.js","createIcon-DjCFEoHq.js","DynamicMarkdown-BcnBltEQ.js","SectionHeading-BUBl0eEF.js","axios-vUo_bRtp.js","Markdown-h4cOoD8d.js","clsx-B2v50t8t.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DJnKvr0g.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BHrrjR1K.js"]}