{"info":{"_postman_id":"7f025e9e-08d0-416e-a393-be03d82befa0","name":"RNDS 0.3.0","description":"<html><head></head><body><p>Requisições para ambientação com os serviços oferecidos pela RNDS. A intenção é facilitar a compreensão acerca de como uma requisição é construída e enviada, assim como a resposta retornada. A experimentação com estas requisições, alterações de parâmetros e outros é recomendada para se obter a compreensão necessária para a posterior implementação destas requisições em código.</p>\n<blockquote>\n<p>Este conjunto (<em>collection</em>) de requisições será atualizado\nà medida que novos serviços forem disponibilizados pela RNDS.</p>\n</blockquote>\n<p>Esta coleção é mantida no repositório <a href=\"https://github.com/kyriosdata/rnds\">https://github.com/kyriosdata/rnds</a> e faz parte do <strong>Guia de Integração RNDS</strong> (disponível <a href=\"https://kyriosdata.github.io/rnds\">aqui</a>). Sugestões, erros e melhorias são bem-vindos. </p>\n<p>A coleção depende do valor de várias variáveis. Aquelas abaixo devem ser definidas com valores corretos para que as requisições possam ser executadas com sucesso. </p>\n<ul>\n<li><p><strong>identificador-solicitante</strong>: identificador do laboratório fornecido pela RNDS quando o credenciamento é homologado. Observe que este identificador não é o CNES. Observe que o responsável pelo laboratório deverá acompanhar o pedido de credenciamento e, quando este é homologado, este identificador estará disponível por meio do portal de serviços (o mesmo empregado para pedir o credenciamento).</p>\n</li>\n<li><p><strong>lab-cnes</strong>: o código CNES do laboratório responsável pelas requisições.  </p>\n</li>\n<li><p><strong>individuo-cns</strong>: conforme o próprio nome\nindica, é o CNS de um indivíduo, em particular, o CNS do profissional de saúde em nome do qual \na requisição será feita. Ou seja, este CNS deve estar associado ao laboratório em questão (CNES fornecido na variável acima). Este valor será enviado para a RNDS por meio do <em>header</em> de nome <strong>Authorization</strong>. Adicionalmente a este uso, este valor também é reutilizado para outras finalidades, por exemplo,\ncomo o sujeito (indivíduo) de um exame.</p>\n</li>\n<li><p><strong>auth</strong>: servidor (endereço) empregado para autenticação. Observe que o endereço do servidor muda do ambiente de homologação para aquele de produção.</p>\n</li>\n<li><p><strong>ehr</strong>: servidor (endereço) para envio das requisições de serviços (<em>web services</em>) de saúde. Observe que o endereço do ambiente de homologação é distinto daquele de produção. Acionalmente, no caso do ambiente de produção, o endereço é específico por estado do estabelecimento.</p>\n</li>\n<li><p><strong>ufg-cnpj</strong>: CNPJ da Universidade Federal de Goiás (UFG). Empregado apenas para teste. Observe que este valor pode ser obtido do próprio portal desta universidade.</p>\n</li>\n</ul>\n<p>As variáveis abaixo são empregadas pelos <em>scripts</em> de testes e pelas requisições. Os valores correspondentes são gerados e atualizados pela própria execução das requisições. </p>\n<ul>\n<li><p><strong>access_token</strong>: este valor será atualizado a cada requisição satisfatória ao serviço de autenticação e será empregado por todos os demais serviços assim como o valor da variável <strong>individuo-cns</strong>. </p>\n</li>\n<li><p><strong>individuo-cpf</strong>: o CPF do profissional de saúde cujo CNS é fornecido na variável <strong>individuo-cns</strong>. Observe que não é necessário fornecer este valor. Ele será obtido pela execução da requisição denominada \"Profissional pelo CNS\". </p>\n</li>\n<li><p><strong>exame-id-lab</strong>: identificador único do exame realizado pelo laboratório e gerado pelo laboratório. É um identificador local ao laboratório. Este valor é necessário para permitir a substituição de um resultado de exame previamente enviado. </p>\n</li>\n<li><p><strong>exame-id-rnds</strong>: identificador único, gerado pela RNDS, quando um resultado de exame é submetido. Este valor é necessário para permitir a substituição de um resultado de exame previamente enviado.</p>\n</li>\n</ul>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"2163377","collectionId":"7f025e9e-08d0-416e-a393-be03d82befa0","publishedId":"TVRd9Wad","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2020-09-30T11:54:37.000Z"},"item":[{"name":"Segurança (web services)","item":[{"name":"Obter token de acesso","event":[{"listen":"test","script":{"id":"ec758fc9-8cec-4c50-80e0-892539de1f6b","exec":["const template = `","access_token: <i>ocultado por segurança...</i><br/>","scope: {{scope}}<br />","token_type: {{token_type}}<br />","expires_in: {{expires_in}}min`;","","pm.visualizer.set(template, {","    ...pm.response.json(),","    expires_in: parseInt(pm.response.json().expires_in) / 60000","});","","pm.test(\"Código de status satisfatório\", function () {","    pm.response.to.have.status(200);","});","","pm.test(\"token de acesso disponível\", function () {","    const access_token = pm.response.json().access_token;","    pm.expect(access_token).not.eq(undefined);","    ","    // Guarda o \"access_token\" obtido ","    // (será utilizado pelas demais requisições)","    pm.collectionVariables.set(\"access_token\", access_token);","});"],"type":"text/javascript"}}],"id":"1fe00297-d487-4c51-b713-f9c6f63c98af","protocolProfileBehavior":{"strictSSL":false,"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://ehr-auth-hmg.saude.gov.br/api/token","description":"<p>Serviços oferecidos pela RNDS só podem ser atendidos por estabelecimentos de saúde (laboratórios) devidamente autenticados. \nHá um serviço específico (endereço específico) para a autenticação do estabelecimento. </p>\n<p>Se o estabelecimento é autenticado de forma satisfatória, um <em>token</em> de acesso é retornado e\npoderá ser reutilizado pelos 30 minutos seguintes. Convém observar que a autenticação de um\nestabelecimento via certificado digital é um processo \"oneroso\" e, portanto, a intenção é que o\n<em>token</em> seja reutilizado tanto quanto possível.</p>\n<p>O <em>token</em> de acesso obtido deve ser encaminhado nas requisições feitas aos demais serviços por meio\ndo <em>header</em> identificador por <strong>X-Authorization-Server</strong>. Em particular, o conteúdo deste <em>header</em> \ndeve ser \"Bearer token\". Observe que o <em>header</em> não tem apenas o valor do <em>token</em>. O valor do <em>token</em>,\numa sequência de mais de 2000 caracteres, deve ser precedida por \"Bearer \", sem as aspas.</p>\n","urlObject":{"protocol":"https","path":["api","token"],"host":["ehr-auth-hmg.saude.gov.br"],"query":[],"variable":[]}},"response":[],"_postman_id":"1fe00297-d487-4c51-b713-f9c6f63c98af"},{"name":"Gerar contexto atendimento (p/ redirect ProSUS)","event":[{"listen":"test","script":{"id":"431d35a2-552c-465a-b72f-d5ca2386c7a7","exec":["pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});",""],"type":"text/javascript"}}],"id":"ddc9d338-386c-4305-8e85-0d50605e9823","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde, lotado no estabelecimento de saúde em questão, em nome do qual a requisição é feita.</p>\n"}],"body":{"mode":"raw","raw":"{\n\t\"cnes\": \"1234567\",\n    \"cnsProfissional\": \"00112233445566\",\n    \"cnsPaciente\":\"00112233445566\"\n}","options":{"raw":{"language":"json"}}},"url":"https://ehr-services.hmg.saude.gov.br/api/contexto-atendimento","description":"<p>Obtém <em>token</em> por meio do qual é assegurado acesso ao Conecte SUS Profissional.</p>\n","urlObject":{"protocol":"https","path":["api","contexto-atendimento"],"host":["ehr-services.hmg.saude.gov.br"],"query":[],"variable":[]}},"response":[],"_postman_id":"ddc9d338-386c-4305-8e85-0d50605e9823"}],"id":"8f5dbb74-8b51-4b80-85bf-60712fdd6a2b","event":[{"listen":"prerequest","script":{"id":"3908d4fa-8dca-4d3f-b5fb-f6cfbd64c331","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"9aeda302-6787-4e25-9efb-e787b05b7dcb","type":"text/javascript","exec":[""]}}],"_postman_id":"8f5dbb74-8b51-4b80-85bf-60712fdd6a2b","description":""},{"name":"Saúde (web services)","item":[{"name":"Estabelecimento pelo CNES","event":[{"listen":"test","script":{"id":"1e4b0769-e17a-416e-b5b5-43e06dfc34ce","exec":["pm.test(\"Status code is 200\", function () { pm.response.to.have.status(200); });","","pm.test(\"Estabelecimento de saúde encontrado\", function () {","    const cnesRecuperado = pm.response.json().id;","    const cnesFornecido = pm.collectionVariables.get(\"lab-cnes\");","","    pm.expect(cnesRecuperado).to.eql(cnesFornecido);","});",""],"type":"text/javascript"}}],"id":"e2a0cae3-66be-4947-ab88-dcf781b803bd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde lotado no estabelecimento em questão.</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Organization/:cnes","description":"<p>Obtém informações sobre o estabelecimento de saúde cujo CNES é fornecido.</p>\n","urlObject":{"protocol":"https","path":["api","fhir","r4","Organization",":cnes"],"host":["ehr-services.hmg.saude.gov.br"],"query":[],"variable":[{"id":"428e1d93-e1c0-41c2-9ef8-b60334fd742d","description":{"content":"<p>O CNES do estabelecimento de saúde cujas informações são requisitadas. O nome do laboratório, telefones e endereço são algumas das informações recuperadas.</p>\n","type":"text/plain"},"type":"string","value":"1234567","key":"cnes"}]}},"response":[],"_postman_id":"e2a0cae3-66be-4947-ab88-dcf781b803bd"},{"name":"Profissional pelo CNS","event":[{"listen":"test","script":{"id":"217201fb-d68c-4c66-89b7-1cf672d94d41","exec":["pm.test(\"Status code is 200\", function () { ","    pm.response.to.have.status(200); ","});","","pm.test(\"Profissional de saúde identificado\", function () {","    const resposta = pm.response.json();","    const fornecido = pm.collectionVariables.get(\"individuo-cns\");","    pm.expect(resposta.id).to.eql(fornecido);","","    // Guarda o CPF do profissional para requisição que usa CPF","    const ids = resposta.identifier;","    const idx = ids.findIndex(i => i.system.endsWith(\"/cpf\"));","    const cpf = ids[idx].value;","    pm.collectionVariables.set(\"individuo-cpf\", cpf);","});"],"type":"text/javascript"}}],"id":"fe7f8da3-dee2-4769-a71a-eaf89501d644","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde lotado no estabelecimento em questão.</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Practitioner/:cns","description":"<p>Obtém informações do profissional cujo CNS é fornecido.</p>\n","urlObject":{"protocol":"https","path":["api","fhir","r4","Practitioner",":cns"],"host":["ehr-services.hmg.saude.gov.br"],"query":[],"variable":[{"id":"615e6f6c-59a6-4c74-889c-3b8ed58ba972","description":{"content":"<p>CNS ou CPF do profissional de saúde lotado no estabelecimento em questão.</p>\n","type":"text/plain"},"type":"string","value":"00112233445566","key":"cns"}]}},"response":[],"_postman_id":"fe7f8da3-dee2-4769-a71a-eaf89501d644"},{"name":"Pesquisar profissional pelo CPF","event":[{"listen":"test","script":{"id":"b2268863-0fbd-4e46-b5e7-7273f6dbdd1e","exec":["pm.test(\"Status code is 200\", function () { ","    pm.response.to.have.status(200); ","});","","pm.test(\"Total equals 1\", function () {","    var jsonData = pm.response.json();","    pm.expect(jsonData.total).to.eql(1);","});"],"type":"text/javascript"}}],"id":"8285378a-bcce-4435-ba5a-cde38c29cf8b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde. Aqui é empregado o CNS fornecido pela variável \"individuo-cns\".</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Practitioner?identifier=http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcpf%7C","urlObject":{"protocol":"https","path":["api","fhir","r4","Practitioner"],"host":["ehr-services.hmg.saude.gov.br"],"query":[{"description":{"content":"<p>CPF do profissional de saúde cujas informações serão recuperadas. Dentre aquelas retornadas se encontra o nome e o CNS do profissional em questão, dentre outras. \nUsa CPF recuperado por \"Profissional pelo CNS\"</p>\n","type":"text/plain"},"key":"identifier","value":"http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcpf%7C"}],"variable":[]}},"response":[],"_postman_id":"8285378a-bcce-4435-ba5a-cde38c29cf8b"},{"name":"Pesquisar Lotações pelo CNS e/ou CNES","event":[{"listen":"test","script":{"id":"a45c3914-a838-48e7-be26-f75445ea6ac1","exec":["pm.test(\"Status code is 200\", function () { ","    pm.response.to.have.status(200); ","});","","pm.test(\"Total >= 1\", function () {","    var jsonData = pm.response.json();","    pm.expect(jsonData.total).to.above(0);","});"],"type":"text/javascript"}}],"id":"299206ef-8581-4cd3-97ef-7748eff9eaf4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde.</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/PractitionerRole?practitioner.identifier=http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcns%7C00112233445566&organization.identifier=http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcnes%7C1234567&_include=PractitionerRole%3Aorganization","urlObject":{"protocol":"https","path":["api","fhir","r4","PractitionerRole"],"host":["ehr-services.hmg.saude.gov.br"],"query":[{"key":"practitioner.identifier","value":"http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcns%7C00112233445566"},{"key":"organization.identifier","value":"http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcnes%7C1234567"},{"key":"_include","value":"PractitionerRole%3Aorganization"}],"variable":[]}},"response":[],"_postman_id":"299206ef-8581-4cd3-97ef-7748eff9eaf4"},{"name":"Pessoa Juridica pelo CNPJ","event":[{"listen":"test","script":{"id":"27b895a7-be60-4dfa-a662-e75d75e8202d","exec":["pm.test(\"Status code is 200\", function () { pm.response.to.have.status(200); });","","pm.test(\"Organização encontrada\", function () {","    var jsonData = pm.response.json();","    const ufgCNPJ = pm.collectionVariables.get(\"ufg-cnpj\");","    pm.expect(jsonData.id).to.eql(ufgCNPJ);","});","","pm.test(\"Confere nome da UFG\", function() {","    var jsonData = pm.response.json();","    pm.expect(jsonData.name).to.eql(\"UNIVERSIDADE FEDERAL DE GOIAS\");","});","","pm.test(\"Return correct profile\", function () {","    const tipo = pm.response.json().type[0].coding[0];","    pm.expect(tipo.version).to.eql(\"AUTARQUIA FEDERAL\");","});"],"type":"text/javascript"}}],"id":"6c1759df-081e-459a-a94a-6e5f15134f24","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde.</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Organization/:cnpj","description":"<p>Pesquisa pessoa jurídica pelo CNPJ</p>\n","urlObject":{"protocol":"https","path":["api","fhir","r4","Organization",":cnpj"],"host":["ehr-services.hmg.saude.gov.br"],"query":[],"variable":[{"id":"2a75e540-bcc3-4e5e-b703-539a6bc7a3df","type":"string","value":"01567601000143","key":"cnpj"}]}},"response":[],"_postman_id":"6c1759df-081e-459a-a94a-6e5f15134f24"},{"name":"Profissional liberal pelo CPF ou CNES do estabelecimento","event":[{"listen":"test","script":{"id":"c386a500-1491-4105-a248-23f9a5789060","exec":["pm.test(\"Status code is 200\", function () { pm.response.to.have.status(200); });","","pm.test(\"Estabelecimento de saúde encontrado\", function () {","    var cnesRecuperado = pm.response.json().id;","    const labCnes = pm.collectionVariables.get(\"lab-cnes\");","    pm.expect(cnesRecuperado).to.eql(labCnes);","});","","pm.test(\"Verifica cnes via identifier\", function () {","    const ids = pm.response.json().identifier;","    const idxCnes = ids.findIndex(i => i.system.endsWith(\"/cnes\"));","    const cnesRecuperado = pm.response.json().identifier[idxCnes].value;","    const labCnes = pm.collectionVariables.get(\"lab-cnes\");","    pm.expect(cnesRecuperado).to.eql(labCnes);","});"],"type":"text/javascript"}}],"id":"ff7b3fcb-03e6-45d7-bcbb-b5a920a58bd5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde.</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Organization/:cpf","description":"<p>Profissional liberal (empresa): consulta pelo CPF.\nConsulta também pode ser pelo CNES, no lugar do CPF.</p>\n","urlObject":{"protocol":"https","path":["api","fhir","r4","Organization",":cpf"],"host":["ehr-services.hmg.saude.gov.br"],"query":[],"variable":[{"id":"cc027645-eb63-4c71-8ff6-f5aed636b79b","type":"string","value":"1234567","key":"cpf"}]}},"response":[],"_postman_id":"ff7b3fcb-03e6-45d7-bcbb-b5a920a58bd5"},{"name":"Pesquisar paciente pelo CNS","event":[{"listen":"test","script":{"id":"a7876385-becd-4b73-98ce-801c73df1ef7","exec":["pm.test(\"Status code is 200\", function () { ","    pm.response.to.have.status(200);","});","","pm.test(\"Verifica cns recuperado pelo identificador\", function () {","    // Recupera todos os identificadores","    const idx = pm.response.json().entry[0].resource.identifier;","","    // Extrai apenas os valores dos identificadores que são CNS","    const cnss = idx.filter(i => i.system.endsWith(\"/cns\")).map(i => i.value);","","    const fornecido = pm.collectionVariables.get(\"individuo-cns\");","    pm.expect(cnss.includes(fornecido)).to.eql(true);","});"],"type":"text/javascript"}}],"id":"1a007726-4aa1-4908-95a0-f0dec9f69201","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde.</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Patient?identifier=http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcns%7C00112233445566","urlObject":{"protocol":"https","path":["api","fhir","r4","Patient"],"host":["ehr-services.hmg.saude.gov.br"],"query":[{"disabled":true,"key":null,"value":""},{"key":"identifier","value":"http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcns%7C00112233445566"}],"variable":[]}},"response":[],"_postman_id":"1a007726-4aa1-4908-95a0-f0dec9f69201"},{"name":"Pesquisar paciente pelo CPF","event":[{"listen":"test","script":{"id":"a8b4e51c-d0b0-43b6-87b5-2b99deb05057","exec":["pm.test(\"Status code is 200\", function () { ","    pm.response.to.have.status(200);","});","","pm.test(\"Verifica cns recuperado pelo identificador\", function () {","    // Recupera todos os identificadores","    const idx = pm.response.json().entry[0].resource.identifier;","","    // Extrai apenas os valores dos identificadores que são CNS","    const cnss = idx.filter(i => i.system.endsWith(\"/cns\")).map(i => i.value);","","    const fornecido = pm.collectionVariables.get(\"individuo-cns\");","    pm.expect(cnss.includes(fornecido)).to.eql(true);","});"],"type":"text/javascript"}}],"id":"7053c300-2c1d-45d7-90da-b20e771ea616","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Authorization-Server","value":"Bearer ","type":"text","description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n"},{"key":"Authorization","value":"00112233445566","type":"text","description":"<p>CNS ou CPF do profissional de saúde.</p>\n"}],"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Patient?identifier=http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcpf%7C","urlObject":{"protocol":"https","path":["api","fhir","r4","Patient"],"host":["ehr-services.hmg.saude.gov.br"],"query":[{"disabled":true,"key":null,"value":""},{"key":"identifier","value":"http%3A%2F%2Frnds.saude.gov.br%2Ffhir%2Fr4%2FNamingSystem%2Fcpf%7C"}],"variable":[]}},"response":[],"_postman_id":"7053c300-2c1d-45d7-90da-b20e771ea616"},{"name":"Enviar resultado de exame","event":[{"listen":"test","script":{"id":"65442748-d705-4cd6-b1d4-37431113771d","exec":["pm.test(\"Status code is 201\", function () { ","    pm.response.to.have.status(201); ","});","","pm.test(\"Location is present\", function () {","    // Recupera o identificador atribuído ao bundle pela RNDS","    // (identificador pelo qual a RNDS reconhece o documento em questão)","    pm.response.to.have.header(\"Location\");","    const location = pm.response.headers.get(\"Location\");","    const rndsID = location.substring(location.lastIndexOf(\"/\") + 1);","","    // Guarda rndsID para facilitar substituição deste documento","    pm.collectionVariables.set(\"exame-id-rnds\", rndsID);","    console.log(\"exame-id-lab: \" + pm.collectionVariables.get(\"exame-id-lab\"));","    console.log(\"exame-id-rnds: \" + rndsID);","});",""],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"e3897494-d5a9-4964-bc75-6be95f38a4e5","exec":["const uuid = require(\"uuid\");","","// Define um novo identificador para o bundle (resultado)","pm.collectionVariables.set(\"exame-id-lab\", uuid.v4())","","console.log(\"individuo-cns: \" + pm.collectionVariables.get(\"individuo-cns\"));"],"type":"text/javascript"}}],"id":"63a95d82-e0c7-4568-8e58-529711b9ea87","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","type":"text","value":"application/json"},{"description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n","key":"X-Authorization-Server","type":"text","value":"Bearer "},{"description":"<p>CNS ou CPF do profissional de saúde lotado no estabelecimento de saúde em questão.</p>\n","key":"Authorization","type":"text","value":"00112233445566"}],"body":{"mode":"raw","raw":"\n{\n    \"resourceType\": \"Bundle\",\n    \"type\": \"document\",\n    \"timestamp\": \"2020-10-02T11:57:31-03:00\",\n    \"meta\": {\n        \"lastUpdated\": \"2020-10-02T11:57:31-03:00\"\n    },\n    \"identifier\": {\n        \"system\": \"http://www.saude.gov.br/fhir/r4/NamingSystem/BRRNDS-99\",\n        \"value\": \"\"\n    },\n    \"entry\": [\n        {\n            \"fullUrl\": \"urn:uuid:transient-0\",\n            \"resource\": {\n                \"resourceType\": \"Composition\",\n                \"meta\": {\n                    \"profile\": [\n                        \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRResultadoExameLaboratorial-1.1\"\n                    ]\n                },\n                \"status\": \"final\",\n                \"type\": {\n                    \"coding\": [\n                        {\n                            \"system\": \"http://www.saude.gov.br/fhir/r4/CodeSystem/BRTipoDocumento\",\n                            \"code\": \"REL\"\n                        }\n                    ]\n                },\n                \"subject\": {\n                    \"identifier\": {\n                        \"system\": \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRIndividuo-1.0\",\n                        \"value\": \"00112233445566\"\n                    }\n                },\n                \"date\": \"2020-09-29T10:59:53-03:00\",\n                \"author\": [\n                    {\n                        \"identifier\": {\n                            \"system\": \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BREstabelecimentoSaude-1.0\",\n                            \"value\": \"1234567\"\n                        }\n                    }\n                ],\n                \"title\": \"Resultado de Exame Laboratorial\",\n                \"section\": [\n                    {\n                        \"entry\": [\n                            {\n                                \"reference\": \"urn:uuid:transient-1\"\n                            }\n                        ]\n                    }\n                ]\n            }\n        },\n        {\n            \"fullUrl\": \"urn:uuid:transient-1\",\n            \"resource\": {\n                \"resourceType\": \"Observation\",\n                \"meta\": {\n                    \"profile\": [\n                        \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRDiagnosticoLaboratorioClinico-1.0\"\n                    ]\n                },\n                \"status\": \"final\",\n                \"category\": [\n                    {\n                        \"coding\": [\n                            {\n                                \"system\": \"http://www.saude.gov.br/fhir/r4/CodeSystem/BRSubgrupoTabelaSUS\",\n                                \"code\": \"0214\"\n                            }\n                        ]\n                    }\n                ],\n                \"code\": {\n                    \"coding\": [\n                        {\n                            \"system\": \"http://www.saude.gov.br/fhir/r4/CodeSystem/BRNomeExameLOINC\",\n                            \"code\": \"94507-1\"\n                        }\n                    ]\n                },\n                \"subject\": {\n                    \"identifier\": {\n                        \"system\": \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRIndividuo-1.0\",\n                        \"value\": \"00112233445566\"\n                    }\n                },\n                \"issued\": \"2020-03-23T10:30:12.947-02:00\",\n                \"performer\": [\n                    {\n                        \"identifier\": {\n                            \"system\": \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRPessoaJuridicaProfissionalLiberal-1.0\",\n                            \"value\": \"00112233445566\"\n                        }\n                    }\n                ],\n                \"valueCodeableConcept\": {\n                    \"coding\": [\n                        {\n                            \"system\": \"http://www.saude.gov.br/fhir/r4/CodeSystem/BRResultadoQualitativoExame\",\n                            \"code\": \"1\"\n                        }\n                    ]\n                },\n                \"method\": {\n                    \"text\": \"Imunocromatográfico\"\n                },\n                \"referenceRange\": [\n                    {\n                        \"text\": \"(1) Detectável = presença de anticorpos; (2) Não detectável = ausência de anticorpos\"\n                    }\n                ],\n                \"specimen\": {\n                    \"reference\": \"urn:uuid:transient-2\"\n                }\n            }\n        },\n        {\n            \"fullUrl\": \"urn:uuid:transient-2\",\n            \"resource\": {\n                \"resourceType\": \"Specimen\",\n                \"meta\": {\n                    \"profile\": [\n                        \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRAmostraBiologica-1.0\"\n                    ]\n                },\n                \"type\": {\n                    \"coding\": [\n                        {\n                            \"system\": \"http://www.saude.gov.br/fhir/r4/CodeSystem/BRTipoAmostraGAL\",\n                            \"code\": \"SGHEM\"\n                        }\n                    ]\n                }\n            }\n        }\n    ]\n}\n  "},"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Bundle","description":"<p>Um <em>Bundle</em> é um \"depósito\" ou \"contêiner\" de outros recursos FHIR, e dado que precisamos de \ntrês recursos FHIR para um exame, também precisamos de um <em>Bundle</em>.</p>\n<p>Este Bundle possui um identificador local (identifier.value), ou identificador fornecido pelo laboratório. \nEste valor é gerado, nestes testes, automaticamente e depositado na variável global \"labID\".</p>\n<p>A execução desta requisição tem como resposta o identificador atribuído, pela RNDS, ao Bundle.\nEste identificador é fornecido por meio do Header \"Location\". O valor deste identificador é \ndepositado na variável global \"rndsID\".</p>\n<p>Para que um Resultado de Exame seja substituído, o Bundle que irá substituí-lo deverá possuir o mesmo\nidentificador local (identifier.value). Adicionalmente, o campo relatesTo[0].targetReference.reference\ndeve ter como valor \"Composition/\". Ou seja, o identificador fornecido pela RNDS para o Bundle\na se substituído.</p>\n","urlObject":{"protocol":"https","path":["api","fhir","r4","Bundle"],"host":["ehr-services.hmg.saude.gov.br"],"query":[],"variable":[]}},"response":[],"_postman_id":"63a95d82-e0c7-4568-8e58-529711b9ea87"},{"name":"Substituir resultado de exame","event":[{"listen":"test","script":{"id":"05e549dd-bb68-4524-b1c5-d5455ae228c3","exec":["pm.test(\"Status code is 201\", function () {","    pm.response.to.have.status(201);","});","","pm.test(\"Substituição gera outro identificador\", function () {","    const location = pm.response.headers.get(\"Location\");","    const retornado = location.substring(location.lastIndexOf(\"/\") + 1);","    const armazenado = pm.collectionVariables.get(\"exame-id-rnds\");","    if (retornado == armazenado) {","        throw new Error(\"devem ser diferentes\");","    }","});"],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"77159b33-2017-4e23-9884-7a6304eb76d8","exec":[""],"type":"text/javascript"}}],"id":"dba6f453-143e-4a23-97bc-20c40709ec77","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","type":"text","value":"application/json"},{"description":"<p><em>Token</em> de acesso gerado pelo serviço \"Obter token de acesso\" (serviço de autenticação).</p>\n","key":"X-Authorization-Server","type":"text","value":"Bearer "},{"description":"<p>CNS ou CPF do profissional de saúde.</p>\n","key":"Authorization","type":"text","value":"00112233445566"}],"body":{"mode":"raw","raw":"{\n   \"resourceType\":\"Bundle\",\n   \"meta\":{\n      \"lastUpdated\":\"2020-03-25T14:23:56.567-02:00\"\n   },\n   \"identifier\":{\n      \"system\":\"http://www.saude.gov.br/fhir/r4/NamingSystem/BRRNDS-99\",\n      \"value\":\"\"\n   },\n   \"type\":\"document\",\n   \"timestamp\":\"2020-03-25T14:23:56.567-02:00\",\n   \"entry\":[\n      {\n         \"fullUrl\":\"urn:uuid:transient-0\",\n         \"resource\":{\n            \"resourceType\":\"Composition\",\n            \"meta\":{\n               \"profile\":[\n                  \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRResultadoExameLaboratorial-1.1\"\n               ]\n            },\n            \"status\":\"final\",\n            \"type\":{\n               \"coding\":[\n                  {\n                     \"system\":\"http://www.saude.gov.br/fhir/r4/CodeSystem/BRTipoDocumento\",\n                     \"code\":\"REL\"\n                  }\n               ]\n            },\n            \"subject\":{\n               \"identifier\":{\n                  \"system\":\"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRIndividuo-1.0\",\n                  \"value\":\"00112233445566\"\n               }\n            },\n            \"date\":\"2020-03-25T10:30:12.947-02:00\",\n            \"author\":[\n               {\n                  \"identifier\":{\n                     \"system\":\"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRPessoaJuridicaProfissionalLiberal-1.0\",\n                     \"value\":\"1234567\"\n                  }\n               }\n            ],\n            \"title\":\"Resultado de Exame Laboratorial\",\n            \"relatesTo\":[\n               {\n                  \"code\":\"replaces\",\n                  \"targetReference\":{\n                     \"reference\":\"Composition/\"\n                  }\n               }\n            ],\n            \"section\":[\n               {\n                  \"entry\":[\n                     {\n                        \"reference\":\"urn:uuid:transient-1\"\n                     }\n                  ]\n               }\n            ]\n         }\n      },\n      {\n         \"fullUrl\":\"urn:uuid:transient-1\",\n         \"resource\":{\n            \"resourceType\":\"Observation\",\n            \"meta\":{\n               \"profile\":[\n                  \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRDiagnosticoLaboratorioClinico-1.0\"\n               ]\n            },\n            \"status\":\"final\",\n            \"category\":[\n               {\n                  \"coding\":[\n                     {\n                        \"system\":\"http://www.saude.gov.br/fhir/r4/CodeSystem/BRSubgrupoTabelaSUS\",\n                        \"code\":\"0214\"\n                     }\n                  ]\n               }\n            ],\n            \"code\":{\n               \"coding\":[\n                  {\n                     \"system\":\"http://www.saude.gov.br/fhir/r4/CodeSystem/BRNomeExameLOINC\",\n                     \"code\":\"94507-1\"\n                  }\n               ]\n            },\n            \"subject\":{\n               \"identifier\":{\n                  \"system\":\"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRIndividuo-1.0\",\n                  \"value\":\"00112233445566\"\n               }\n            },\n            \"issued\":\"2020-03-23T10:30:12.947-02:00\",\n            \"performer\":[\n               {\n                    \"identifier\": {\n                    \"system\": \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRPessoaJuridicaProfissionalLiberal-1.0\",\n                    \"value\": \"00112233445566\"\n                }\n               }\n            ],\n            \"valueCodeableConcept\":{\n               \"coding\":[\n                  {\n                     \"system\":\"http://www.saude.gov.br/fhir/r4/CodeSystem/BRResultadoQualitativoExame\",\n                     \"code\":\"3\"\n                  }\n               ]\n            },\n            \"method\":{\n               \"text\":\"Imunocromatográfico\"\n            },\n            \"specimen\":{\n               \"reference\":\"urn:uuid:transient-2\"\n            },\n            \"referenceRange\":[\n               {\n                  \"text\":\"(1) Detectável = presença de anticorpos; (2) Não detectável = ausência de anticorpos\"\n               }\n            ]\n         }\n      },\n      {\n         \"fullUrl\":\"urn:uuid:transient-2\",\n         \"resource\":{\n            \"resourceType\":\"Specimen\",\n            \"meta\":{\n               \"profile\":[\n                  \"http://www.saude.gov.br/fhir/r4/StructureDefinition/BRAmostraBiologica-1.0\"\n               ]\n            },\n            \"type\":{\n               \"coding\":[\n                  {\n                     \"system\":\"http://www.saude.gov.br/fhir/r4/CodeSystem/BRTipoAmostraGAL\",\n                     \"code\":\"SGHEM\"\n                  }\n               ]\n            }\n         }\n      }\n   ]\n}"},"url":"https://ehr-services.hmg.saude.gov.br/api/fhir/r4/Bundle","description":"<p>ESTA REQUISIÇÃO DEVE SER EXECUTADA APÓS \"Enviar resultado de exame\". Veja abaixo o motivo.</p>\n<p>O identificador do Bundle que requisita a substituição deve ter como identificador local o mesmo identificador local do Bundle que foi empregado para criar o documento (versão a ser substituída). A requisição \"Enviar resultado de exame\"\ngera um identificador local (exame-id-lab) que será empregado pela presente requisição.</p>\n<p>Adicionalmente, em relatesTo[0].targetReference.reference, o valor deve ser \n\"Composition/\", ou seja emprega o identificador atribuído pela RNDS ao Bundle a ser substituído.</p>\n","urlObject":{"protocol":"https","path":["api","fhir","r4","Bundle"],"host":["ehr-services.hmg.saude.gov.br"],"query":[],"variable":[]}},"response":[],"_postman_id":"dba6f453-143e-4a23-97bc-20c40709ec77"}],"id":"dc1553c6-095e-4dc8-bcf4-f4c549e8689d","event":[{"listen":"prerequest","script":{"id":"5fce44d0-c56a-4617-886f-1d9622e34f37","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"2014aef1-af1e-443e-a4d9-e8466684f34e","type":"text/javascript","exec":[""]}}],"_postman_id":"dc1553c6-095e-4dc8-bcf4-f4c549e8689d","description":""}],"event":[{"listen":"prerequest","script":{"id":"ad5be6c8-53a6-43eb-b6d0-7a7359c9d861","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"fe6b306c-08ee-4be0-a490-19eaa595aee9","type":"text/javascript","exec":[""]}}],"variable":[{"key":"individuo-cns","value":"00112233445566"},{"key":"lab-cnes","value":"1234567"},{"key":"identificador-solicitante","value":"99"},{"key":"auth","value":"ehr-auth-hmg.saude.gov.br"},{"key":"ehr","value":"ehr-services.hmg.saude.gov.br"},{"key":"ufg-cnpj","value":"01567601000143"},{"key":"access_token","value":""},{"key":"exame-id-lab","value":""},{"key":"exame-id-rnds","value":""},{"key":"individuo-cpf","value":""}]}