Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Для взаимодействия с api используется авторизация с использованием токена. Полученный токен используется далее во всех методах.

Подробнее см. стандарт jwt.io по правилам получения и "времени жизни" токена.


В песочнице необходимо запросить токен у специалистов системы Goodfin. Будет сгенерирован долгоживущий токен которым можно пользовтаться.

В действующей системе токен нужно будет получать используя метод /api/v1/oauth/token

Пример запроса для действующей системы:

POST /api/v1/oauth/token HTTP/1.1
Host: sandbox.goodfin.ru
Content-Type: application/x-www-form-urlencoded
Cookie: lng=ru
Content-Length: 80

grant_type=password&client_id=shboauthclient&username=myLogin&password=myPassword

Пример получаемого ответа:

{
   "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsiYWRhcHRlciIsImluaXE4dW5yQjEiLCJzaGIiXSwic2NvcGUiOlsicmVhZCIsIndyaXRlIl0sImV4cCI6MTU2MDUyNTIxNiwidXNlcklkIjoiZjdjODNmZTMtOTgxYS00MTllLTg1MjUtNjVlZWU1NTljNzYwIiwianRpIjoiODliN2U1MTgtN2M0Ny00NmFjLWJhMWMtODdkYWM3YjUzMzc3IiwiY2xpZW50X2lkIjoiaW5pcTh1bnJCMSJ9.Zt_Idc-Ga3LDFhWdxY03toDuVJlAwoeB_u_zlWY7nNQ",
   "token_type": "bearer",
   "expires_in": 3599,
   "scope": "read write",
   "userId": "f7c83fe3-981a-419e-8525-65eee559c760",
   "jti": "89b7e518-7c47-46ac-ba1c-87dac7b53377"
}



Для взаимодействия с системой, помимо токена авторизации, в запросе необходимо указывать контекст пользователя выполняющего запрос(определяет личный кабинет и текущую роль).  Контекст необходимо передавать в cookies "ua" либо в http-заголовке "Authorization-user-assignment" (имеет больший приоритет по сравнению со значением в cookies)
В песочнице значение userAssignment нужно запросить у специалистов системы.

В действующей системе для получения доступных контекстов необходимо вызвать метод /api/v1/user/contexts

Пример тела запроса:

{
  "fetchFields": [
    "UserAssignment",
    "Participant",
    "Subject", 
    "Company"
  ]
}

Пример получаемого ответа:

