Передача пациента (POST Patient)

Пример запроса при добавлении пациента:
  {resourceType": "Patient",
    identifier": [{
      "system": "http://netrika.ru/patient-mis-identifier",
      "value": "IdPatientMis",
      "assigner": {
         "display": "1.2.643.5.1.13.3.25.78.103"
      }
   },
   {
      "system": "http://netrika.ru/patient-snils",
      "value": "111-111-111 11",
      "assigner": {
         "display": "Пенсионный фонд"
      }
   },
   {
      "system": "http://netrika.ru/patient-pasport",
      "value": "1111:111111",
      "assigner": {
         "display": "УФМС"
      }
   }],
   "name": [{
      "family": ["Татарова"],
      "given": ["Таисия", "Карловна"]
   }],
   "gender": "female",
   "birthDate": "1982-05-13T16:26:59.859+03:00",
   "address": [{
      "use": "home",
      "text": "Санкт-Петербург, Фуражный пер., д. 3"
   }]
}

Добавление полиса пациента (POST Coverage)

Пример запроса при добавлении полиса пациента:
  {
    "resourceType": "Coverage",
    "type": {
        "system": "http://netrika.ru/coverage-type",
        "code": "1"
    },
    "identifier": [
        {
            "system": "http://netrika.ru/polis-oms-new",
            "value": "1234567891011121",
            "assigner": {
                "display": "23807"
            }
        }
    ],
    "subscriber": {
        "reference": "Patient/a26c74d5-3115-4a35-b034-722dfd2603f5"
    }
}

Передача заявки (POST Bundle заявки)

Структура запроса Bundle заявки

Пример базовой структуры json-запроса для передачи заявки:
  {
    "resourceType": "Bundle",
   "meta": {
      "profile": ["/StructureDefinition/cd45a667-bde0-490f-b602-8d780acf4aa2"]
   },
    "type": "transaction",
    "entry": [
        {
            "resource": {
                "resourceType": "Order",
                //должны быть перечислены все параметры Order
            },
            "transaction": {
                "method": "POST", //тип операции с ресурсом
                "url": "Order" // ресурс
            }
        },
        {
            "resource": {
                "resourceType": "DiagnosticOrder",
                "id": "143e62fc-eee7-4273-899c-23c60c72cb1a", // GUID ресурса в Bundle, который используется в ссылках
                //должны быть перечислены все параметры DiagnosticOrder
            },
            "transaction": {
                "method": "POST", //тип операции с ресурсом
                "url": "DiagnosticOrder" // ресурс
            }
        },
        {
            "resource": {
                "resourceType": "Encounter",
                "id": "f0ceca14-6847-4ea4-b128-7c86820da428",  // GUID ресурса в Bundle, который используется в ссылках
            //должны быть перечислены все параметры Encounter
            },
            "transaction": {
                "method": "POST", //тип операции с ресурсом
                "url": "Encounter" // ресурс
            }
        },
        {
            "resource": {
                "resourceType": "Specimen",
                "id": "f8cd600f-f5b5-4b18-9662-18212c1935f9",  // GUID ресурса в Bundle, который используется в ссылках
                //должны быть перечислены все параметры Specimen
            },
            "transaction": {
                "method": "POST",  //тип операции с ресурсом
                "url": "Specimen"  // ресурс
            }
        },
        {
            "resource": {
                "resourceType": "Condition",
                "id": "64d57862-f2c2-41ef-a5cf-27f2d53569eb",  // GUID ресурса в Bundle, который используется в ссылках
                //должны быть перечислены все параметры Condition
            },
            "transaction": {
                "method": "POST",  //тип операции с ресурсом
                "url": "Condition"  // ресурс
            }
        },
      // в Bundle могут быть добавлены прочие ресурсы, необходимые для выполнения исследования
    ]
}

Описание ресурсов, входящих в состав Bundle

