Όλα τα αιτήματα API απαιτούν διακριτικό πρόσβασης φορέα. Ο τρόπος με τον οποίο λαμβάνετε το διακριτικό εξαρτάται από τον τύπο της εφαρμογής (δημόσια ή ιδιωτική).
Συμπεριλάβετε το διακριτικό πρόσβασης σε κάθε αίτημα API:
Εξουσιοδότηση: Φορέας eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...
Αποδοχή: application/json
Οι δημόσιες εφαρμογές χρησιμοποιούν την τυπική παραχώρηση κωδικού εξουσιοδότησης OAuth 2.0.
Ανακατευθύνετε τον χρήστη στο τελικό σημείο εξουσιοδότησης:
ΛΑΒΕ https://mokapen.com/oauth/authorize
Παράμετροι ερωτήματος:
client_id (απαιτείται) Το Client ID σας
redirect_uri (απαιτείται) Πρέπει να αντιστοιχεί σε καταχωρημένη διεύθυνση URL ανακατεύθυνσης
answer_type (απαιτείται) Πρέπει να είναι "κωδικός"
εμβέλεια (απαιτείται) Πεδίο εφαρμογής που χωρίζονται με χώρο, π.χ. εργασίες.διάβασμα εργασιών.γράψτε
κατάσταση (απαιτείται) Τυχαία τιμή (ελάχ. 16 χαρακτήρες) anti-CSRF
$params = [
'client_id' => 'YOUR_CLIENT_ID',
'redirect_uri' => 'https://example.com/oauth/callback',
'response_type' => 'κωδικός',
'scope' => 'tasks.read tasks.write',
'state' => bin2hex(random_bytes(8)),
];
$url = 'https://mokapen.com/oauth/authorize;' . http_build_query($params);
header('Τοποθεσία: ' . $url);
Μετά την έγκριση, το Mokapen ανακατευθύνει στο redirect_uri με την παράμετρο code. Ανταλλάξτε το με μάρκες:
ΑΝΑΡΤΗΣΗ https://mokapen.com/oauth/token
Τύπος περιεχομένου: εφαρμογή/x-www-form-urlencoded
grant_type=authorization_code
&client_id=YOUR_CLIENT_ID
&client_secret=ΣΑΣ_ΠΕΛΑΤΗΣ_ΣΑΣ
&redirect_uri=https://example.com/oauth/callback
&code=AUTHORIZATION_CODE_FROM_CALLBACK
{
"token_type": "Φορέας",
"expires_in": 31536000,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...",
"refresh_token": "def50200...",
"organization_id": 849,
"organization_name": "Ο οργανισμός σας"
}
organization_id στην απάντηση αντικατοπτρίζει τον οργανισμό που επέλεξε ο χρήστης στην εξουσιοδότηση. Χρησιμοποιήστε το ίδιο αναγνωριστικό σε διευθύνσεις URL API (δείτε Οργανισμούς).Όταν λήξει το διακριτικό πρόσβασης, ζητήστε ένα νέο με το διακριτικό ανανέωσης:
ΑΝΑΡΤΗΣΗ https://mokapen.com/oauth/token
Τύπος περιεχομένου: εφαρμογή/x-www-form-urlencoded
grant_type=refresh_token
&client_id=YOUR_CLIENT_ID
&client_secret=ΣΑΣ_ΠΕΛΑΤΗΣ_ΣΑΣ
&refresh_token=YOUR_REFRESH_TOKEN
Οι ιδιωτικές εφαρμογές δεν απαιτούν ανακατευθύνσεις OAuth. Από τον πίνακα εργαλείων προγραμματιστή, ανοίξτε την εφαρμογή, μεταβείτε στο Credentials και κάντε κλικ στο Generate Token.
Το διακριτικό δημιουργείται με την επιχορήγηση client_credentials και συνδέεται με τον οργανισμό που είναι ενεργός στη συνεδρία. Αποθηκεύστε το με ασφάλεια και μην το κοινοποιείτε δημόσια.
ΑΝΑΡΤΗΣΗ https://mokapen.com/oauth/token
Τύπος περιεχομένου: εφαρμογή/x-www-form-urlencoded
grant_type=client_credentials
&client_id=YOUR_CLIENT_ID
&client_secret=ΣΑΣ_ΠΕΛΑΤΗΣ_ΣΑΣ
&scope=tasks.read tasks.write contacts.read
&organization_id=849
organization_id όταν ζητάτε ένα διακριτικό ιδιωτικής εφαρμογής. Το αναγνωριστικό οργανισμού αποθηκεύεται στο διακριτικό και επαληθεύεται σε επόμενες κλήσεις API.$url = 'https://mokapen.com/api/v1/849/contacts';
$token = 'YOUR_ACCESS_TOKEN';
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => αληθές,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer' . $token,
'Accept: application/json',
],
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
Χρειάζεστε βοήθεια;