eBlood Documentação da Integração
Eblood · Guia de integração

Como funciona a integração com o Eblood

Este guia explica, passo a passo e sem pressupor experiência prévia com APIs, como o sistema integrado envia pedidos de hemocomponentes para o Eblood e como o status dessas requisições é atualizado depois.

POST /api/v1/requisitions PUT /api/v1/requisitions/{id}/update_status GET /api/v1/requisitions/{id}

Configure suas credenciais

Preencha os dois campos abaixo com a sua URL base e o seu token de acesso. Todos os exemplos de código desta página são atualizados automaticamente com esses valores — assim você já sai daqui com comandos prontos para usar, sem precisar trocar nada na mão.

O endereço do seu ambiente Eblood. Em produção, normalmente é algo como https://central.staging.eblood.com.br.
Fornecido pelo Eblood fora desta documentação. Ele fica salvo só neste navegador — esta página não envia nenhuma requisição real, ela só monta os exemplos de comando para você copiar.
Authorization: Token token="SEU_TOKEN_AQUI"
01

Visão geral

A integração cobre um fluxo simples de três momentos. Não existe um endpoint de "cancelar requisição" separado — cancelar é só mais um valor de status, enviado no mesmo endpoint de atualização.

1. Sistema cria o pedido POST /requisitions Eblood cadastra paciente e a requisição 201/422 2. Sistema atualiza status PUT .../status Aguardando → Em andamento → Terminado ou Interrompido 200/400 3. Consultar requisição GET /requisitions/{id} A qualquer momento, confere o estado atual
Importante sobre cancelamento

A especificação original previa um endpoint próprio para "suspender" uma requisição. Na implementação atual, isso não existe como rota separada: basta enviar o status INT (Interrompido) no endpoint de atualização de status (passo 2 acima).

02

Conceitos para quem está começando

Se você já trabalha com integrações e APIs, pode pular direto para a Autenticação. Se esse é um dos seus primeiros contatos com o assunto, esses termos vão aparecer o tempo todo no resto da página — vale a pena ler uma vez.

API

Uma forma padronizada de dois sistemas conversarem entre si pela internet. Aqui, é como o sistema integrado "fala" com o sistema do Eblood.

Endpoint

Um endereço específico da API que faz uma coisa. Esta integração usa três: criar requisição, atualizar status e consultar requisição.

Método HTTP

Indica a intenção da chamada. POST cria algo novo, PUT atualiza algo que já existe, GET apenas consulta, sem alterar nada.

Header

Uma informação extra enviada "por fora" do conteúdo principal da requisição — aqui, é onde vai o token de autenticação.

JSON

O formato de texto usado para enviar e receber os dados. É uma lista de "campo": valor entre chaves, como nos exemplos desta página.

Status code (código HTTP)

Um número de 3 dígitos que a resposta traz dizendo o que aconteceu. Começa com 2 quando deu certo (ex: 201) e com 4 quando algo no pedido estava errado (ex: 422).

Token

Uma senha de acesso da API. Só quem tem o token correto consegue usar os endpoints — sem ele, o pedido é recusado antes mesmo de chegar na lógica da integração.

cURL

Um comando de terminal usado para testar chamadas de API rapidamente, sem precisar programar. Os exemplos desta página trazem esse comando pronto.

03

Autenticação

Toda chamada para qualquer um dos três endpoints precisa levar o header Authorization no formato abaixo. Sem ele, ou com um token inválido, a requisição é recusada antes mesmo de chegar na lógica de criação ou atualização.

Header obrigatório em toda chamada
Authorization: Token token="{{TOKEN}}"
O token não faz parte do payload

O token é combinado previamente com o Eblood e enviado só no header — ele nunca aparece dentro do corpo (body) JSON da requisição.

04
POST {{BASE_URL}}/api/v1/requisitions

Criar requisição de hemocomponente

