POST/oauth/token
Έκδοση διακριτικού OAuth 2.0
oauth_token
Το τελικό σημείο έκδοσης διακριτικών του OAuth 2.0 (RFC 6749, ενότητα 3.2). grant_type: το authorization_code ανταλλάσσει έναν κωδικό μίας χρήσης με ένα ζεύγος διακριτικών και απαιτεί code_verifier (PKCE S256)· το refresh_token εκδίδει νέο ζεύγος για ένα διακριτικό ανανέωσης και ακυρώνει το προηγούμενο διακριτικό ανανέωσης (εναλλαγή), και η επαναχρησιμοποίηση ενός ακυρωμένου ανακαλεί ολόκληρη την αλυσίδα· το client_credentials εκδίδει διακριτικό εκ μέρους του οργανισμού, μόνο για εφαρμογή confidential, χωρίς διακριτικό ανανέωσης. Ένας πελάτης confidential ταυτοποιείται με την κεφαλίδα Authorization: Basic ή με τα πεδία client_id και client_secret· ένας δημόσιος πελάτης στέλνει μόνο το client_id. Ένα διακριτικό πρόσβασης ισχύει για 1 ώρα, ένα διακριτικό ανανέωσης για 90 ημέρες. Οι αποκρίσεις και τα σφάλματα ακολουθούν το RFC 6749, ενότητα 5, με Cache-Control: no-store. Προστέθηκε στην έκδοση 1.62.0.
Έλεγχος ταυτότητας
Δεν απαιτούνται διαπιστευτήρια.
Σώμα αιτήματος
application/x-www-form-urlencoded
Αντικείμενο: OAuthTokenRequest
grant_typestringυποχρεωτικόΕπιτρεπόμενες τιμές:
authorization_coderefresh_tokenclient_credentialscodestringΚωδικός εξουσιοδότησης (
authorization_code).redirect_uristringΤο ίδιο URI ανακατεύθυνσης με εκείνο του αιτήματος εξουσιοδότησης (
authorization_code).code_verifierstringΗ αρχική τιμή PKCE, από 43 έως 128 χαρακτήρες (
authorization_code).refresh_tokenstringΑνανέωση (
refresh_token).scopestringΕμβέλειες χωρισμένες με κενά, μόνο για περιορισμό (
refresh_token,client_credentials).client_idstringID της εφαρμογής, όταν το μυστικό δεν περνιέται στην κεφαλίδα
Authorization: Basic.client_secretstringΜυστικό πελάτη μιας εφαρμογής
confidential, όταν δεν περνιέται στην κεφαλίδαAuthorization: Basic.
Αποκρίσεις
200Τα διακριτικά εκδόθηκαν.
Κεφαλίδες απόκρισης
RateLimit-PolicyΤα όρια σε ισχύ, στη μορφή του προσχεδίου IETF
draft-ietf-httpapi-ratelimit-headers: στοιχεία χωρισμένα με κόμμα"<name>";q=<quota>;w=<window in seconds>. Τοkeyείναι ο ρυθμός αιτημάτων του κλειδιού API (η ποσόστωση είναι η ριπή, το παράθυρο είναι ο χρόνος για την πλήρη αναπλήρωσή της· για μια συνεδρία είναιuser, χωρίς διαπιστευτήριαip)· ταminute,dayκαιmonthείναι οι ποσοστώσεις του οργανισμού για το ημερολογιακό λεπτό, την ημέρα και τον μήνα σε UTC.RateLimitΤι απομένει από κάθε όριο του
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitΌριο της αυστηρότερης εγγραφής του
RateLimit-Policy(εκείνης με τα λιγότερα εναπομείναντα αιτήματα).X-RateLimit-RemainingΑιτήματα που απομένουν στο αυστηρότερο όριο.
X-RateLimit-ResetΔευτερόλεπτα έως τον μηδενισμό του αυστηρότερου ορίου.
application/json
Αντικείμενο: OAuthTokenResponse
access_tokenstringυποχρεωτικόΔιακριτικό πρόσβασης (
kbat_…) για την κεφαλίδαAuthorization: Bearer.token_typestringυποχρεωτικόΕπιτρεπόμενες τιμές:
Bearerexpires_inintegerυποχρεωτικόΔιάρκεια ισχύος του διακριτικού πρόσβασης σε δευτερόλεπτα.
refresh_tokenstringΔιακριτικό ανανέωσης (
kbrt_…)· λείπει για client credentials.scopestringυποχρεωτικόΕμβέλειες του διακριτικού, χωρισμένες με κενά.
400Σφάλμα όπως ορίζεται στο RFC 6749, ενότητα 5.2.
Κεφαλίδες απόκρισης
RateLimit-PolicyΤα όρια σε ισχύ, στη μορφή του προσχεδίου IETF
draft-ietf-httpapi-ratelimit-headers: στοιχεία χωρισμένα με κόμμα"<name>";q=<quota>;w=<window in seconds>. Τοkeyείναι ο ρυθμός αιτημάτων του κλειδιού API (η ποσόστωση είναι η ριπή, το παράθυρο είναι ο χρόνος για την πλήρη αναπλήρωσή της· για μια συνεδρία είναιuser, χωρίς διαπιστευτήριαip)· ταminute,dayκαιmonthείναι οι ποσοστώσεις του οργανισμού για το ημερολογιακό λεπτό, την ημέρα και τον μήνα σε UTC.RateLimitΤι απομένει από κάθε όριο του
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitΌριο της αυστηρότερης εγγραφής του
RateLimit-Policy(εκείνης με τα λιγότερα εναπομείναντα αιτήματα).X-RateLimit-RemainingΑιτήματα που απομένουν στο αυστηρότερο όριο.
X-RateLimit-ResetΔευτερόλεπτα έως τον μηδενισμό του αυστηρότερου ορίου.
application/json
401Μη έγκυρα διαπιστευτήρια πελάτη (`invalid_client`).
Κεφαλίδες απόκρισης
RateLimit-PolicyΤα όρια σε ισχύ, στη μορφή του προσχεδίου IETF
draft-ietf-httpapi-ratelimit-headers: στοιχεία χωρισμένα με κόμμα"<name>";q=<quota>;w=<window in seconds>. Τοkeyείναι ο ρυθμός αιτημάτων του κλειδιού API (η ποσόστωση είναι η ριπή, το παράθυρο είναι ο χρόνος για την πλήρη αναπλήρωσή της· για μια συνεδρία είναιuser, χωρίς διαπιστευτήριαip)· ταminute,dayκαιmonthείναι οι ποσοστώσεις του οργανισμού για το ημερολογιακό λεπτό, την ημέρα και τον μήνα σε UTC.RateLimitΤι απομένει από κάθε όριο του
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitΌριο της αυστηρότερης εγγραφής του
RateLimit-Policy(εκείνης με τα λιγότερα εναπομείναντα αιτήματα).X-RateLimit-RemainingΑιτήματα που απομένουν στο αυστηρότερο όριο.
X-RateLimit-ResetΔευτερόλεπτα έως τον μηδενισμό του αυστηρότερου ορίου.
application/json
Ασφαλείς επαναλήψεις
Στείλτε μια κεφαλίδα Idempotency-Key (για παράδειγμα ένα UUID) με κάθε POST και PATCH. Μια επανάληψη με το ίδιο κλειδί εντός 24 ωρών επιστρέφει την αποθηκευμένη απόκριση αντί να εκτελέσει ξανά το αίτημα.
Όρια ρυθμού
Οι αποκρίσεις περιέχουν τις κεφαλίδες RateLimit και RateLimit-Policy, καθώς και τις παλαιότερες X-RateLimit-Limit, X-RateLimit-Remaining και X-RateLimit-Reset. Μια απόκριση 429 έχει την κεφαλίδα Retry-After σε δευτερόλεπτα: περιμένετε και επαναλάβετε το αίτημα.