Tüm API istekleri bir Taşıyıcı erişim jetonu gerektirir. Belirteci nasıl alacağınız uygulamanın türüne (genel veya özel) bağlıdır.
Erişim belirtecini her API isteğine ekleyin:
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...
Accept: application/json
Herkese açık uygulamalar standart OAuth 2.0 yetkilendirme kodu tahsisini kullanır.
Kullanıcıyı yetkilendirme uç noktasına yönlendirin:
GET https://mokapen.com/oauth/authorize
Query parameters:
client_id (required) Your Client ID
redirect_uri (required) Must match a registered redirect URL
response_type (required) Must be "code"
scope (required) Space-separated scopes, e.g. tasks.read tasks.write
state (required) Random value (min. 16 chars) to prevent CSRF
$params = [
'client_id' => 'YOUR_CLIENT_ID',
'redirect_uri' => 'https://example.com/oauth/callback',
'response_type' => 'code',
'scope' => 'tasks.read tasks.write',
'state' => bin2hex(random_bytes(8)),
];
$url = 'https://mokapen.com/oauth/authorize?' . http_build_query($params);
header('Location: ' . $url);
Onaylandıktan sonra Mokapen, code parametresiyle redirect_uri adresinize yönlendirme yapar. Jetonlarla değiştirin:
POST https://mokapen.com/oauth/token
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_SECRET
&redirect_uri=https://example.com/oauth/callback
&code=AUTHORIZATION_CODE_FROM_CALLBACK
{
"token_type": "Bearer",
"expires_in": 31536000,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...",
"refresh_token": "def50200...",
"organization_id": 849,
"organization_name": "Your Organization"
}
organization_id alanı, kullanıcı tarafından yetkilendirmede seçilen kuruluşu yansıtır. API URL'lerinde aynı kimliği kullanın (bkz. Kuruluşlar).Erişim belirtecinin süresi dolduğunda yenileme belirteciyle yenisini isteyin:
POST https://mokapen.com/oauth/token
Content-Type: application/x-www-form-urlencoded
grant_type=refresh_token
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_SECRET
&refresh_token=YOUR_REFRESH_TOKEN
Özel uygulamalar OAuth yönlendirmelerine ihtiyaç duymaz. Geliştirici kontrol panelinden uygulamayı açın, Kimlik Bilgileri seçeneğine gidin ve Generate Token seçeneğine tıklayın.
Belirteç, client_credentials hibesiyle oluşturulur ve oturumda aktif olan kuruluşa bağlanır. Güvenli bir şekilde saklayın ve kamuya açık olarak paylaşmayın.
POST https://mokapen.com/oauth/token
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_SECRET
&scope=tasks.read tasks.write contacts.read
&organization_id=849
organization_id kodunu iletin. Kuruluş kimliği belirtece kaydedilir ve sonraki API çağrılarında doğrulanır.$url = 'https://mokapen.com/api/v1/849/contacts';
$token = 'YOUR_ACCESS_TOKEN';
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $token,
'Accept: application/json',
],
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
Yardıma mı ihtiyacınız var?