Recebe uma nova solicitação/prescrição gerada e liberada no sistema integrado. O Eblood localiza ou cria o paciente e cria a requisição correspondente. Corresponde à seção 2.1.1 da especificação técnica original.

5 campos obrigatórios

NR_PRESCRICAO, NM_PESSOA_FISICA, CD_MEDICO, CD_ESTABELECIMENTO e IE_TIPO. Faltando qualquer um deles, se o hospital não for encontrado, ou se o médico não existir e não for possível cadastrá-lo automaticamente (ver abaixo), a requisição inteira é recusada com 422.

O que acontece quando o médico não é encontrado

CD_MEDICO é resolvido por CRM. Se não encontrar um médico já cadastrado, o Eblood cadastra um médico novo automaticamente, usando NM_MEDICO (nome), UF_MEDICO (UF do CRM) e a especialidade cujo ans_code corresponde a CD_ESPECIALIDADE — por isso esses 3 campos só são obrigatórios nesse cenário. Se a especialidade não puder ser resolvida, ou se faltar NM_MEDICO/UF_MEDICO, o médico não é criado e a requisição inteira é recusada. Quando o médico já existe e CD_ESPECIALIDADE não bate com a especialidade já vinculada a ele, o médico é realocado para a especialidade correspondente — mas só se existir uma especialidade cadastrada com esse ans_code; caso contrário, a especialidade do médico não muda e a requisição não é rejeitada por isso.

O que acontece com clínica, convênio e cirurgia

Diferente do hospital, os campos DS_SETOR (clínica), DS_CONVENIO (convênio) e DS_CIRURGIA (cirurgia) são mais flexíveis: o Eblood procura um cadastro com esse nome (sem diferenciar maiúsculas/minúsculas) e, se não encontrar, cria um cadastro novo automaticamente. Nesses casos a requisição não é rejeitada — ela só fica marcada como incompleta nesse campo, para alguém revisar depois com calma.

Campos do payload

Os campos estão agrupados por assunto para facilitar a leitura. Clique em cada grupo para expandir.

