Pular para o conteúdo
ampli prescreve
Referência da API V2

Todas as operações

Contrato da integração V2 em https://devprescription.amplimed.cloud/identity/v1. Para o passo a passo, use o guia.

Baixar .md

Autenticação

POST /partners/authenticate
partners.partners.authenticate #

Verifica clientId + secretKey (bcrypt contra o secretKeyHash guardado em partners) e emite um token de parceiro de curta duração, usado como Bearer token em POST /v1/partners/sessions.

Requisição

Campo Tipo Detalhes
clientId string
obrigatório
secretKey string
obrigatório

200 `PartnerTokenResource`

Campo Tipo Detalhes
token string
obrigatório
tokenType string
obrigatório Bearer
expiresIn string
obrigatório
expiresAt string
obrigatório

401 clientId ou secretKey inválidos.

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

422 Validation error

Campo Tipo Detalhes
message string
obrigatório

Errors overview.

errors object
obrigatório

A detailed description of each field that failed validation.

Sessões

POST /sessions
sessions.sessions.store requer Bearer token #

Resolve o escopo de módulos (piso regulatório do conselho do profissional cruzado com o teto comercial do parceiro), valida customFields contra o customFieldsSchema do parceiro, grava o snapshot em prescription_sessions e devolve o embeddedToken usado pelo bundle em GET /v1/partners/sessions/validate. Requer o token de parceiro emitido em POST /v1/partners/authenticate.

Requisição

Campo Tipo Detalhes
professional object
obrigatório
professional.professionalId string
opcional nullable
professional.name string
obrigatório
professional.register object
obrigatório
professional.register.type string
obrigatório
professional.register.value string
obrigatório
professional.register.state string
obrigatório
professional.specialty string
opcional nullable
professional.document object
obrigatório
professional.document.type string
obrigatório
professional.document.value string
obrigatório
patient object
obrigatório
patient.patientId string
opcional nullable
patient.name string
obrigatório
patient.document object
obrigatório
patient.document.type string
obrigatório cpf passport rg
patient.document.value string
obrigatório
patient.birthDate string date-time
opcional nullable
patient.gender string
opcional nullable
patient.phone string
opcional nullable
patient.email string email
opcional nullable
patient.address object
opcional nullable
patient.address.street string
opcional
patient.address.number string
opcional
patient.address.complement string
opcional nullable
patient.address.neighborhood string
opcional
patient.address.city string
opcional
patient.address.state string
opcional
patient.address.zipCode string
opcional
patient.address.country string
opcional
customFields string[]
opcional nullable
embeddedType string
opcional nullable

201 Sessão de prescrição criada.

Campo Tipo Detalhes
sessionId string
obrigatório
embeddedToken string
obrigatório nullable
embeddedType string
obrigatório nullable
status string
obrigatório nullable
apiVersion string
obrigatório nullable
scopes string
obrigatório nullable
featureFlags string
obrigatório nullable
createdAt string
obrigatório
expiresAt string
obrigatório

422 customFields fora do customFieldsSchema do parceiro, ou payload inválido.

Campo Tipo Detalhes
message string
obrigatório

Errors overview.

errors object
obrigatório

A detailed description of each field that failed validation.

PATCH /sessions
sessions.sessions.update #

Recebe o embeddedToken (no corpo da requisição) e o patient com os dados atualizados. Refaz o upsert do patient (incluindo patient.address) e devolve um embeddedToken novo — o bundle precisa substituir o token salvo pelo novo a partir dessa resposta. Sem token de parceiro: a própria sessão encriptada é a autoridade, igual em GET /v1/partners/sessions/validate.

Requisição

Campo Tipo Detalhes
embeddedToken string
obrigatório
patient object
obrigatório
patient.patientId string
opcional nullable
patient.name string
obrigatório
patient.document object
obrigatório
patient.document.type string
obrigatório cpf passport rg
patient.document.value string
obrigatório
patient.birthDate string date-time
opcional nullable
patient.gender string
opcional nullable
patient.phone string
opcional nullable
patient.email string email
opcional nullable
patient.address object
opcional nullable
patient.address.street string
opcional
patient.address.number string
opcional
patient.address.complement string
opcional nullable
patient.address.neighborhood string
opcional
patient.address.city string
opcional
patient.address.state string
opcional
patient.address.zipCode string
opcional
patient.address.country string
opcional

