τεκμηρίωση
API πίνακα ελέγχου

Κλειδιά API

Markdown

Μέθοδοι, πεδία αιτημάτων και απαντήσεις.

Πλήρης οδηγός

Η ενότητα περιλαμβάνει 5 μεθόδους. Ανοίξτε τη μέθοδο για να δείτε τους όρους πρόσβασης, τα πεδία αιτήματος και την απάντηση.

Μέθοδος και διαδρομήΠεριγραφήΠρόσβαση
GET /api/v1/keysΛίστα — κλειδιά APIToken πίνακα ελέγχου
POST /api/v1/keysΔημιουργία κλειδιού APIToken πίνακα ελέγχου
DELETE /api/v1/keys/:idΔιαγραφή — κλειδιά APIToken πίνακα ελέγχου
GET /api/v1/keys/:idΑνάκτηση με αναγνωριστικό — κλειδιά APIToken πίνακα ελέγχου
PUT /api/v1/keys/:idΤροποποίηση κλειδιού APIToken πίνακα ελέγχου
GET /api/v1/keys — Λίστα — κλειδιά API

Πρόσβαση: Token πίνακα ελέγχου

GET/api/v1/keys
Ανάγνωση· το ID προέρχεται από την προηγούμενη απάντησή σας
curl --fail-with-body "https://ailoot.ai/api/v1/keys" \
  -H "Authorization: Bearer $TOKEN"

Παράμετροι ερωτήματος

Το πεδίοΤύποςΥποχρεωτικόΈλεγχος / περιγραφή
sort_bystringόχι; από προεπιλογή: created_at
sort_orderstringόχι; από προεπιλογή: desc
searchstringόχι
statusstringόχι
pageintegerόχι; από προεπιλογή: 1; θετικό; page_size/limit <=1000
page_sizeintegerόχι; από προεπιλογή: 20; θετικό; page_size/limit <=1000
limitintegerόχι; από προεπιλογή: 20; θετικό; page_size/limit <=1000

Δεν απαιτείται σώμα αιτήματος. Στείλτε τις παραπάνω παραμέτρους στο URL.

Απάντηση

Η απάντηση JSON περιέχει code, message και data. Το περιεχόμενο του data περιγράφεται στα σχήματα παρακάτω.

Σχήματα δεδομένων απάντησης: APIKey. Τα πεδία και οι τύποι βρίσκονται στις σελίδες «Σχήματα δεδομένων».

Σχήμα απάντησης, ενδεικτικές τιμές
{
  "code": 0,
  "message": "success",
  "data": {
    "items": [
      {
        "id": "PLACEHOLDER_ID (integer)",
        "user_id": "PLACEHOLDER_USER_ID (integer)",
        "key": "PLACEHOLDER_KEY (string)",
        "name": "PLACEHOLDER_NAME (string)",
        "status": "PLACEHOLDER_STATUS (string)",
        "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
        "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
        "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
        "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
        "quota": "PLACEHOLDER_QUOTA (number)",
        "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
        "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
        "created_at": "PLACEHOLDER_CREATED_AT (string)",
        "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
        "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
        "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
        "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
        "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
        "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
        "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
        "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
        "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
        "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
        "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
        "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
        "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
        "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
        "user": "PLACEHOLDER_USER (object)"
      }
    ],
    "total": "PLACEHOLDER_TOTAL (integer)",
    "page": "PLACEHOLDER_PAGE (integer)",
    "page_size": "PLACEHOLDER_PAGE_SIZE (integer)",
    "pages": "PLACEHOLDER_PAGES (integer)"
  }
}

Ιδιαιτερότητες: Όλα τα προσωπικά δεδομένα και αντικείμενα περιορίζονται στο υποκείμενο του JWT.

Ιδιαιτερότητες: Η απάντηση περιέχει το μυστικό key· μη δημοσιεύετε πραγματικές τιμές.

POST /api/v1/keys — Δημιουργία κλειδιού API