Identificação da requisição (2 campos)
CampoObrigatórioO que é
NR_PRESCRICAOSimIdentificador da prescrição no sistema integrado. Vira o id da requisição no Eblood — até 14 dígitos.
NR_ATENDIMENTONãoNúmero de atendimento do paciente no sistema integrado.
Dados do paciente (10 campos)
CampoObrigatórioO que é
NM_PESSOA_FISICASimNome civil do paciente.
NM_SOCIALNãoNome social do paciente.
DT_NASCIMENTONãoData de nascimento.
NR_CPFNãoCPF do paciente — usado para localizar ou criar o cadastro.
SEXONãoSexo do paciente (M/F).
IE_ESTADO_CIVILNãoEstado civil. Código do sistema integrado, traduzido para o código já usado no Eblood — ver tabela de domínio.
NR_SEQ_COR_PELENãoCor/raça. Código do sistema integrado, traduzido para o código do Eblood — ver tabela de domínio.
IE_GRAU_INSTRUCAONãoGrau de instrução. Código do sistema integrado, traduzido para o código do Eblood — ver tabela de domínio.
CD_RELIGIAONãoReligião. Código idêntico ao do Eblood, sem tradução — ver tabela de domínio.
CD_NACIONALIDADENãoNacionalidade — ver tabela de domínio.
Local de atendimento (5 campos)
CampoObrigatórioO que é
CD_ESTABELECIMENTOSimIdentifica o hospital pelo código já cadastrado no Eblood. Se não encontrado, a requisição inteira é recusada.
DS_SETORNãoNome da clínica/setor. Localizado por nome; se não existir, é criado automaticamente.
CD_SETORNãoCódigo do setor no sistema integrado. Gravado apenas para auditoria — quem resolve a clínica de fato é DS_SETOR.
CD_UNIDADENãoQuarto/leito do paciente. Não confundir com CD_ESTABELECIMENTO — nomes parecidos, campos bem diferentes.
CD_AGENCIANãoId da agência à qual a requisição fica atrelada. Se omitido, usa a primeira agência cadastrada.
Convênio e médico (6 campos)
CampoObrigatórioO que é
CD_MEDICOSimCRM do médico — resolvido por lookup. Se não for encontrado, o Eblood cadastra um médico novo automaticamente usando NM_MEDICO, UF_MEDICO e CD_ESPECIALIDADE. Se não for possível criar (por exemplo, faltando algum desses campos), a requisição inteira é recusada.
NM_MEDICOCondicionalNome do médico. Obrigatório só quando CD_MEDICO ainda não tem cadastro no Eblood — usado apenas para criar o médico novo.
UF_MEDICOCondicionalUF do CRM. Obrigatório só quando CD_MEDICO ainda não tem cadastro no Eblood — usado apenas para criar o médico novo.
CD_ESPECIALIDADECondicionalComparado ao ans_code da especialidade já vinculada ao médico; se não bater, o médico é realocado — mas só se existir uma especialidade cadastrada com esse código. Obrigatório só quando CD_MEDICO ainda não tem cadastro no Eblood (usado para criar o médico).
DS_CONVENIONãoNome do convênio. Localizado por nome; se não existir, é criado automaticamente.
CD_CONVENIONãoCódigo do convênio no sistema integrado. Gravado apenas para auditoria — quem resolve o convênio de fato é DS_CONVENIO.
Dados clínicos gerais (8 campos)
CampoObrigatórioO que é
IE_TIPOSimTipo de transfusão. Traduzido para o código do Eblood — ver tabela de domínio. Ignorado quando IE_RESERVA é S.
IE_RESERVANãoS/N. Quando S, força o tipo para "Reserva" e ignora IE_TIPO.
IE_TIPO_PACIENTENãoClínico (C) ou Cirúrgico (I) — ver tabela de domínio.
DS_DIAGNOSTICONãoDescrição do diagnóstico.
DT_PROGRAMADANãoData/hora programada da transfusão.
IE_PORTE_CIRURGICONãoPorte da cirurgia — ver tabela de domínio.
DT_CIRURGIANãoData/hora da cirurgia.
DS_CIRURGIANãoNome da cirurgia. Localizada por nome; se não existir, é criada automaticamente.
Histórico do paciente (8 campos)
CampoObrigatórioO que é
DT_ULTIMA_TRANSFNãoData da última transfusão. Fica salvo no cadastro do paciente, não na requisição pontual.
QT_TRANSF_ANTERIORNãoQuantidade de transfusões anteriores.
NR_SEQ_REACAONãoTipo de reação prévia — ver tabela de domínio.
DS_HEMOCOMP_REACAONãoHemocomponente que causou a reação prévia.
DS_COAGULOPATIANãoCoagulopatia documentada.
IE_GRAVIDEZNãoHistórico de gravidez — ver tabela de domínio.
QT_GRAVIDEZNãoQuantidade de gestações.
QT_ABORTONãoQuantidade de abortos.
Pré-medicação e observações (3 campos)
CampoObrigatórioO que é
IE_PRE_MEDICACAONãoHouve pré-medicação (S/N).
DS_PRE_MEDICACAONãoDescrição da pré-medicação.
DS_OBSERVACAONãoObservações gerais da prescrição.
Exames laboratoriais (16 campos)

Todos opcionais. Valores numéricos de exames — o nome do campo já indica o exame.