{
    "fetchFields": {
        "Company": {
            "23ce4b80-4454-4eec-b6ba-769877f4d8ad": {
                "author": "IndividualContactParticipant:75740c41-2982-4a3d-9376-c857fdd5268a",
                "baseOkved": "105",
                "companyDraft": null,
                "companySystemType": "Agent",
                "corrAddress": "23ce4b80-4454-4eec-b6ba-769877f4d8ad:21cac18f-567f-4111-851e-9629aa2ce5cb",
                "createDateTime": "2018-09-20T12:45:05.911",
                "englishName": null,
                "factAddress": "23ce4b80-4454-4eec-b6ba-769877f4d8ad:0c0dbbdb-4292-42f4-a2a4-77a22e09be8f",
                "fss": null,
                "fullName": "ООО \"Суперагент\"",
                "id": "23ce4b80-4454-4eec-b6ba-769877f4d8ad",
                "inn": "5986115901",
                "innDate": null,
                "innPlace": null,
                "kpp": "650343355",
                "legalAddress": "23ce4b80-4454-4eec-b6ba-769877f4d8ad:86d88c98-32a7-439a-a20b-2a5eab7e9adf",
                "legalType": "ORGANIZATION",
                "mainContact": null,
                "modifiedDateTime": "2018-10-01T14:52:18.22",
                "modifier": "CompanyContactParticipant:e2bfe0f8-e95b-42af-9cea-b4543391e30c",
                "ogrn": "6032301857329",
                "okato": null,
                "okfs": null,
                "okogu": null,
                "okopf": "108",
                "okpo": "00022160",
                "oktmo": null,
                "okveds": [],
                "orgType": "COM",
                "paidCapital": null,
                "pfr": null,
                "regCapital": null,
                "regDate": "2008-12-12",
                "regDocDate": null,
                "regNumber": null,
                "regOrg": "УВД Москвы",
                "regPlace": "Москва",
                "shortName": "ООО \"Суперагент\"",
                "staff": null,
                "taxSystem": "1",
                "topType": null
            }
        },
        "CompanyContactParticipant": {
            "3795f78b-5f59-4764-8089-72e17d2e9306": {
                "assignments": [
                    "964ec2ba-771d-42ed-b9eb-ebe405187867",
                    "8119027a-e7b2-4cbe-9a3f-b524f1ad02a7"
                ],
                "author": "CompanyContactParticipant:e2bfe0f8-e95b-42af-9cea-b4543391e30c",
                "comment": null,
                "company": "23ce4b80-4454-4eec-b6ba-769877f4d8ad",
                "companyContact": true,
                "createDateTime": "2022-11-01T10:58:01.036088",
                "decisionRole": null,
                "department": null,
                "draft": null,
                "endDate": null,
                "firstName": "Имя",
                "fullName": "Фамилия Имя Отчество",
                "id": "3795f78b-5f59-4764-8089-72e17d2e9306",
                "individual": false,
                "isActive": true,
                "isEdsSigner": false,
                "isMainEdsSigner": null,
                "job": null,
                "lastName": "Фамилия",
                "manager": null,
                "middleName": "Отчество",
                "modifiedDateTime": "2022-11-01T10:58:01.036088",
                "modifier": "CompanyContactParticipant:e2bfe0f8-e95b-42af-9cea-b4543391e30c",
                "participantType": "COMPANY_CONTACT",
                "priorityNumber": null,
                "sex": null,
                "startDate": null,
                "userContact": "b0fda03e-6cf1-40e7-97b6-05d65403e0c6",
                "userEmail": "test@email.com",
                "userPhone": "+79876543210",
                "verificationType": "TRUSTED_CONTACT",
                "verificationValue": "Иванов Иван Иванович"
            }
        },
        "IndividualContactParticipant": {
            "adc00383-1de8-4b07-9d95-a3651b8fd820": {
                "assignments": [
                    "110bd4d4-41b4-452a-b475-eda4896ae368"
                ],
                "author": "CompanyContactParticipant:7cb408a3-ab8f-434c-ba50-42670a0aa305",
                "companyContact": false,
                "createDateTime": "2022-11-01T10:58:50.407473",
                "firstName": "Имя",
                "fullName": "Фамилия Имя Отчество",
                "id": "adc00383-1de8-4b07-9d95-a3651b8fd820",
                "individual": true,
                "inn": null,
                "lastName": "Фамилия",
                "middleName": "Отчество",
                "modifiedDateTime": null,
                "modifier": null,
                "participantType": "INDIVIDUAL",
                "sex": null,
                "shortName": "Фамилия И.О.",
                "timezone": null,
                "userContact": "b0fda03e-6cf1-40e7-97b6-05d65403e0c6",
                "userEmail": "test@email.com",
                "userPhone": "+79876543210"
            }
        },
        "ServiceContactParticipant": {},
        "Subject": {
            "06a92cd0-1177-4ad2-9f3e-b580a1d8d943": {
                "accountType": "INDIVIDUAL",
                "categoryType": "Role",
                "id": "06a92cd0-1177-4ad2-9f3e-b580a1d8d943",
                "name": "Физическое лицо"
            },
            "3444fe9d-71a5-44c2-a540-3cdcc0d793c6": {
                "accountType": "AGENT",
                "categoryType": "Role",
                "id": "3444fe9d-71a5-44c2-a540-3cdcc0d793c6",
                "name": "Администратор компании-агента"
            },
            "dbe5e997-b977-4371-8c7f-56a2eed4e444": {
                "accountType": "CLIENT",
                "categoryType": "Role",
                "id": "dbe5e997-b977-4371-8c7f-56a2eed4e444",
                "name": "Сотрудник компании-клиента"
            }
        },
        "UserAssignment": {
            "110bd4d4-41b4-452a-b475-eda4896ae368": {
                "accountType": "INDIVIDUAL",
                "id": "110bd4d4-41b4-452a-b475-eda4896ae368",
                "subject": "06a92cd0-1177-4ad2-9f3e-b580a1d8d943"
            },
            "8119027a-e7b2-4cbe-9a3f-b524f1ad02a7": {
                "accountType": "AGENT",
                "id": "8119027a-e7b2-4cbe-9a3f-b524f1ad02a7",
                "subject": "3444fe9d-71a5-44c2-a540-3cdcc0d793c6"
            },
            "964ec2ba-771d-42ed-b9eb-ebe405187867": {
                "accountType": "CLIENT",
                "id": "964ec2ba-771d-42ed-b9eb-ebe405187867",
                "subject": "dbe5e997-b977-4371-8c7f-56a2eed4e444"
            }
        }
    },
    "result": {
        "participants": [
            "CompanyContactParticipant:3795f78b-5f59-4764-8089-72e17d2e9306",
            "IndividualContactParticipant:adc00383-1de8-4b07-9d95-a3651b8fd820"
        ],
        "userInfo": {
            "email": "test@email.com",
            "firstName": "Имя",
            "isVerifiedEmail": false,
            "isVerifiedPhone": true,
            "lastLogin": "2022-12-21T06:29:34.203226",
            "lastName": "Фамилия",
            "middleName": "Отчество",
            "phone": "+79876543210",
            "status": "ACTIVE",
            "userContact": "b0fda03e-6cf1-40e7-97b6-05d65403e0c6",
            "userName": "postman"
        }
    }
}

В качестве контекста для работы с системой в роли агента для отправки заявок необходимо использовать ID сущности UserAssignment, с соответствующим значением subject(при отправке заявок в качестве агента, subject должен быть с ролью "AGENT", в качестве клиента - "CLIENT".

  • Нет меток