Πρόσβαση: Token πίνακα ελέγχου

POST/api/v1/keys

Πεδία JSON / φόρμας

Το πεδίοΤύποςΥποχρεωτικόΈλεγχος / περιγραφή
namestringναιrequired
custom_keystringόχι; Προαιρετική προσαρμοσμένη τιμή κλειδιού· μπορεί να είναι null
ip_whitelistarrayόχι; Λίστα επιτρεπόμενων IP
ip_blacklistarrayόχι; Λίστα αποκλεισμένων IP
quotanumberόχι; Όριο δαπανών κλειδιού σε USD· μπορεί να είναι null
expires_in_daysintegerόχι; Διάρκεια ισχύος σε ημέρες· μπορεί να είναι null
rate_limit_5hnumberόχι; μπορεί να είναι null
rate_limit_1dnumberόχι; μπορεί να είναι null
rate_limit_7dnumberόχι; μπορεί να είναι null
Πρότυπο σώματος αιτήματος
{
  "name": "PLACEHOLDER_NAME (string)",
  "custom_key": "PLACEHOLDER_CUSTOM_KEY (string)",
  "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
  "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
  "quota": "PLACEHOLDER_QUOTA (number)",
  "expires_in_days": "PLACEHOLDER_EXPIRES_IN_DAYS (integer)",
  "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
  "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
  "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)"
}

Το PLACEHOLDER υποδηλώνει τη δική σας είσοδο και τον τύπο της. Αντικαταστήστε τις τιμές και κρατήστε μόνο τα προαιρετικά πεδία που χρειάζονται· οι συμβολοσειρές-δείκτες δεν αποστέλλονται αντί για αριθμούς, boolean, αντικείμενα ή πίνακες.

Σχήμα αιτήματος: CreateAPIKeyRequest

Απάντηση

Η απάντηση JSON περιέχει code, message και data. Το περιεχόμενο του data περιγράφεται στα σχήματα παρακάτω.

Σχήματα δεδομένων απάντησης: APIKey. Τα πεδία και οι τύποι βρίσκονται στις σελίδες «Σχήματα δεδομένων».

Σχήμα απάντησης, ενδεικτικές τιμές
{
  "code": 0,
  "message": "success",
  "data": {
    "id": "PLACEHOLDER_ID (integer)",
    "user_id": "PLACEHOLDER_USER_ID (integer)",
    "key": "PLACEHOLDER_KEY (string)",
    "name": "PLACEHOLDER_NAME (string)",
    "status": "PLACEHOLDER_STATUS (string)",
    "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
    "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
    "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
    "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
    "quota": "PLACEHOLDER_QUOTA (number)",
    "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
    "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
    "created_at": "PLACEHOLDER_CREATED_AT (string)",
    "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
    "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
    "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
    "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
    "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
    "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
    "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
    "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
    "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
    "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
    "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
    "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
    "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
    "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
    "user": "PLACEHOLDER_USER (object)"
  }
}

Ιδιαιτερότητες: Όλα τα προσωπικά δεδομένα και αντικείμενα περιορίζονται στο υποκείμενο του JWT.

Ιδιαιτερότητες: Η λειτουργία αλλάζει την κατάσταση ή συνεχίζει διαδικασία εξουσιοδότησης μίας χρήσης· το παράδειγμα περιγράφει τη σύμβαση και δεν εκτελείται.

Ιδιαιτερότητες: Υποστηρίζεται το Idempotency-Key· η επανάληψη επιστρέφει την αποθηκευμένη απάντηση με X-Idempotency-Replayed.

Ιδιαιτερότητες: Η απάντηση περιέχει το μυστικό key· μη δημοσιεύετε πραγματικές τιμές.

DELETE /api/v1/keys/:id — Διαγραφή — κλειδιά API

Πρόσβαση: Token πίνακα ελέγχου

DELETE/api/v1/keys/:id

Παράμετροι διαδρομής

Το πεδίοΤύποςΥποχρεωτικόΈλεγχος / περιγραφή
idintegerναι