200 Sessão de prescrição atualizada.

Campo Tipo Detalhes
sessionId string
obrigatório
embeddedToken string
obrigatório
partner object
obrigatório
professional object
obrigatório
patient object
obrigatório
scopes any[]
obrigatório
featureFlags any[]
obrigatório
customFields any[]
obrigatório
status string
obrigatório
apiVersion string
obrigatório
expiresAt string
obrigatório

404 Nenhuma sessão encontrada para o embeddedToken informado.

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

410 Sessão encontrada mas não está mais ativa (expirada ou encerrada).

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

422 Payload inválido.

Campo Tipo Detalhes
message string
obrigatório

Errors overview.

errors object
obrigatório

A detailed description of each field that failed validation.

POST /sessions/end
sessions.end #

Encerra a sessão de prescrição. O embeddedToken pode vir como Bearer token ou como query string.

Requisição

Campo Tipo Detalhes
embeddedToken string
obrigatório

200 `SessionContextResource`

Campo Tipo Detalhes
sessionId string
obrigatório
embeddedToken string
obrigatório
partner object
obrigatório
professional object
obrigatório
patient object
obrigatório
scopes any[]
obrigatório
featureFlags any[]
obrigatório
customFields any[]
obrigatório
status string
obrigatório
apiVersion string
obrigatório
expiresAt string
obrigatório

404 Nenhuma sessão encontrada para o embeddedToken informado.

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

410 Sessão encontrada mas não está mais ativa (expirada ou encerrada).

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

422 Validation error

Campo Tipo Detalhes
message string
obrigatório

Errors overview.

errors object
obrigatório

A detailed description of each field that failed validation.

GET /sessions/validate
sessions.validate #

Chamada a cada carga do bundle no browser do médico. Sem leitura no Mongo: decripta o embeddedToken, que carrega o contexto inteiro da sessão (partner, professional, patient, scopes, featureFlags), e confere se ainda está ativa. Não renova o expiresAt — para isso, ver POST /v1/partners/sessions/renew. O embeddedToken pode vir como Bearer token ou como query string.

200 `SessionContextResource`

Campo Tipo Detalhes
sessionId string
obrigatório
embeddedToken string
obrigatório
partner object
obrigatório
professional object
obrigatório
patient object
obrigatório
scopes any[]
obrigatório
featureFlags any[]
obrigatório
customFields any[]
obrigatório
status string
obrigatório
apiVersion string
obrigatório
expiresAt string
obrigatório

404 Nenhuma sessão encontrada para o embeddedToken informado.

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

410 Sessão encontrada mas não está mais ativa (expirada ou encerrada).

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

422 Validation error

Campo Tipo Detalhes
message string
obrigatório

Errors overview.

errors object
obrigatório

A detailed description of each field that failed validation.

POST /sessions/renew
sessions.renew #

Empurra o expiresAt (renovação deslizante), sem nunca ultrapassar o teto de vida absoluto da sessão (createdAt + absolute_ttl_seconds), e devolve um embeddedToken novo — o bundle precisa substituir o token salvo pelo novo a partir dessa resposta. O embeddedToken pode vir como Bearer token ou como query string.

Requisição

Campo Tipo Detalhes
embeddedToken string
obrigatório

200 `SessionContextResource`

Campo Tipo Detalhes
sessionId string
obrigatório
embeddedToken string
obrigatório
partner object
obrigatório
professional object
obrigatório
patient object
obrigatório
scopes any[]
obrigatório
featureFlags any[]
obrigatório
customFields any[]
obrigatório
status string
obrigatório
apiVersion string
obrigatório
expiresAt string
obrigatório

404 Nenhuma sessão encontrada para o embeddedToken informado.

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

410 Sessão encontrada mas não está mais ativa (expirada ou encerrada).

Campo Tipo Detalhes
error_code string
obrigatório
message string
obrigatório

422 Validation error

Campo Tipo Detalhes
message string
obrigatório

Errors overview.

errors object
obrigatório

A detailed description of each field that failed validation.