Туторіал

Базовий запит

Для того щоб отримати інформацію з Єдиного Державного реєстру за допомогою ЄДРПОУ Вам необхідно зробити запит до точки входу api/1.0/verify, передаючи даний ЄДРПОУ як GET параметр:

GET /api/1.0/verify?id=14360570 HTTP/1.0
Authorization: Basic cGxhdGZvcm06cGxhdGZvcm0=
Host: api-sandbox.openprocurement.org

Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
  "meta": {
    "sourceDate": "2017-04-25T11:56:36+00:00"
  },
  "data": [
    {
      "registrationStatusDetails": "зареєстровано",
      "x_edrInternalId": 2842335,
      "registrationStatus": "registered",
      "identification": {
        "url": "https://zqedr-api.nais.gov.ua/1.0/subjects/2842335",
        "schema": "UA-EDR",
        "id": "14360570",
        "legalName": "АКЦІОНЕРНЕ ТОВАРИСТВО КОМЕРЦІЙНИЙ БАНК \"ПРИВАТБАНК\""
      }
    }
  ]
}

Відповідь складається з наступних полів: x_edrInternalId, registrationStatusDetails, registrationStatus, identification.schema, identification.id, identification.legalName, identification.url.

  • x_edrInternalId - унікальний ідентифікатор суб’єкта ,

  • registrationStatusDetails - текстове відображення стану суб’єкта(укр),

  • registrationStatus - текстове відображення стану суб’єкта,

  • identification.schema - “UA-EDR”
  • identification.id - ЄДРПОУ; якщо суб’єкт - фізична особа підприємець - замість ІПНа система поверне десять нулів, бо ці дані є конфіденційною інформацією,

  • identification.legalName - назва,

  • identification.url - посилання на екземпляр з деталізованою інформацію.

Також відповідь містить поле meta.sourceDate - дата отримання інформації від ЄДР API.

Запит з індивідуальним податковим номером

Якщо Вам необхідно отримати інформацію для фізичних осіб-підприємців тоді необхідно відправити запит з ІПН:

GET /api/1.0/verify?id=1234567891 HTTP/1.0
Authorization: Basic cGxhdGZvcm06cGxhdGZvcm0=
Host: api-sandbox.openprocurement.org

Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
  "meta": {
    "sourceDate": "2017-04-25T11:56:36+00:00"
  },
  "data": [
    {
      "registrationStatusDetails": "зареєстровано",
      "x_edrInternalId": 2842335,
      "registrationStatus": "registered",
      "identification": {
        "url": "https://zqedr-api.nais.gov.ua/1.0/subjects/2842335",
        "schema": "UA-EDR",
        "id": "1234567891",
        "legalName": "АКЦІОНЕРНЕ ТОВАРИСТВО КОМЕРЦІЙНИЙ БАНК \"ПРИВАТБАНК\""
      }
    }
  ]
}

Помилки

Відповідь на невдалий запит містить список з текстовим відображенням помилками, коду помилки в тілі відповіді та статусу.

API повертає таку відповідь, коли вичерпано обмеження запитів до ресурсу:

GET /api/1.0/verify?id=14360570 HTTP/1.0
Authorization: Basic cGxhdGZvcm06cGxhdGZvcm0=
Host: api-sandbox.openprocurement.org

Response: 429 Too Many Requests
Content-Type: application/json; charset=UTF-8
Retry-After: 26
{
  "status": "error",
  "errors": [
    {
      "description": [
        {
          "message": "Retry request after 26 seconds."
        }
      ],
      "name": "data",
      "location": "body"
    }
  ]
}

Відповідь матиме відповідний текст та час, через який сплине це обмеження.

Коли даний ЄДРПОУ (ІПН або серія на номер паспорту) не знайдений, відповідь містить повідомлення EDRPOU not found.

GET /api/1.0/verify?id=123 HTTP/1.0
Authorization: Basic cGxhdGZvcm06cGxhdGZvcm0=
Host: api-sandbox.openprocurement.org

Response: 404 Not Found
Content-Type: application/json; charset=UTF-8
{
  "status": "error",
  "errors": [
    {
      "description": [
        {
          "meta": {
            "sourceDate": "2017-04-25T11:56:36+00:00"
          },
          "error": {
            "errorDetails": "Couldn't find this code in EDR.",
            "code": "notFound"
          }
        }
      ],
      "name": "data",
      "location": "body"
    }
  ]
}

Якщо GET-параметр code або passport відсутній в запиті, то ЕДР-проксі поверне наступну помилку:

GET /api/1.0/verify HTTP/1.0
Authorization: Basic cGxhdGZvcm06cGxhdGZvcm0=
Host: api-sandbox.openprocurement.org

Response: 403 Forbidden
Content-Type: application/json; charset=UTF-8
{
  "status": "error",
  "errors": [
    {
      "description": [
        {
          "message": "Wrong name of the GET parameter"
        }
      ],
      "name": "data",
      "location": "body"
    }
  ]
}

Інші помилки виникають на стороні ЕДР-проксі та можуть мати вигляд одної з наступних помилок:

GET /api/1.0/verify?id=14360570 HTTP/1.0
Authorization: Basic cGxhdGZvcm06cGxhdGZvcm0=
Host: api-sandbox.openprocurement.org

Response: 403 Forbidden
Content-Type: application/json; charset=UTF-8
{
  "status": "error",
  "errors": [
    {
      "description": [
        {
          "message": "Invalid or expired token.",
          "code": 2
        }
      ],
      "name": "data",
      "location": "body"
    }
  ]
}

або

GET /api/1.0/verify?id=14360570 HTTP/1.0
Authorization: Basic cGxhdGZvcm06cGxhdGZvcm0=
Host: api-sandbox.openprocurement.org

Response: 403 Forbidden
Content-Type: application/json; charset=UTF-8
{
  "status": "error",
  "errors": [
    {
      "description": [
        {
          "message": "Payment required.",
          "code": 5
        }
      ],
      "name": "data",
      "location": "body"
    }
  ]
}

Ці помилки не зв’язані з данними із запиту.