Mokapen API dokumentace

Autentizace

Všechny požadavky API vyžadují přístupový token nosiče. Způsob získání tokenu závisí na typu aplikace (veřejné nebo soukromé).

Token nositele záhlaví

Zahrnout přístupový token do každého požadavku API:

Autorizace: Nosič eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...
Přijmout: application/json

Veřejná aplikace — autorizační kód OAuth 2.0

Veřejné aplikace používají standardní udělení autorizačního kódu OAuth 2.0.

Žádost o autorizaci

Přesměrujte uživatele na koncový bod autorizace:

ZÍSKEJTE https://mokapen.com/oauth/authorize

Parametry dotazu:
  client_id (povinné) Vaše ID klienta
  redirect_uri (povinné) Musí odpovídat registrované adrese URL přesměrování
  response_type (povinné) Musí být "kód"
  rozsah (vyžadováno) Rozsahy oddělené mezerou, např. úkoly.číst úkoly.zapisovat
  stav (vyžadováno) Náhodná hodnota (min. 16 znaků) anti-CSRF
Během autorizace uživatel vybere organizaci, které udělí přístup. Vydaný přístupový token je svázán s touto organizací.

Příklad žádosti o autorizaci (PHP)

$params = [
    'client_id' => 'YOUR_CLIENT_ID',
    'redirect_uri' => 'https://example.com/oauth/zpětné volání',
    'response_type' => 'kód',
    'scope' => 'tasks.read tasks.write',
    'state' => bin2hex(random_bytes(8)),
];

$url = 'https://mokapen.com/oauth/authorize?' . http_build_query($params);
header('Umístění: ' . $url);

Vyměňte autorizační kód za tokeny

Po schválení se Mokapen přesměruje na váš redirect_uri s parametrem code. Vyměňte jej za tokeny:

POST https://mokapen.com/oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=autorizační_kód
&client_id=ID_VAŠEHO_KLIENTA
&client_secret=VÁŠ_KLIENT_TAJENKA
&redirect_uri=https://example.com/oauth/zpětné volání
&code=AUTHORIZATION_CODE_FROM_CALLBACK

Příklad odezvy tokenu

{
  "token_type": "Nosič",
  "expires_in": 31536000,
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...",
  "refresh_token": "def50200...",
  "id_organizace": 849,
  "organization_name": "Vaše organizace"
}
Pole organization_id v odpovědi odráží organizaci zvolenou uživatelem v autorizaci. Použijte stejné ID v URL API (viz Organizace).

Obnovit token

Když vyprší platnost přístupového tokenu, požádejte o nový s obnovovacím tokenem:

POST https://mokapen.com/oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=refresh_token
&client_id=ID_VAŠEHO_KLIENTA
&client_secret=VÁŠ_KLIENT_TAJENKA
&refresh_token=VÁŠ_REFRESH_TOKEN

Soukromé aplikace — přihlašovací údaje klienta

Soukromé aplikace nevyžadují přesměrování OAuth. Z vývojářského panelu otevřete aplikaci, přejděte na Credentials a klikněte na Generate Token.

Token je vytvořen s grantem client_credentials a je propojen s organizací aktivní v relaci. Uchovávejte jej bezpečně a nesdílejte jej veřejně.

POST https://mokapen.com/oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials
&client_id=ID_VAŠEHO_KLIENTA
&client_secret=VÁŠ_KLIENT_TAJENKA
&scope=tasks.číst úkoly.zapisovat kontakty.číst
&organization_id=849
Při žádosti o soukromý token aplikace vždy předejte id organizace. ID organizace je uloženo v tokenu a ověřeno při následných voláních rozhraní API.

První požadavek API

$url = 'https://mokapen.com/api/v1/849/contacts';
$token = 'VÁŠ_ PŘÍSTUP_TOKEN';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => pravda,
    CURLOPT_HTTPHEADER => [
        'Oprávnění: Nositel' . $token,
        'Přijmout: application/json',
    ],
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

Potřebujete pomoc?