Order
Пример фрагмента Bundle для Order
  "resource": {
    "resourceType": "Order",
    "identifier": [
        {
            "system": "http://netrika.ru/mis-identifier",
            "value": "IdOrderMis"
        }
    ],
    "date": "28.05.2015 0:00:00",
    "subject": {
        "reference": "Patient/a26c74d5-3115-4a35-b034-722dfd2603f5"
    },
    "source": {
        "reference": "519a08f4-c240-4e58-aa66-fe2a017b8d94"
    },
    "target": {
        "reference": "Organization/73f51084-d6ee-40d7-8e17-befc1c56303e"
    },
    "when": {
        "code": {
            "coding": [
                {
                    "system": "http://netrika.ru/priority",
                    "code": "1"
                }
            ]
        }
    },
    "detail": [
        {
            "reference": "143e62fc-eee7-4273-899c-23c60c72cb1a"
        },
        {
            "reference": "ad5861c0-7066-4398-a092-92db8727b438"
        }
    ]
}
DiagnosticOrder
Пример фрагмента Bundle для DiagnosticOrder
  "resource": {
    "resourceType": "DiagnosticOrder",
    "id": "143e62fc-eee7-4273-899c-23c60c72cb1a",
    "subject": {
        "reference": "Patient/a26c74d5-3115-4a35-b034-722dfd2603f5"
    },
    "orderer": {
        "reference": "923cad32-88e6-4ab0-a4cc-5052895b29d9"
    },
    "encounter": {
        "reference": "f0ceca14-6847-4ea4-b128-7c86820da428"
    },
    "supportingInformation": [
        {
            "reference": "56350c6f-7333-4002-a622-96968b85381e"
        },
        {
            "reference": "f99b352b-524e-413c-9975-496c1643df80"
        }
    ],
    "specimen": [
        {
            "reference": "f8cd600f-f5b5-4b18-9662-18212c1935f9"
        },
        {
            "reference": "cf1dfe74-c9fb-433b-adf6-95ceecd975f9"
        }
    ],
    "status": "requested",
    "item": [
        {
            "code": {
                "extension": [
                    {
                        "url": "http://netrika.ru/diagnostic-order-financial-extension",
                        "valueCodeableConcept": {
                            "coding": [
                                {
                                    "system": "http://netrika.ru/financial",
                                    "code": "1"
                                }
                            ]
                        }
                    },
                    {
                        "url": "http://netrika.ru/diagnostic-order-insurance-extension",
                        "valueReference": {
                            "reference": "04c84a8b-8de7-400a-b9d0-53e6ce37a9bb"
                        }
                    }
                ],
                "coding": [
                    {
                        "system": "http://netrika.ru/diagnostic-order-code",
                        "code": "А09.05.032"
                    }
                ]
            }
        },
        {
            "code": {
                "extension": [
                    {
                        "url": "http://netrika.ru/diagnostic-order-financial-extension",
                        "valueCodeableConcept": {
                            "coding": [
                                {
                                    "system": "http://netrika.ru/financial",
                                    "code": "1"
                                }
                            ]
                        }
                    },
                    {
                        "url": "http://netrika.ru/diagnostic-order-insurance-extension",
                        "valueReference": {
                            "reference": "04c84a8b-8de7-400a-b9d0-53e6ce37a9bb"
                        }
                    }
                ],
                "coding": [
                    {
                        "system": "http://netrika.ru/diagnostic-order-code",
                        "code": "А09.05.033"
                    }
                ]
            }
        },
        {
            "code": {
                "extension": [
                    {
                        "url": "http://netrika.ru/diagnostic-order-financial-extension",
                        "valueCodeableConcept": {
                            "coding": [
                                {
                                    "system": "http://netrika.ru/financial",
                                    "code": "1"
                                }
                            ]
                        }
                    },
                    {
                        "url": "http://netrika.ru/diagnostic-order-insurance-extension",
                        "valueReference": {
                            "reference": "04c84a8b-8de7-400a-b9d0-53e6ce37a9bb"
                        }
                    }
                ],
                "coding": [
                    {
                        "system": "http://netrika.ru/diagnostic-order-code",
                        "code": "В03.016.006"
                    }
                ]
            }
        }
    ]
}
Specimen
Пример фрагмента Bundle для Specimen
  {
    "resourceType": "Specimen",
    "id": "f8cd600f-f5b5-4b18-9662-18212c1935f9",
    "type": {
        "coding": [
            {
                "system": "http://netrika.ru/biomaterial",
                "code": "1"
            }
        ]
    },
    "subject": {
        "reference": "Patient/a26c74d5-3115-4a35-b034-722dfd2603f5"
    },
    "collection": {
        "collectedDate": "27.05.2015 0:00:00"
    },
    "container": [
        {
            "identifier": [
                {
                    "system": "http://netrika.ru/container-type-identifier",
                    "value": "barcode111"
                }
            ],
            "type": {
                "coding": [
                    {
                        "system": "http://netrika.ru/container-type",
                        "code": "1"
                    }
                ]
            }
        }
    ]
}
Encounter
Пример фрагмента Bundle для Encounter
  {
            "resourceType": "Encounter",
            "id": "f0ceca14-6847-4ea4-b128-7c86820da428",
            "identifier": [
                {
                    "system": "http://netrika.ru/mis-case-identifier",
                    "value": "IdCaseMis"
                }
            ],
            "status": "in-progress",
            "class": "ambulatory",
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://netrika.ru/encounter-type",
                            "code": "1"
                        }
                    ]
                }
            ],
            "patient": {
                "reference": "Patient/a26c74d5-3115-4a35-b034-722dfd2603f5"
            },
            "reason": [
                {
                    "coding": [
                        {
                            "system": "http://netrika.ru/reason-code",
                            "code": "1"
                        }
                    ]
                }
            ],
            "indication": [
                {
                    "reference": "71cf33b8-2eae-432d-88d5-747ef8147d0b"
                }
            ],
            "serviceProvider":{
                    "reference": "Organization/73f51084-d6ee-40d7-8e17-befc1c56303e"
            }
        }