CampoExame
QT_PLAQUETAContagem de plaquetas
QT_LEUCOCITOSContagem de leucócitos
QT_HEMOGLOBINATaxa de hemoglobina (g/dL)
QT_HEMATOCRITOTaxa de hematócrito (%)
QT_TAPTempo de atividade da protrombina (%)
QT_TAP_INRINR do tempo de protrombina
QT_TTPATTPa, em segundos
QT_TTPA_RELRelação paciente/normal do TTPa
QT_FIBRINOGENIODosagem de fibrinogênio
QT_ALBUMINAAlbumina sérica (g/dL)
QT_HEMOGLOBINA_SHemoglobina S (%)
QT_BILIRRUBINA_DIRBilirrubina direta (mg/dL)
QT_BILIRRUBINA_INDBilirrubina indireta (mg/dL)
QT_MAGNESIOMagnésio (mg/dL)
QT_CALCIOCálcio (mg/dL)
IE_COOMBS_DIRETOResultado do Coombs Direto
Sinais vitais e antropometria (7 campos)

Todos opcionais.

CampoO que é
QT_IMCÍndice de Massa Corporal
QT_PESOPeso em kg
QT_ALTURA_CMAltura em cm
QT_FREQ_CARDIACAFrequência cardíaca
QT_PA_SISTOLICAPressão arterial sistólica
QT_PA_DIASTOLICAPressão arterial diastólica
QT_TEMPTemperatura corporal (°C)
Itens solicitados (1 campo, obrigatório se houver itens)
CampoO que é
DS_ITEM_REQLista dos hemocomponentes pendentes, no formato [{"external_id": "1001", "amount": 3}]. Cada external_id é procurado no cadastro de hemocomponentes do Eblood; se não achar, tenta de novo por código ISBT.

Exemplo de chamada

cURL — pronto para o terminal
curl -X POST "{{BASE_URL}}/api/v1/requisitions" \
  -H "Authorization: Token token=\"{{TOKEN}}\"" \
  -H "Content-Type: application/json" \
  -d '{
    "NR_PRESCRICAO": "12345678901234",
    "NM_PESSOA_FISICA": "MARIA DA SILVA SANTOS",
    "CD_MEDICO": "123456",
    "CD_ESTABELECIMENTO": "1",
    "IE_TIPO": "3"
  }'
Exemplo completo de corpo (body)
{
    "NR_PRESCRICAO": "12345678901234",
    "NR_ATENDIMENTO": "987654321",
    "NM_PESSOA_FISICA": "MARIA DA SILVA SANTOS",
    "NM_SOCIAL": "MARIA SANTOS",
    "DT_NASCIMENTO": "1980-05-10",
    "IE_ESTADO_CIVIL": "2",
    "NR_CPF": "12345678901",
    "NR_SEQ_COR_PELE": "11",
    "IE_GRAU_INSTRUCAO": "4",
    "SEXO": "F",
    "CD_RELIGIAO": "2",
    "CD_NACIONALIDADE": "10",
    "CD_SETOR": "120",
    "DS_SETOR": "UTI ADULTO",
    "CD_ESTABELECIMENTO": "1",
    "CD_UNIDADE": "3N",
    "CD_AGENCIA": "1",
    "CD_CONVENIO": "45",
    "DS_CONVENIO": "BRADESCO SAUDE",
    "CD_MEDICO": "123456",
    "NM_MEDICO": "DR. JOAO OLIVEIRA",
    "UF_MEDICO": "SP",
    "CD_ESPECIALIDADE": "225124",
    "DS_DIAGNOSTICO": "Anemia por perda aguda de sangue",
    "IE_TIPO": "3",
    "IE_TIPO_PACIENTE": "C",
    "IE_RESERVA": "N",
    "DT_PROGRAMADA": "2026-08-18T10:00:00-03:00",
    "IE_PORTE_CIRURGICO": "M",
    "DT_CIRURGIA": "2026-08-18T08:00:00-03:00",
    "DS_CIRURGIA": "COLECISTECTOMIA VIDEOLAPAROSCOPICA",
    "DT_ULTIMA_TRANSF": "2025-01-15",
    "QT_TRANSF_ANTERIOR": 2,
    "NR_SEQ_REACAO": "3",
    "DS_HEMOCOMP_REACAO": "Concentrado de hemácias",
    "DS_COAGULOPATIA": "",
    "IE_GRAVIDEZ": "S",
    "QT_GRAVIDEZ": 2,
    "QT_ABORTO": 0,
    "IE_PRE_MEDICACAO": "S",
    "DS_PRE_MEDICACAO": "Dexclorfeniramina 5mg IV",
    "DS_OBSERVACAO": "Paciente com histórico de reação alérgica leve em transfusão anterior.",
    "QT_PLAQUETA": 180000,
    "QT_LEUCOCITOS": 6500,
    "QT_HEMOGLOBINA": 8.5,
    "QT_HEMATOCRITO": 27.3,
    "QT_TAP": 85.0,
    "QT_TAP_INR": 1.10,
    "QT_TTPA": 32.0,
    "QT_TTPA_REL": 1.05,
    "QT_FIBRINOGENIO": 280.5,
    "QT_ALBUMINA": 3.8,
    "QT_HEMOGLOBINA_S": 0.0,
    "QT_BILIRRUBINA_DIR": 0.3,
    "QT_BILIRRUBINA_IND": 0.7,
    "QT_MAGNESIO": 2.1,
    "QT_CALCIO": 9.0,
    "IE_COOMBS_DIRETO": "Negativo",
    "QT_IMC": 24.5,
    "QT_PESO": 65.500,
    "QT_ALTURA_CM": 163.0,
    "QT_FREQ_CARDIACA": 88,
    "QT_PA_SISTOLICA": 118,
    "QT_PA_DIASTOLICA": 76,
    "QT_TEMP": 36.5,
    "DS_ITEM_REQ": [
        { "external_id": "1001", "amount": 3 },
        { "external_id": "1002", "amount": 1 }
    ]
}

