POST /representatives

Метод позволяет создать представителя. Созданный представитель содержит связь между двумя субъектами, которая определяет, что один субъект выражает интересы другого, на основании определенных полномочий.

Заголовки

Название Описание
Content-Type Тип контента
Authorization Заголовок авторизации

Content-Type

Допустимые значения Content-Type:

  • application/json

Тело запроса

Название Тип Формат Обязательность Описание
principal object Subject true Субъект, права которого выражает представитель
agent object Subject true Представитель, который выражает интересы субъекта
representativeType string RepresentativeType true Вид представительства
post string ^\w{1,60}$ false Должность. Обязательна для заполнения, если субъект юридическое лицо
authority object Authority true Описание полномочий представителя

При создании представителя:

  • в principal указываем только идентификатор субъекта subjectId;
  • в agent указываем только идентификатор субъекта, который является представителем subjectId. Представителем должен быть субъект с типом физическое лицо.

Связь между субъектами уникальна. Для субъекта principal и его представителя agent можно создать только одно представительство.

Примечание

Если представитель создается для пары физических лиц, то при перемещении идентификаторов субъекта и представителя местами можно создать новое представительство.

Например:

Если уже был создан представитель, где субъектом principal является субъект с идентификаторм 70f78249-dc69-450f-ab38-19974a310020, а представителем agent субъект с идентификатором 3a8cf2b8-ee9e-47ca-9ff9-75efced2d52e:

 {
   "principal":
   {
       "subjectId": "70f78249-dc69-450f-ab38-19974a310020"
   },
   "agent":
   {
     "subjectId": "3a8cf2b8-ee9e-47ca-9ff9-75efced2d52e"  
   }
   ....
}

То можно создать представителя "наоборот", где субъектом principal является субъект с идентификаторм 3a8cf2b8-ee9e-47ca-9ff9-75efced2d52e, а представителем agent субъект с идентификатором 70f78249-dc69-450f-ab38-19974a310020.

  {
    "principal":
    {
        "subjectId": "3a8cf2b8-ee9e-47ca-9ff9-75efced2d52e"
    },
    "agent":
    {
      "subjectId": "70f78249-dc69-450f-ab38-19974a310020"  
    }
    ....
 }

Все субъекты должны быть предварительно созданы методом POST /subjects.

Пример

  POST /entity/v1/representatives
  Content-Type: Application/json
  Authorization: ReestroAuth apiKey=235dc85c-f7f9-4dc0-8bbf-dad9e0185afd&portal.orgid=1748b89b-7d34-4d47-b479-b06b40ab1a30
{
  "principal":
  {
    "subjectId": "7e49b2a0-85d8-11e9-8f14-c5cc962d49b8"
  },
  "agent":
  {
    "subjectId": "db7d6890-85d8-11e9-8f14-c5cc962d49b8"  
  },
    "post": "новая должность",
    "representativeType": "Authorized",
    "authority":
  {
        "confirmingDocument":
    {
      "documentId": "f0c3abda-9766-40fe-a7a8-d59abd358516",
        "documentInfo":
        {
        "documentType": "558502029900",
        "number": "2018/12/155",
        "issueDate": "2018-12-04"
        },
        "content":
        {
        "contentInfo":
        {
          "contentId": "4f52ec30-85da-11e9-ac24-c5cc962d49b8",
          "contentType": "pdf",
          "md5": "dda2aeb7a32a1b798b8f3440fd2e16eb"
        },
        "signatures":
        [
          {
            "contentId": "7ccaa1d0-85da-11e9-ac24-c5cc962d49b8",
            "contentType": "sig",
            "md5": "dda2aeb7a32a1b798b8f3440fd2e16eb"
          }
        ]
            }
    }
    }
}

Ответы

201

Тело ответа

Субъект успешно создан. В теле ответа содержится описание представителя Representative.