Condition
Пример фрагмента Bundle для Condition
  {
    "resourceType": "Condition",
    "id": "64d57862-f2c2-41ef-a5cf-27f2d53569eb",
    "identifier": [
        {
            "system": "http://netrika.ru/mes",
            "value": "Стандарт первичной медико-санитарной помощи при хронической болезни почек 4 стадии"
        }
    ],
    "patient": {
        "reference": "Patient/d18b2d16-b219-4ad0-9110-42ce15d3248d"
    },
    "dateAsserted": "20.05.2015 16:26:56",
    "code": {
        "coding": [
            {
                "system": "http://netrika.ru/mkb10",
                "code": "N18.9"
            }
        ]
    },
    "category": {
        "coding": [
            {
                "system": "http://netrika.ru/condition-category",
                "code": "diagnosis"
            }
        ]
    },
    "clinicalStatus": "confirmed"
}
Observation
Пример фрагмента Bundle для Observation
  "resource": {
    "resourceType": "Observation",
    "id": "56350c6f-7333-4002-a622-96968b85381e",
    "code": {
        "coding": [
            {
                "system": "http://netrika.ru/observation-name",
                "code": "1"
            }
        ]
    },
    "valueQuantity": {
        "value": 162.5
    },
    "status": "registered"
}
Practitioner
Пример фрагмента Bundle для Practitioner
  {
    "resourceType": "Practitioner",
    "id": "923cad32-88e6-4ab0-a4cc-5052895b29d9",
    "identifier": [
        {
            "system": "http://netrika.ru/practitioner-identifier",
            "value": "IdDoctorMIS1"
        }
    ],
    "name": {
        "family": [ "Петров" ],
        "given": [ "Петр", "Петрович" ]
    },
    "practitionerRole": [
        {
            "managingOrganization": {
                "reference": "Organization/73f51084-d6ee-40d7-8e17-befc1c56303e"
            },
            "role": {
                "coding": [
                    {
                        "system": "http://netrika.ru/practitioner-role",
                        "code": "39"
                    }
                ]
            },
            "specialty": [
                {
                    "coding": [
                        {
                            "system": "http://netrika.ru/practitioner-speciality",
                            "code": "89"
                        }
                    ]
                }
            ]
        }
    ]
}
Coverage
Пример фрагмента Bundle для Coverage
  {
    "resourceType": "Coverage",
    "id": "04c84a8b-8de7-400a-b9d0-53e6ce37a9bb",
    "type": {
        "system": "http://netrika.ru/coverage-type",
        "code": "1"
    },
    "identifier": [
        {
            "system": "http://netrika.ru/polis-oms-new",
            "value": "1234567891011121",
            "assigner": {
                "display": "23807"
            }
        }
    ],
    "subscriber": {
        "reference": "Patient/a26c74d5-3115-4a35-b034-722dfd2603f5"
    }
}

Запрос заявки ($getorder)