Δεν απαιτείται σώμα αιτήματος.

Απάντηση

Η απάντηση JSON περιέχει code, message και data. Το περιεχόμενο του data περιγράφεται στα σχήματα παρακάτω.

Σχήμα απάντησης, ενδεικτικές τιμές
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "VALUE_FROM_RESPONSE"
  }
}

Ιδιαιτερότητες: Όλα τα προσωπικά δεδομένα και αντικείμενα περιορίζονται στο υποκείμενο του JWT.

Ιδιαιτερότητες: Η λειτουργία αλλάζει την κατάσταση ή συνεχίζει διαδικασία εξουσιοδότησης μίας χρήσης· το παράδειγμα περιγράφει τη σύμβαση και δεν εκτελείται.

Ιδιαιτερότητες: Η απάντηση περιέχει το μυστικό key· μη δημοσιεύετε πραγματικές τιμές.

GET /api/v1/keys/:id — Ανάκτηση με αναγνωριστικό — κλειδιά API

Πρόσβαση: Token πίνακα ελέγχου

GET/api/v1/keys/:id
Ανάγνωση· το ID προέρχεται από την προηγούμενη απάντησή σας
curl --fail-with-body "https://ailoot.ai/api/v1/keys/$ID" \
  -H "Authorization: Bearer $TOKEN"

Παράμετροι διαδρομής

Το πεδίοΤύποςΥποχρεωτικόΈλεγχος / περιγραφή
idintegerναι

Δεν απαιτείται σώμα αιτήματος. Στείλτε τις παραπάνω παραμέτρους στο URL.

Απάντηση

Η απάντηση JSON περιέχει code, message και data. Το περιεχόμενο του data περιγράφεται στα σχήματα παρακάτω.

Σχήματα δεδομένων απάντησης: APIKey. Τα πεδία και οι τύποι βρίσκονται στις σελίδες «Σχήματα δεδομένων».

Σχήμα απάντησης, ενδεικτικές τιμές
{
  "code": 0,
  "message": "success",
  "data": {
    "id": "PLACEHOLDER_ID (integer)",
    "user_id": "PLACEHOLDER_USER_ID (integer)",
    "key": "PLACEHOLDER_KEY (string)",
    "name": "PLACEHOLDER_NAME (string)",
    "status": "PLACEHOLDER_STATUS (string)",
    "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
    "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
    "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
    "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
    "quota": "PLACEHOLDER_QUOTA (number)",
    "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
    "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
    "created_at": "PLACEHOLDER_CREATED_AT (string)",
    "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
    "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
    "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
    "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
    "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
    "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
    "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
    "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
    "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
    "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
    "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
    "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
    "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
    "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
    "user": "PLACEHOLDER_USER (object)"
  }
}

Ιδιαιτερότητες: Όλα τα προσωπικά δεδομένα και αντικείμενα περιορίζονται στο υποκείμενο του JWT.

Ιδιαιτερότητες: Η απάντηση περιέχει το μυστικό key· μη δημοσιεύετε πραγματικές τιμές.

PUT /api/v1/keys/:id — Τροποποίηση κλειδιού API

Πρόσβαση: Token πίνακα ελέγχου

PUT/api/v1/keys/:id

Παράμετροι διαδρομής

Το πεδίοΤύποςΥποχρεωτικόΈλεγχος / περιγραφή
idintegerναι

Πεδία JSON / φόρμας

