Mokapen API dokumentáció

Hitelesítés

Minden API-kéréshez hordozó hozzáférési token szükséges. A token megszerzésének módja az alkalmazás típusától függ (nyilvános vagy privát).

Fejléchordozó token

Minden API-kérelemben szerepeltesse a hozzáférési tokent:

Engedélyezés: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...
Elfogadás: application/json

Nyilvános alkalmazás — OAuth 2.0 engedélyezési kód

A nyilvános alkalmazások a szabványos OAuth 2.0 engedélyezési kódot használják.

Engedélyezési kérelem

A felhasználó átirányítása az engedélyezési végpontra:

Töltsd le a https://mokapen.com/oauth/authorize

Lekérdezési paraméterek:
  client_id (kötelező) Az Ön ügyfél-azonosítója
  redirect_uri (kötelező) Meg kell egyeznie egy regisztrált átirányítási URL-lel
  válasz_típusa (kötelező) "code" kell legyen
  hatókör (kötelező) Szóközzel elválasztott körök, pl. feladatok.feladatok olvasása.írás
  állapot (kötelező) Véletlenszerű érték (min. 16 karakter) anti-CSRF
Az engedélyezés során a felhasználó kiválasztja a szervezetet, amelyhez hozzáférést kíván adni. A kiadott hozzáférési token ehhez a szervezethez van kötve.

Példa engedélyezési kérelem (PHP)

$params = [
    'client_id' => 'YOUR_CLIENT_ID',
    'redirect_uri' => 'https://example.com/oauth/callback',
    'response_type' => 'kód',
    'scope' => 'tasks.read task.write',
    'state' => bin2hex(random_bytes(8)),
];

$url = 'https://mokapen.com/oauth/authorize?' . http_build_query($params);
header('Hely: ' . $url);

Engedélyezési kód cseréje tokenekhez

A jóváhagyást követően a Mokapen a redirect_uri címre irányít át a code paraméterrel. Cseréld tokenre:

POST https://mokapen.com/oauth/token
Tartalom típusa: Application/x-www-form-urlencoded

grant_type=engedélyezési_kód
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_TITKOS
&redirect_uri=https://example.com/oauth/callback
&code=AUTHORIZATION_CODE_FROM_CALLBACK

Példa token válaszra

{
  "token_type": "Tulajdonos",
  "expires_in": 31536000,
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...",
  "refresh_token": "def50200...",
  "organization_id": 849,
  "szervezet_neve": "Az Ön szervezete"
}
A válasz organization_id mezője a felhasználó által az engedélyezés során kiválasztott szervezetet tükrözi. Használja ugyanazt az azonosítót az API URL-ekben (lásd: Szervezetek).

Token frissítése

Amikor a hozzáférési token lejár, kérjen újat a frissítési tokennel:

POST https://mokapen.com/oauth/token
Tartalom típusa: Application/x-www-form-urlencoded

grant_type=refresh_token
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_TITKOS
&refresh_token=YOUR_REFRESH_TOKEN

Privát alkalmazások — Ügyfél hitelesítő adatai

A privát alkalmazások nem igényelnek OAuth-átirányítást. A Fejlesztői irányítópulton nyissa meg az alkalmazást, lépjen a Credentials elemre, és kattintson a Token generálása elemre.

A token a client_credentials engedéllyel jön létre, és a munkamenetben aktív szervezethez kapcsolódik. Tárolja biztonságosan, és ne ossza meg nyilvánosan.

POST https://mokapen.com/oauth/token
Tartalom típusa: Application/x-www-form-urlencoded

grant_type=client_credentials
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_TITKOS
&scope=tasks.read feladatok.write contacts.read
&organization_id=849
Privát alkalmazásjogkivonat kérésekor mindig adja meg a organization_id értéket. A szervezeti azonosítót a rendszer a tokenben menti, és a következő API-hívásoknál ellenőrzi.

Első API kérés

$url = 'https://mokapen.com/api/v1/849/contacts';
$token = 'YOUR_ACCESS_TOKEN';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => igaz,
    CURLOPT_HTTPHEADER => [
        'Engedélyezés: birtokos' . $token,
        "Accept: application/json",
    ],
]);
$válasz = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

Segítségre van szüksége?