Пример запроса
  {
   "resourceType": "Parameters",
   "parameter": [
   {
      "name": "TargetCode",
      "valueString": "bf057c5e-9c3c-491f-b3bf-d1cad3b40fe0"
   },
   {
      "name": "OrderMisID",
      "valueString": "IdOrderMis"
   }]
}

Передача результата (POST Bundle результата)

Структура запроса Bundle результата

Пример базовой структуры json-запроса для передачи результата
  {
   "resourceType": "Bundle",
   "meta": {
      "profile": ["/StructureDefinition/21f687dd-0b3b-4a7b-af8f-04be625c0201"]
   },
   "type": "transaction",
   "entry": [{
      "resource": {
         "resourceType": "OrderResponse",
         // должны быть перечислены все параметры OrderResponse
      },
      "transaction": {
         "method": "POST",  // тип операции с ресурсом
         "url": "OrderResponse"  // ресурс
      }
   },
   {
      "resource": {
         "resourceType": "Practitioner",
         "id": "9f8251f0-0507-4ee5-96cc-4c0b3cf32db1",  // GUID ресурса в Bundle, который используется в ссылках
         //должны быть перечислены все параметры Practitioner
      },
      "transaction": {
         "method": "POST",  // тип операции с ресурсом
         "url": "Practitioner"  // ресурс
      }
   },
   {
      "resource": {
         "resourceType": "DiagnosticReport",
         "id": "71cf33b8-2eae-432d-88d5-747ef8147d0b",  // GUID ресурса в Bundle, который используется в ссылках
         //должны быть перечислены все параметры DiagnosticReport
         },
      "transaction": {
         "method": "POST",  // тип операции с ресурсом
         "url": "DiagnosticReport"  // ресурс
      }
   },
   {
      "resource": {
         "resourceType": "Observation",
         "id": "64ae797c-a9ab-4fe7-9d22-9745d82d39c1",  // GUID ресурса в Bundle, который используется в ссылках
         //должны быть перечислены все параметры Observation
         },
      "transaction": {
         "method": "POST",  // тип операции с ресурсом
         "url": "Observation"  // ресурс
      }
   },
    // в Bundle могут быть добавлены прочие ресурсы, необходимые для передачи результата
    ]
}

Описание ресурсов, входящих в состав Bundle