Пример ответа

  HTTP 201
  Content-Type: Application/json
{
    "principal": {
        "subjectId": "7e49b2a0-85d8-11e9-8f14-c5cc962d49b8",
        "organization": {
            "name": "ООО Рога и Копыта",
            "kpp": "741501001",
            "regDate": "2018-09-04",
            "address": {
                "structuralAddress": {
                    "region": "54",
                    "city": {
                        "name": "Новосибирск",
                        "abbreviation": "г"
                    },
                    "street": {
                        "name": "Челюскинцев",
                        "abbreviation": "ул"
                    },
                    "house": {
                        "name": "14",
                        "abbreviation": "д"
                    },
                    "okato": "50401368000",
                    "oktmo": "50701000001",
                    "postalCode": "630004",
                    "kladr": "54000001000150600"
                }
            },
            "nativeOrgParams": {
                "ogrn": "1047409501446",
                "inn": "7420008319"
            }
        }
    },
    "agent": {
        "subjectId": "db7d6890-85d8-11e9-8f14-c5cc962d49b8",
        "person": {
            "name": "Иванов",
            "surname": "Иван",
            "patronymic": "Иванович",
            "dateBirth": "2018-01-01",
            "phone": "79999999999",
            "email": "imya@yandex.ru",
            "birthPlace": "Город",
            "snils": "000-000-000 53",
            "gender": "Female",
            "identityDocument": {
                "documentType": "008001001000",
                "number": "123456",
                "series": "1111",
                "issueDate": "2018-12-12",
                "issuer": {
                    "issuerCode": "123-123",
                    "issuerName": "Орган власти"
                }
            },
            "citizenship": "848000000643",
            "address": {
                "structuralAddress": {
                    "region": "54",
                    "city": {
                        "name": "Новосибирск",
                        "abbreviation": "г"
                    },
                    "street": {
                        "name": "Челюскинцев",
                        "abbreviation": "ул"
                    },
                    "house": {
                        "name": "14",
                        "abbreviation": "д"
                    },
                    "okato": "50401368000",
                    "oktmo": "50701000001",
                    "postalCode": "630004",
                    "kladr": "54000001000150600"
                }
            },
            "inn": "121212121212"
        }
    },
    "representativeType": "Authorized",
    "post": "новая должность",
    "authority": {
        "confirmingDocument": {
            "documentId": "f0c3abda-9766-40fe-a7a8-d59abd358516",
            "documentInfo": {
                "documentType": "558502029900",
                "number": "2018/12/155",
                "issueDate": "2018-12-04"
            },
            "content": {
                "contentInfo": {
                    "contentId": "4f52ec30-85da-11e9-ac24-c5cc962d49b8",
                    "contentType": "pdf",
                    "md5": "DDA2AEB7A32A1B798B8F3440FD2E16EB"
                },
                "signatures": [
                    {
                        "contentId": "7ccaa1d0-85da-11e9-ac24-c5cc962d49b8",
                        "contentType": "sig",
                        "md5": "DDA2AEB7A32A1B798B8F3440FD2E16EB"
                    }
                ]
            }
        }
    }
}

400

Ошибки валидации запроса. В теле ответа содержится описание ошибки Error. Для данного метода возможны следующие ошибки:

Код ошибки Описание Содержимое контекста
AbsenceOfRequiredField Не указано одно из обязательных полей
WrongFieldValue Значение поля не соответствует требуемому формату. Поле, формат которого не соответствует, указано в описании ошибки в message
DuplicatedRepresentative Представительство для указанной пары субъектов уже было создано -
WrongAgentType В качестве представителя agent указан субъект с типом юридическое лицо -
UnexistentSubject Не удалось найти указанного субъекта Идентификатор субъекта, которого не удалось найти
BigContentSize Размер контента в доверенности превышает 10 мб Описание неправильного контента ContetnIfo
UnsupportedContentType Указан контент, формат которого не поддерживается Описание неправильного контента ContetnIfo
UnexistentContent Не удалось найти контент в базе по указанному идентификатору Описание ненайденного контента ContetnIfo

Пример ответа

  HTTP 400
  Content-Type Application/json
  {
      "code": "validation",
      "message": "Failed to validate request",
      "target": "api"
      "errors":
      [
        {
          "code": "DuplicatedRepresentative",
          "message": "Representative for principal {} and agent is already existed",
          "target": "EntityApi"
        }
      ]
  }

401

Ошибка авторизации: пользователь не авторизован

403

Ошибка аутентификации: пользователь не имеет доступа к ресурсам организации, которая указана в заголовке авторизации

415

В заголовке Content-Type указан тип контента, который не поддерживается для данного метода