Tento kurz vás provede jednotlivými kroky k nastavení a testování webhooků na ORCID záznam.
Oznámení o změně webhooků jsou ORCID prémiová členská funkce, která umožňuje informování aplikací, když jsou v systému Windows veřejná data ORCID zaznamenávat změny. Tato funkce umožňuje prémiovým členům zůstat v obraze o nových informacích nebo dokonce spouštět události ve svých vlastních systémech na základě aktivity. Vezměte prosím na vědomí, že skutečná výměna dat je založena na úrovních ochrany osobních údajů nastavených ORCID iD držitel a oprávnění, která jednotlivec udělil členské organizaci.
Pomocí rozhraní API a přihlašovacích údajů klienta člena API můžete zaregistrovat URL zpětného volání pro každého ORCID iD které sledujete, a my na tuto adresu URL zpětného volání upozorníme, když na serveru dojde ke změnám ORCID záznam.
Získejte přístupový token webhooků
Abyste mohli používat funkci webhook, budete muset vygenerovat přístupový token, který vám umožní vytvářet webhook. Tento proces je třeba dokončit pouze jednou, stejný přístupový token lze poté použít k vytvoření webhooků na více ORCID evidence.
Každý prémiový člen může získat přístupový token '/webhook'. Jediný token lze použít k registraci webhooků pro více záznamů. Chcete-li získat token, zavolejte na ORCID Koncový bod tokenu API.
Tento proces se často označuje jako tok OAuth pověření klienta nebo dvoufázový OAuth.
Níže je ukázkové volání k získání přístupového tokenu - zástupné symboly nahraďte svými přihlašovacími údaji (nezapomeňte odstranit závorky.)
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"
Poté vám bude vrácen přístupový token podobný následujícímu.
{"access_token":"5eb23750-1e19-47a3-b6f6-26635c34e8ee",
"token_type":"bearer",
"refresh_token":"c7d3d5fd-e4c0-4825-89f2-7cfb4a1cf01e",
"expires_in":631138518,
"scope":"/webhook"}
Zaregistrujte si webhook
Jakmile získáte přístupový token webhooků, budete moci zahájit registraci webhooků. Můžete zaregistrovat webhook proti ORCID iD bez povolení uživatelů, protože funkce sleduje pouze veřejná data, která jsou uživatelům k dispozici ORCID záznam.
Webhooky mohou prémioví členové zaregistrovat proti všem ORCID záznam v registru. Postup je následující:
Zakódujte adresu URL
URL zakódujte požadovanou adresu URL ORCID zavolat, když je uživatelův záznam aktualizován. Například následující URL:
https://nowhere2.com/0000-0002-7465-2162/updated
se stává
https%3A%2F%2Fnowhere2.com%2F0000-0002-7465-2162%2Fupdated
Vytvořte adresu URL
Vytvořte úplnou adresu URL pro ORCID Volání API počínaje adresou URL ORCID zaznamenejte a poté přidejte ‚√∫/webhook‚√π a adresu URL, kterou chcete zavolat. Mělo by to tedy vypadat jako https://api.sandbox.orcid.org / {ORCID} / webhook / {URL-ENCODED-WEBHOOK-URL}
Například pomocí výše uvedené adresy URL webhooku a ORCID iD 0000-0002-7465-2162, úplná adresa URL je:
https://api.sandbox.orcid.org/0000-0002-7465-2162/webhook/https%3A%2F%2Fnowhere2.com%2F0000-0002-7465-2162%2Fupdated
Zaregistrujte webhook
Použijte svůj přístupový token webhooků k registraci svého webhooku vůči uživateli ORCID záznam. Musíte použít požadavek HTTP PUT, ale neměli byste do těla požadavku nic zahrnout.
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
Odpověď by měla být 201, ale pokud zpětné volání již existovalo, bude odpověď 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
Příjem volání webhook
Jakmile zaregistrujete adresu URL webhooku, obdržíte zpětné volání, když bude uživatel ORCID záznam je aktualizován. Oznámení o zavěšení jsou zasílána každých pět minut, aby se zabránilo více hovorům pro jednu relaci uživatele.
Projekt ORCID Registr provede následující volání HTTP, když je záznam aktualizován. Požadavek používá metodu HTTP POST, ale tělo požadavku je prázdné.
curl -v -X POST https://nowhere2.com/0000-0002-7253-3645/updated
Váš server by měl reagovat standardními kódy odpovědí HTTP. Pokud byl hovor úspěšný, měli byste vrátit 204 Žádný obsah.
HTTP/1.1 204 No Content
Libovolný kód odpovědi 2xx znamená, že hovor byl úspěšný. Pokud vrátíte kód, který není 2xx, zkusíme hovor zkusit znovu o pět minut později.
Zrušení registrace webhooku
Z webu můžete zrušit registraci webhooku ORCID iD pokud již nechcete synchronizovat data ve vašem vlastním systému s tímto konkrétním ORCID.
Adresa URL pro zrušení registrace webhooku je stejná jako pro registraci. Musíte však použít metodu 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
Odpověď by měla být 204 No Content
.
HTTP/1.1 204 No Content
Server: Apache-Coyote/1.1
Date: Fri, 05 Apr 2013 12:49:17 GMT