Это руководство проведет вас через отдельные шаги по настройке и тестированию веб-перехватчиков на ORCID записи.
Уведомления об изменении веб-перехватчиков ORCID функция премиум-члена, которая позволяет приложениям получать информацию, когда общедоступные данные в ORCID записывать изменения. Эта функция позволяет премиум-членам оставаться в курсе новой информации или даже запускать события в своих собственных системах в зависимости от активности. Обратите внимание, что фактический обмен данными основан на уровнях конфиденциальности, установленных ORCID iD владелец и разрешения, которые физическое лицо предоставило членской организации.
Используя API и учетные данные своего клиента API, вы можете зарегистрировать URL-адрес обратного вызова для каждого ORCID iD что вы смотрите, и мы будем уведомлять этот URL обратного вызова, когда изменения произойдут в ORCID записи.
Получите токен доступа к веб-перехватчику
Чтобы использовать функцию веб-перехватчика, вам необходимо сгенерировать токен доступа, который позволяет создавать веб-перехватчики. Этот процесс нужно выполнить только один раз, затем один и тот же токен доступа можно использовать для создания веб-перехватчиков на нескольких ORCID Records.
Любой премиум-участник может получить токен доступа «/webhook». Один токен можно использовать для регистрации веб-перехватчиков для нескольких записей. Чтобы получить токен, вы звоните в ORCID Конечная точка токена API.
Этот процесс часто называют потоком OAuth для учетных данных клиента или двухэтапным OAuth.
Ниже приведен пример вызова для получения токена доступа - замените заполнители своими учетными данными (обязательно удалите скобки).
curl -i -L -H "Accept: application/json"
-d "client_id=(your client ID)"
-d "client_secret=(your client secret)"
-d "scope=/webhook"
-d "grant_type=client_credentials"
"https://sandbox.orcid.org/oauth/token"
Затем вам будет возвращен токен доступа, подобный приведенному ниже.
{"access_token":"5eb23750-1e19-47a3-b6f6-26635c34e8ee",
"token_type":"bearer",
"refresh_token":"c7d3d5fd-e4c0-4825-89f2-7cfb4a1cf01e",
"expires_in":631138518,
"scope":"/webhook"}
Зарегистрируйте веб-перехватчик
Как только вы получите токен доступа к веб-перехватчикам, вы сможете начать регистрацию веб-перехватчиков. Вы можете зарегистрировать веб-перехватчик на ORCID iD без разрешения пользователей, поскольку функция просматривает только общедоступные данные, доступные пользователям ORCID записи.
Премиум-члены могут зарегистрировать Webhooks против любого ORCID запись в реестре. Шаги:
Кодировать URL
URL-кодируйте нужный URL ORCID для вызова при обновлении записи пользователя. Например, следующий URL-адрес:
https://nowhere2.com/0000-0002-7465-2162/updated
становится
https%3A%2F%2Fnowhere2.com%2F0000-0002-7465-2162%2Fupdated
Создайте URL
Создайте полный URL-адрес для ORCID Вызов API, начинающийся с URL-адреса ORCID запись, затем добавление ‚√∫/webhook‚√π и URL, который вы хотите вызвать. Так что это должно выглядеть как https://api.sandbox.orcid.org/{ORCID} / webhook / {URL-ENCODED-WEBHOOK-URL}
Например, используя указанный выше URL-адрес веб-перехватчика и ORCID iD 0000-0002-7465-2162, полный URL:
https://api.sandbox.orcid.org/0000-0002-7465-2162/webhook/https%3A%2F%2Fnowhere2.com%2F0000-0002-7465-2162%2Fupdated
Зарегистрируйте веб-перехватчик
Используйте свои веб-перехватчики, токен доступа, чтобы зарегистрировать свой веб-перехватчик против пользователя. ORCID записывать. Вам необходимо использовать HTTP-запрос PUT, но вы не должны ничего включать в тело запроса.
URL= https://api.sandbox.orcid.org/0000-0002-7465-2162/webhook/https%3A%2F%2Fnowhere2.com%2F0000-0002-7465-2162%2Fupdatedn HEADER: Accept: application/json HEADER: Authorization: Bearer [Your access token]n HEADER: Content-Length: 0n METHOD: PUT
Ответ должен быть 201, но если обратный вызов уже существует, то ответ будет 204.
HTTP/1.1 201nServer: nginx/1.1.19nConnection: keep-alive Location: https://api.sandbox.orcid.org/0000-0002-7465-2162/webhook/https%3A%2F%2Frequestb.in%2Fz57lzcz5
Прием вызова веб-перехватчика
После регистрации URL-адреса веб-перехватчика вы получите обратный вызов, когда пользователь ORCID запись обновлена. Уведомления о подключении отправляются каждые пять минут, чтобы избежать многократных вызовов за один сеанс пользователя.
Команда ORCID Реестр выполнит следующий HTTP-вызов при обновлении записи. Запрос использует метод HTTP POST, но тело запроса пустое.
curl -v -X POST https://nowhere2.com/0000-0002-7253-3645/updated
Ваш сервер должен отвечать стандартными кодами ответа HTTP. Итак, если вызов был успешным, вы должны вернуть 204 No Content.
HTTP/1.1 204 No Content
Любой код ответа 2xx означает, что вызов был успешным. Если вы вернете код, отличный от 2xx, мы повторим звонок через пять минут.
Отмена регистрации веб-перехватчика
Вы можете отменить регистрацию веб-перехватчика из ORCID iD если вы больше не хотите синхронизировать данные в вашей собственной системе с этим конкретным ORCID.
URL-адрес для отмены регистрации веб-перехватчика такой же, как и для регистрации. Однако вам необходимо использовать метод HTTP DELETE.
URL= https://api.sandbox.orcid.org/0000-0002-7465-2162/webhook/https%3A%2F%2Fnowhere2.com%2F0000-0002-7465-2162%2Fupdated
HEADER: Authorization: Bearer [Your access token]
HEADER: Content-Length: 0
METHOD: DELETE
Ответ должен быть 204 No Content
.
HTTP/1.1 204 No Content
Server: Apache-Coyote/1.1
Date: Fri, 05 Apr 2013 12:49:17 GMT