Το πεδίοΤύποςΥποχρεωτικόΈλεγχος / περιγραφή
namestringόχι
statusstringόχιomitempty,oneof=active inactive
ip_whitelistarrayόχι; Επιτρεπόμενες IP: το null δεν αλλάζει τη λίστα, ο κενός πίνακας την καθαρίζει· μπορεί να είναι null
ip_blacklistarrayόχι; Αποκλεισμένες IP: το null δεν αλλάζει τη λίστα, ο κενός πίνακας την καθαρίζει· μπορεί να είναι null
quotanumberόχι; Όριο δαπανών κλειδιού σε USD· 0 — χωρίς όριο· μπορεί να είναι null
expires_atstringόχι; Χρόνος λήξης σε μορφή ISO 8601· μπορεί να είναι null
reset_quotabooleanόχι; Μηδενισμός του χρησιμοποιημένου ποσού του ορίου δαπανών· μπορεί να είναι null
rate_limit_5hnumberόχι; μπορεί να είναι null
rate_limit_1dnumberόχι; μπορεί να είναι null
rate_limit_7dnumberόχι; μπορεί να είναι null
reset_rate_limit_usagebooleanόχι; Μηδενισμός της χρήσης των ορίων ανά χρονικό παράθυρο· μπορεί να είναι null
Πρότυπο σώματος αιτήματος
{
  "name": "PLACEHOLDER_NAME (string)",
  "status": "PLACEHOLDER_STATUS (string)",
  "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
  "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
  "quota": "PLACEHOLDER_QUOTA (number)",
  "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
  "reset_quota": "PLACEHOLDER_RESET_QUOTA (boolean)",
  "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
  "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
  "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
  "reset_rate_limit_usage": "PLACEHOLDER_RESET_RATE_LIMIT_USAGE (boolean)"
}

Το PLACEHOLDER υποδηλώνει τη δική σας είσοδο και τον τύπο της. Αντικαταστήστε τις τιμές και κρατήστε μόνο τα προαιρετικά πεδία που χρειάζονται· οι συμβολοσειρές-δείκτες δεν αποστέλλονται αντί για αριθμούς, boolean, αντικείμενα ή πίνακες.

Σχήμα αιτήματος: UpdateAPIKeyRequest

Απάντηση

Η απάντηση JSON περιέχει code, message και data. Το περιεχόμενο του data περιγράφεται στα σχήματα παρακάτω.

Σχήματα δεδομένων απάντησης: APIKey. Τα πεδία και οι τύποι βρίσκονται στις σελίδες «Σχήματα δεδομένων».

Σχήμα απάντησης, ενδεικτικές τιμές
{
  "code": 0,
  "message": "success",
  "data": {
    "id": "PLACEHOLDER_ID (integer)",
    "user_id": "PLACEHOLDER_USER_ID (integer)",
    "key": "PLACEHOLDER_KEY (string)",
    "name": "PLACEHOLDER_NAME (string)",
    "status": "PLACEHOLDER_STATUS (string)",
    "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
    "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
    "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
    "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
    "quota": "PLACEHOLDER_QUOTA (number)",
    "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
    "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
    "created_at": "PLACEHOLDER_CREATED_AT (string)",
    "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
    "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
    "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
    "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
    "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
    "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
    "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
    "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
    "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
    "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
    "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
    "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
    "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
    "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
    "user": "PLACEHOLDER_USER (object)"
  }
}

Ιδιαιτερότητες: Όλα τα προσωπικά δεδομένα και αντικείμενα περιορίζονται στο υποκείμενο του JWT.

Ιδιαιτερότητες: Η λειτουργία αλλάζει την κατάσταση ή συνεχίζει διαδικασία εξουσιοδότησης μίας χρήσης· το παράδειγμα περιγράφει τη σύμβαση και δεν εκτελείται.

Ιδιαιτερότητες: Η απάντηση περιέχει το μυστικό key· μη δημοσιεύετε πραγματικές τιμές.

Ιδιαιτερότητες: Όσο υπάρχουν μη ολοκληρωμένα αιτήματα με δέσμευση για το κλειδί, το όριο δαπανών του δεν μπορεί να μειωθεί ή να μηδενιστεί. Στείλτε μόνο τα πεδία που αλλάζετε.

Έχετε ερωτήσεις; Στείλτε μας το Request ID και μια περιγραφή — θα σας βοηθήσουμε να βρείτε την αιτία.Επικοινωνία με την υποστήριξη