Respostas possíveis

{
    "id": "12345678901234",
    "date": "2026-08-18",
    "date_with_time": "2026-08-18T10:00:00-03:00",
    "room": "3N",
    "patient": {
        "id": 11024,
        "name": "MARIA DA SILVA SANTOS",
        "birthdate": "1980-05-10",
        "href": "/api/v1/patients/11024"
    },
    "hospital": {
        "id": 1,
        "name": "HOSPITAL EXEMPLO",
        "href": "/api/v1/hospitals/1"
    },
    "requirer": {
        "name": "DR. JOAO OLIVEIRA",
        "crm": "123456",
        "crm_uf": "SP"
    },
    "transfusion_type": "3",
    "hemocomponent_status": null,
    "hemoglobin": "8.5",
    "hematocrit": "27.3",
    "platelets": 180000
}
{
    "message": "Hospital não encontrado no Eblood para o CD_ESTABELECIMENTO informado: 1",
    "errors": []
}
{
    "message": "Physician name or crm não pode ser vazio",
    "errors": {
        "physician_name_or_crm": ["não pode ser vazio"]
    }
}
05
PUT {{BASE_URL}}/api/v1/requisitions/12345678901234/update_status

Atualizar status do hemocomponente

Registra a etapa de execução/infusão da requisição, conforme o sistema integrado for reportando. Também é este endpoint que cobre a suspensão da requisição — usando o código INT. Corresponde à seção 2.1.2 da especificação técnica original.

Valores aceitos

CódigoSignificado
NAguardando
IIniciado
INTInterrompido
TTerminado

Exemplo de chamada

cURL — pronto para o terminal
curl -X PUT "{{BASE_URL}}/api/v1/requisitions/12345678901234/update_status" \
  -H "Authorization: Token token=\"{{TOKEN}}\"" \
  -d "status=I"
Exemplo completo de corpo (body)
{
    "status": "I"
}

Respostas possíveis

{
    "message": "Status successfully updated"
}
{
    "message": "Requisition 12345678901234: The received status (Z) is invalid"
}
06
GET {{BASE_URL}}/api/v1/requisitions/12345678901234

Consultar requisição criada

Endpoint já existente no Eblood, útil para conferir — depois do POST de criação e do PUT de status — o estado final da requisição, incluindo o hemocomponent_status atual.