OrderResponse
Пример фрагмента Bundle для OrderResponse
  {
   "resourceType": "OrderResponse",
   "identifier": [{
      "system": "http://netrika.ru/lis-identifier",
      "value": "IdOrderLis1"
   }],
   "request": {
      "reference": "Order/c168d93b-7233-4d43-9d77-52dc01ee332f"
   },
   "date": "01.06.2015 16:26:59",
   "who": {
      "reference": "Organization/73f51084-d6ee-40d7-8e17-befc1c56303e"
   },
   "orderStatus": "completed",
   "description": "Комментарий к заказу",
   "fulfillment": [{
      "reference": "74f1366c-926d-49a9-8d51-417156691db4"
   },
   {
      "reference": "4f6a30fb-cd3c-4ab6-8757-532101f72065"
   }]
}
DiagnosticReport
Пример фрагмента Bundle для DiagnosticReport
  {
   "resourceType": "DiagnosticReport",
   "id": "74f1366c-926d-49a9-8d51-417156691db4",
   "name": {
      "coding": [{
         "system": "http://netrika.ru/diagnostic-report-code",
         "code": "A09.05.032"
      }]
   },
   "status": "final",
   "issued": "01.06.2015 0:00:00",
   "subject": {
      "reference": "Patient/a26c74d5-3115-4a35-b034-722dfd2603f5"
   },
   "performer": {
      "reference": "3e412c44-1058-40fb-a06f-b9bb9452b39a"
   },
   "requestDetail": [{
      "reference": "DiagnosticOrder/fa946417-e236-4503-894b-5cfd5f22837a"
   }],
   "result": [{
      "reference": "4406a51e-bc6c-48e1-8d0d-e7224fda055d"
   }],
   "conclusion": "Текст заключения по услуге A09.05.032",
   "presentedForm": [{
      "data": "ZGF0YQ==",
      "hash": "aGFzaA=="
   }]
}
Observation
Пример фрагмента Bundle для Observation (передача числового результата)
  {
   "resourceType": "Observation",
   "id": "4406a51e-bc6c-48e1-8d0d-e7224fda055d",
   "code": {
      "coding": [{
         "system": "http://netrika.ru/observation-loinc",
         "code": "17861-6"
      }]
   },
   "valueQuantity": {
      "value": 2.2,
      "units" : "ммоль/л"
   },
   "comments": "Комментарии",
   "issued": "2015-06-01T16:26:59.859+03:00",
   "status": "final",
   "method": {
      "coding": [{
         "system": "http://netrika.ru/observation-method",
         "code": "Химический"
      }]
   },
   "performer": [{
      "reference": "9c1617ae-b805-475b-943c-8d6be3477043"
   }],
   "referenceRange" : [{
      "low" : {
        "value" : 2.15,
        "units" : "ммоль/л"
      },
      "high" : {
        "value" : 2.5,
        "units" : "ммоль/л"
      }
   }]
}
Пример фрагмента Bundle для Observation (передача текстового результата)
  {
   "resourceType": "Observation",
   "id": "448e8726-d2a8-4e73-ae3d-907e6c2ecb07",
   "code": {
      "coding": [{
         "system": "http://netrika.ru/observation-loinc",
         "code": "5778-6"
      }]
   },
   "comments": "Комментарии",
   "issued": "2015-06-01T16:26:59.859+03:00",
   "status": "final",
   "valueString": "светло-желтый",
   "performer": [{
      "reference": "9c1617ae-b805-475b-943c-8d6be3477043"
   }]
}
Practitioner
Пример фрагмента Bundle для Practitioner
  {
   "resourceType": "Practitioner",
   "id": "9c1617ae-b805-475b-943c-8d6be3477043",
   "identifier": [{
      "system": "http://netrika.ru/practitioner-identifier",
      "value": "IdDoctorMIS4"
   }],
   "name": {
      "family": ["Толстунова"],
      "given": ["Екатерина","Евдокимовна"]
   },
   "practitionerRole": [{
      "managingOrganization": {
         "reference": "Organization/73f51084-d6ee-40d7-8e17-befc1c56303e"
      },
      "role": {
         "coding": [{
            "system": "http://netrika.ru/practitioner-role",
            "code": "102"
         }]
      },
      "specialty": [{
         "coding": [{
            "system": "http://netrika.ru/practitioner-speciality",
            "code": "13"
         }]
      }]
   }]
}

Запрос статуса ($getstatus)

Пример запроса
  {
   "resourceType": "Parameters",
   "parameter": [
   {
      "name": "SourceCode",
      "valueString": "bf057c5e-9c3c-491f-b3bf-d1cad3b40fe0"
   },
   {
      "name": "OrderMisID",
      "valueString": "IdOrderMis"
   }]
}

Запрос результата ($getresult)

Пример запроса
  {
   "resourceType": "Parameters",
   "parameter": [
   {
      "name": "SourceCode",
      "valueString": "bf057c5e-9c3c-491f-b3bf-d1cad3b40fe0"
   },
   {
      "name": "TargetCode",
      "valueString": "bf057c5e-9c3c-491f-b3bf-d1cad3b40fe0"
   },
        {
      "name": "OrderMisID",
      "valueString": "IdOrderMis"
   }]
}

Запрос всех результатов для заданной МО ($getresults)

Пример запроса
  {
   "resourceType": "Parameters",
   "parameter": [
   {
      "name": "SourceCode",
      "valueString": "bf057c5e-9c3c-491f-b3bf-d1cad3b40fe0"
   },
   {
      "name": "StartDate",
      "valueString": "28.05.2015 0:00:00"
   }]
}

Запрос значений справочника ($expand)

Пример запроса
  {
   "resourceType": "Parameters",
   "parameter": [
   {
      "name": "system",
      "valueString": "http://netrika.ru/mkb10"
   }]
}

Поиск значения в справочнике ($lookup)

Пример запроса
  {
   "resourceType": "Parameters",
   "parameter": [
   {
      "name": "system",
      "valueString": "http://netrika.ru/mkb10"
   },
   {
      "name": "code",
      "valueString": "0101A001"
   }]
}

Валидация значения в справочнике ($validate-code)

Пример запроса
  {
   "resourceType": "Parameters",
   "parameter": [
   {
      "name": "system",
      "valueString": "http://netrika.ru/mkb10"
   },
   {
      "name": "code",
      "valueString": "0101A001"
   }]
}