Exemplo de chamada

cURL — pronto para o terminal
curl -X GET "{{BASE_URL}}/api/v1/requisitions/12345678901234" \
  -H "Authorization: Token token=\"{{TOKEN}}\""
07

Tabelas de domínio

Vários campos usam códigos numéricos ou de letra em vez de texto livre. Esta seção traz o significado de cada código. Os códigos são os mesmos da especificação original do sistema integrado — em alguns campos o Eblood traduz esse código para o seu próprio padrão interno (isso é indicado em cada tabela).

IE_ESTADO_CIVIL Estado civil · traduzido para o padrão do Eblood
Código de origemDescrição de origemCódigo EbloodDescrição Eblood
1Solteiro1Solteiro
2Casado2Casado
3Divorciado4Divorciado
4Desquitado4Divorciado (aproximação)
5Viúvo3Viúvo
6Separado5Separado
7Concubinato/União Estável6União Estável
9Outros7Não Informado
10Desconhecido7Não Informado
IE_GRAU_INSTRUCAO Grau de instrução · traduzido para o padrão do Eblood
Código de origemDescrição de origemCódigo EbloodDescrição Eblood
1Analfabeto1Não Cursou
2Fundamental Completo31º Grau Completo
3Médio Completo52º Completo
4Superior73º Grau Completo
5 / 18Mestrado11Mestrado
6 / 17Doutor / Doutorado12Doutorado
7Fundamental Incompleto21º Grau Incompleto
8Médio Incompleto42º Incompleto
9Superior Incompleto63º Grau Incompleto
10Primário21º Grau Incompleto (aproximação)
11Não Alfabetizado1Não Cursou
12 / 19Pós-graduação10Pós-graduação
13Ph.D.12Doutorado (tratado como sinônimo)
14Não informado pela pessoa8Não Informado
15Nível Técnico Completo9Técnico Completo
16Pós-doutorado13Pós-doutorado
20Superior completo73º Grau Completo
CD_NACIONALIDADE Nacionalidade · ~90 valores, sem tradução

São ~90 valores possíveis, idênticos aos da especificação original do sistema integrado. Alguns exemplos mais comuns:

CódigoDescrição
10Brasileira
20Naturalizado Brasileiro
21Argentina
35Espanhola
36Norte Americana (USA)
39Italiana
45Portuguesa
105Desconhecida

Lista completa disponível internamente em app/models/enumerations/nationality.rb.

IE_TIPO Tipo de transfusão · traduzido para o padrão do Eblood
Código de origemDescrição de origemCódigo EbloodDescrição Eblood
1Programada (dia e hora marcados)1Programada
2De rotina (até 24h)8De rotina - em até 24 horas
3Urgente (até 3h)3De urgência - em até 3 horas
4Emergência (risco de vida)4De emergência - sob termo de responsabilidade

Quando IE_RESERVA é S, este campo é ignorado e o tipo vira "Reserva" automaticamente.

IE_PORTE_CIRURGICO Porte da cirurgia
CódigoSignificado
PPequeno
MMédio
GGrande
NPNão previsível
NR_SEQ_REACAO Tipo de reação transfusional prévia
CódigoSignificado
1Reação febril não hemolítica
2Reação hemolítica
3Reação alérgica
4Reação anafilática/anafilactóide
5TRALI
6Sobrecarga circulatória
7Contaminação bacteriana
8Reação atípica associada a inibidor de ECA
9Embolia aérea
10Hipocalcemia
11Hipotermia
12Aloimunização
13Aloimunização HLA
14Reação Enxerto Versus Hospedeiro
15Púrpura pós-transfusional
IE_GRAVIDEZ Histórico de gravidez
CódigoSignificado
SSim
NNão
IIgnorado
XNão sabe
IE_STATUS Status do hemocomponente · usado no PUT
CódigoSignificado
NAguardando
IIniciado
INTInterrompido — cobre também a suspensão da requisição
TTerminado
NR_SEQ_COR_PELE Cor/raça · traduzido para o padrão do Eblood
Código de origemDescrição de origemCódigo EbloodDescrição Eblood
1Branca1Branca
2Negra2Negra
4Amarela3Amarela
11Parda4Parda
13Vermelha5Indígena (aproximação)
21Desconhecida7Não Informado
CD_RELIGIAO Religião · sem tradução, mesmo código do sistema integrado
CódigoDescrição
2Católica
3Testemunha de Jeová
11Espiritualista
17Não possui Religião
21Evangélica
23Outras
24Budista
25Hinduísta
26Islâmica
27Judaica
28Desconhecida
29Prefiro não informar
31Israelita
32Muçulmana
33Protestante
34Ortodoxa
35Espírita
36Mormon
37Agnóstico
38Adventista
39Perfeita Liberdade
40Cristã
41Umbanda
42Candomblé
43Metodista
44Maçom
45Xintoista
46Oomoto
47Batista
48Messiânica
49Luterana
50Cabala
51Doutrinas
52Seicho No Ie
53Divinismo
54Ateísmo
55Religião de Deus
IE_TIPO_PACIENTE Tipo de paciente · traduzido para o padrão do Eblood
Código de origemDescrição de origemCódigo Eblood
CClínico6 — clinical
ICirúrgico7 — cirurgical
08

Erros comuns

Guia rápido para entender o que cada código de resposta quer dizer e o que fazer a respeito.

CódigoO que significaO que fazer
201Requisição criada com sucesso.Guarde o id retornado — ele é o mesmo NR_PRESCRICAO enviado.
200Status atualizado com sucesso.Nada a fazer — a atualização foi registrada.
422O hospital (CD_ESTABELECIMENTO) não foi encontrado no Eblood.Confirme se o hospital já está cadastrado no Eblood com esse código antes de reenviar.
422O médico (CD_MEDICO) não foi encontrado e não foi possível cadastrá-lo automaticamente.Envie NM_MEDICO, UF_MEDICO e um CD_ESPECIALIDADE válido — são obrigatórios para criar o médico quando o CRM ainda não existe no Eblood.
422Outro erro de validação (ex: CD_RELIGIAO fora do domínio, item de DS_ITEM_REQ inválido).Confira o campo errors da resposta — ele aponta qual campo falhou.
400O código de status enviado no PUT é inválido.Use apenas N, I, INT ou T.
09

Perguntas frequentes

Preciso saber programar para testar esses endpoints?
Não. Os exemplos em cURL desta página já saem prontos com a sua URL e token — basta copiar e colar em um terminal. Ferramentas como o Postman também aceitam colar um comando cURL direto na busca "Import".
Onde eu consigo o meu token?
O token é fornecido pelo Eblood diretamente, fora desta documentação — ele não faz parte de nenhum payload. Fale com o time responsável pela integração caso ainda não tenha recebido o seu.
O que acontece se eu esquecer um campo opcional?
Nada — a requisição é criada normalmente. Só os 5 campos marcados como obrigatórios (veja a seção "Criar requisição") realmente impedem a criação se estiverem ausentes ou inválidos. A exceção são NM_MEDICO, UF_MEDICO e CD_ESPECIALIDADE, marcados como condicionais: eles só passam a ser obrigatórios quando o CD_MEDICO enviado ainda não tem cadastro no Eblood.
Existe um endpoint para cancelar uma requisição?
Não como rota separada. Envie o status INT (Interrompido) no mesmo endpoint PUT de atualização de status — ele cobre tanto a finalização como o cancelamento/suspensão.
A URL e o token que eu digitar aqui ficam salvos em algum lugar?
Ficam salvos apenas no armazenamento local do seu navegador, para não precisar redigitar toda vez que voltar nesta página. Esta página não faz nenhuma chamada real à API — ela só monta os exemplos de comando para você copiar e rodar por conta própria.