Source: https://ailoot.ai/docs/el/cabinet/auth/
Canonical: https://ailoot.ai/docs/el/cabinet/auth/
Language: el

[API πίνακα ελέγχου](https://ailoot.ai/docs/el/) 

# Σύνδεση και συνεδρίες

[Markdown](https://ailoot.ai/docs/el/cabinet/auth/index.md)

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

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

| Μέθοδος και διαδρομή | Περιγραφή | Πρόσβαση |
| --- | --- | --- |
| `POST /api/v1/auth/forgot-password` | Αίτημα επαναφοράς κωδικού πρόσβασης | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/login` | Σύνδεση με email και κωδικό πρόσβασης | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/login/2fa` | Ολοκλήρωση σύνδεσης με TOTP | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/logout` | Αποσύνδεση και ανάκληση token ανανέωσης | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `GET /api/v1/auth/me` | Τρέχων χρήστης, υπόλοιπο και όρια | Token πίνακα ελέγχου |
| `POST /api/v1/auth/passkey/login/begin` | Έναρξη σύνδεσης με passkey | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/passkey/login/finish` | Ολοκλήρωση σύνδεσης με passkey | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/refresh` | Ανανέωση token | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/register` | Εγγραφή | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/reset-password` | Επαναφορά κωδικού πρόσβασης | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/revoke-all-sessions` | Ανάκληση όλων των συνεδριών | Token πίνακα ελέγχου |
| `POST /api/v1/auth/send-verify-code` | Αποστολή κωδικού επαλήθευσης | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/validate-invitation-code` | Έλεγχος πρόσκλησης | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |
| `POST /api/v1/auth/validate-promo-code` | Έλεγχος κωδικού προσφοράς | Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο |

**POST /api/v1/auth/forgot-password** — Αίτημα επαναφοράς κωδικού πρόσβασης

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

Όριο συχνότητας: 5 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/forgot-password`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `email` | `string` | ναι | required,email |
| `turnstile_token` | `string` | όχι |  |

Πρότυπο σώματος αιτήματος

```json
{
  "email": "PLACEHOLDER_EMAIL (string)",
  "turnstile_token": "PLACEHOLDER_TURNSTILE_TOKEN (string)"
}
```

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

Σχήμα αιτήματος: `ForgotPasswordRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "PLACEHOLDER_MESSAGE (string)"
  }
}
```

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/login** — Σύνδεση με email και κωδικό πρόσβασης

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

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

Όριο συχνότητας: 20 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/login`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `email` | `string` | ναι | required,email |
| `password` | `string` | ναι | required |
| `turnstile_token` | `string` | όχι |  |

Πρότυπο σώματος αιτήματος

```json
{
  "email": "PLACEHOLDER_EMAIL (string)",
  "password": "PLACEHOLDER_PASSWORD (string)",
  "turnstile_token": "PLACEHOLDER_TURNSTILE_TOKEN (string)"
}
```

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

Σχήμα αιτήματος: `LoginRequest`

## Απάντηση

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

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

Αν υπάρχουν πολλές πιθανές παραλλαγές απάντησης, τα πεδία τους παρατίθενται σε ξεχωριστά σχήματα· δεν πρέπει να συνδυάζονται σε ένα αντικείμενο.

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/login/2fa** — Ολοκλήρωση σύνδεσης με TOTP

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

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

Όριο συχνότητας: 20 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/login/2fa`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `temp_token` | `string` | ναι | required |
| `totp_code` | `string` | ναι | required,len=6 |

Πρότυπο σώματος αιτήματος

```json
{
  "temp_token": "PLACEHOLDER_TEMP_TOKEN (string)",
  "totp_code": "PLACEHOLDER_TOTP_CODE (string)"
}
```

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

Σχήμα αιτήματος: `Login2FARequest`

## Απάντηση

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

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

Αν υπάρχουν πολλές πιθανές παραλλαγές απάντησης, τα πεδία τους παρατίθενται σε ξεχωριστά σχήματα· δεν πρέπει να συνδυάζονται σε ένα αντικείμενο.

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/logout** — Αποσύνδεση και ανάκληση token ανανέωσης

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

POST`/api/v1/auth/logout`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `refresh_token` | `string` | όχι | ; Προαιρετικά: ανάκληση του συγκεκριμένου token ανανέωσης |

Πρότυπο σώματος αιτήματος

```json
{
  "refresh_token": "PLACEHOLDER_REFRESH_TOKEN (string)"
}
```

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

Σχήμα αιτήματος: `LogoutRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "PLACEHOLDER_MESSAGE (string)"
  }
}
```

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**GET /api/v1/auth/me** — Τρέχων χρήστης, υπόλοιπο και όρια

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

GET`/api/v1/auth/me`

Ανάγνωση· το ID προέρχεται από την προηγούμενη απάντησή σας

```bash
curl --fail-with-body "https://ailoot.ai/api/v1/auth/me" \
  -H "Authorization: Bearer $TOKEN"
```

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

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "id": "PLACEHOLDER_ID (integer)",
    "email": "PLACEHOLDER_EMAIL (string)",
    "username": "PLACEHOLDER_USERNAME (string)",
    "role": "PLACEHOLDER_ROLE (string)",
    "balance": "PLACEHOLDER_BALANCE (number)",
    "frozen_balance": "PLACEHOLDER_FROZEN_BALANCE (number)",
    "concurrency": "PLACEHOLDER_CONCURRENCY (integer)",
    "status": "PLACEHOLDER_STATUS (string)",
    "last_active_at": "PLACEHOLDER_LAST_ACTIVE_AT (string)",
    "created_at": "PLACEHOLDER_CREATED_AT (string)",
    "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
    "deleted_at": "PLACEHOLDER_DELETED_AT (string)",
    "balance_notify_enabled": "PLACEHOLDER_BALANCE_NOTIFY_ENABLED (boolean)",
    "balance_notify_threshold_type": "PLACEHOLDER_BALANCE_NOTIFY_THRESHOLD_TYPE (string)",
    "balance_notify_threshold": "PLACEHOLDER_BALANCE_NOTIFY_THRESHOLD (number)",
    "balance_notify_extra_emails": "PLACEHOLDER_BALANCE_NOTIFY_EXTRA_EMAILS (array)",
    "total_recharged": "PLACEHOLDER_TOTAL_RECHARGED (number)",
    "rpm_limit": "PLACEHOLDER_RPM_LIMIT (integer)",
    "api_keys": "PLACEHOLDER_API_KEYS (array)",
    "avatar_url": "PLACEHOLDER_AVATAR_URL (string)",
    "email_bound": "PLACEHOLDER_EMAIL_BOUND (boolean)"
  }
}
```

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

Ιδιαιτερότητες: Τα όρια δαπανών των κλειδιών (quota, quota\_used) επιστρέφονται στην απάντηση των κλειδιών και όχι στο προφίλ. Το frozen\_balance είναι δεσμευμένο ποσό και δεν πρέπει να θεωρείται διαθέσιμο υπόλοιπο.

**POST /api/v1/auth/passkey/login/begin** — Έναρξη σύνδεσης με passkey

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

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

Όριο συχνότητας: 20 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/passkey/login/begin`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `turnstile_token` | `string` | όχι |  |

Πρότυπο σώματος αιτήματος

```json
{
  "turnstile_token": "PLACEHOLDER_TURNSTILE_TOKEN (string)"
}
```

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

Σχήμα αιτήματος: `PasskeyBeginLoginRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "session_token": "PLACEHOLDER_SESSION_TOKEN (string)",
    "options": "PLACEHOLDER_OPTIONS (any)"
  }
}
```

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

Ιδιαιτερότητες: Το credential λαμβάνεται από το navigator.credentials· το session\_token από το begin. Σώμα αιτήματος Finish \<=65536 byte· η εγγραφή και η διαγραφή απαιτούν κωδικό πρόσβασης.

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/passkey/login/finish** — Ολοκλήρωση σύνδεσης με passkey

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

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

Όριο συχνότητας: 20 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/passkey/login/finish`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `session_token` | `string` | ναι | required |
| `name` | `string` | όχι |  |
| `credential` | `object` | ναι | required |

Πρότυπο σώματος αιτήματος

```json
{
  "session_token": "PLACEHOLDER_SESSION_TOKEN (string)",
  "name": "PLACEHOLDER_NAME (string)",
  "credential": "PLACEHOLDER_CREDENTIAL (object)"
}
```

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

Σχήμα αιτήματος: `PasskeyFinishRequest`

## Απάντηση

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

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

Αν υπάρχουν πολλές πιθανές παραλλαγές απάντησης, τα πεδία τους παρατίθενται σε ξεχωριστά σχήματα· δεν πρέπει να συνδυάζονται σε ένα αντικείμενο.

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

Ιδιαιτερότητες: Το credential λαμβάνεται από το navigator.credentials· το session\_token από το begin. Σώμα αιτήματος Finish \<=65536 byte· η εγγραφή και η διαγραφή απαιτούν κωδικό πρόσβασης.

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/refresh** — Ανανέωση token

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

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

Όριο συχνότητας: 30 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/refresh`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `refresh_token` | `string` | ναι | required |

Πρότυπο σώματος αιτήματος

```json
{
  "refresh_token": "PLACEHOLDER_REFRESH_TOKEN (string)"
}
```

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

Σχήμα αιτήματος: `RefreshTokenRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "access_token": "PLACEHOLDER_ACCESS_TOKEN (string)",
    "refresh_token": "PLACEHOLDER_REFRESH_TOKEN (string)",
    "expires_in": "PLACEHOLDER_EXPIRES_IN (integer)",
    "token_type": "PLACEHOLDER_TOKEN_TYPE (string)"
  }
}
```

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/register** — Εγγραφή

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

Όριο συχνότητας: 5 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/register`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `email` | `string` | ναι | required,email |
| `password` | `string` | ναι | required,min=6 |
| `verify_code` | `string` | όχι |  |
| `turnstile_token` | `string` | όχι |  |
| `promo_code` | `string` | όχι | ; Κωδικός προσφοράς εγγραφής |
| `invitation_code` | `string` | όχι | ; Κωδικός πρόσκλησης |

Πρότυπο σώματος αιτήματος

```json
{
  "email": "PLACEHOLDER_EMAIL (string)",
  "password": "PLACEHOLDER_PASSWORD (string)",
  "verify_code": "PLACEHOLDER_VERIFY_CODE (string)",
  "turnstile_token": "PLACEHOLDER_TURNSTILE_TOKEN (string)",
  "promo_code": "PLACEHOLDER_PROMO_CODE (string)",
  "invitation_code": "PLACEHOLDER_INVITATION_CODE (string)"
}
```

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

Σχήμα αιτήματος: `RegisterRequest`

## Απάντηση

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

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

Αν υπάρχουν πολλές πιθανές παραλλαγές απάντησης, τα πεδία τους παρατίθενται σε ξεχωριστά σχήματα· δεν πρέπει να συνδυάζονται σε ένα αντικείμενο.

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/reset-password** — Επαναφορά κωδικού πρόσβασης

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

Όριο συχνότητας: 10 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/reset-password`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `email` | `string` | ναι | required,email |
| `token` | `string` | ναι | required |
| `new_password` | `string` | ναι | required,min=6 |

Πρότυπο σώματος αιτήματος

```json
{
  "email": "PLACEHOLDER_EMAIL (string)",
  "token": "PLACEHOLDER_TOKEN (string)",
  "new_password": "PLACEHOLDER_NEW_PASSWORD (string)"
}
```

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

Σχήμα αιτήματος: `ResetPasswordRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "PLACEHOLDER_MESSAGE (string)"
  }
}
```

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/revoke-all-sessions** — Ανάκληση όλων των συνεδριών

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

POST`/api/v1/auth/revoke-all-sessions`

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

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "PLACEHOLDER_MESSAGE (string)"
  }
}
```

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

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/send-verify-code** — Αποστολή κωδικού επαλήθευσης

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

Όριο συχνότητας: 5 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/send-verify-code`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `email` | `string` | ναι | required,email |
| `turnstile_token` | `string` | όχι |  |

Πρότυπο σώματος αιτήματος

```json
{
  "email": "PLACEHOLDER_EMAIL (string)",
  "turnstile_token": "PLACEHOLDER_TURNSTILE_TOKEN (string)"
}
```

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

Σχήμα αιτήματος: `SendVerifyCodeRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "PLACEHOLDER_MESSAGE (string)",
    "countdown": "PLACEHOLDER_COUNTDOWN (integer)"
  }
}
```

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

Η μέθοδος αλλάζει δεδομένα. Η επανάληψη της αποστολής είναι ασφαλής μόνο όταν στη μέθοδο αναφέρεται Idempotency-Key. Αν χαθεί η απάντηση, ελέγξτε πρώτα το αποτέλεσμα (για παράδειγμα, τη λίστα κλειδιών) και έπειτα αποφασίστε αν θα επαναλάβετε το αίτημα.

**POST /api/v1/auth/validate-invitation-code** — Έλεγχος πρόσκλησης

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

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

Όριο συχνότητας: 10 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/validate-invitation-code`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `code` | `string` | ναι | required |

Πρότυπο σώματος αιτήματος

```json
{
  "code": "PLACEHOLDER_CODE (string)"
}
```

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

Σχήμα αιτήματος: `ValidateInvitationCodeRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "valid": "PLACEHOLDER_VALID (boolean)",
    "error_code": "PLACEHOLDER_ERROR_CODE (string)"
  }
}
```

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

Η μέθοδος απλώς ελέγχει τον κωδικό πρόσκλησης και δεν τον εξαργυρώνει. Μπορείτε να επαναλάβετε τον έλεγχο τηρώντας το όριο συχνότητας· το αποτέλεσμα αποτυπώνει την κατάσταση του κωδικού κατά τη στιγμή του αιτήματος.

**POST /api/v1/auth/validate-promo-code** — Έλεγχος κωδικού προσφοράς

Πρόσβαση: Χωρίς σύνδεση· οι πρόσθετοι όροι αναφέρονται στη μέθοδο

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

Όριο συχνότητας: 10 αιτήματα ανά 60 δευτερόλεπτα από μία διεύθυνση.

POST`/api/v1/auth/validate-promo-code`

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

| Το πεδίο | Τύπος | Υποχρεωτικό | Έλεγχος / περιγραφή |
| --- | --- | --- | --- |
| `code` | `string` | ναι | required |

Πρότυπο σώματος αιτήματος

```json
{
  "code": "PLACEHOLDER_CODE (string)"
}
```

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

Σχήμα αιτήματος: `ValidatePromoCodeRequest`

## Απάντηση

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

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

Σχήμα απάντησης, ενδεικτικές τιμές

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "valid": "PLACEHOLDER_VALID (boolean)",
    "bonus_amount": "PLACEHOLDER_BONUS_AMOUNT (number)",
    "error_code": "PLACEHOLDER_ERROR_CODE (string)",
    "message": "PLACEHOLDER_MESSAGE (string)"
  }
}
```

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

Η μέθοδος απλώς ελέγχει τον κωδικό προσφοράς και δεν τον εφαρμόζει στον λογαριασμό. Μπορείτε να επαναλάβετε τον έλεγχο τηρώντας το όριο συχνότητας· το αποτέλεσμα αποτυπώνει την κατάσταση του κωδικού κατά τη στιγμή του αιτήματος.

## Σύνδεση και συνεδρίες · 2FA

`POST /api/v1/auth/login` → `data`

- `data.requires_2fa === true` → [TotpLoginResponse](https://ailoot.ai/docs/el/cabinet/schemas-1/#totploginresponse) → `data.temp_token` → `POST /api/v1/auth/login/2fa` · `{"temp_token": "…", "totp_code": "…"}` → `data.access_token`
- `data.access_token` → [AuthResponse](https://ailoot.ai/docs/el/cabinet/schemas-1/#authresponse) → `Authorization: Bearer $TOKEN`

`totp_code`: `string`, `len = 6`. `temp_token ≠ access_token`. [User](https://ailoot.ai/docs/el/cabinet/schemas-1/#user)

Έχετε ερωτήσεις; Στείλτε μας το Request ID και μια περιγραφή — θα σας βοηθήσουμε να βρείτε την αιτία.[Επικοινωνία με την υποστήριξη](mailto:support@ailoot.ai)

## Ailoot · Η εταιρεία και το χαρτοφυλάκιο έργων της





Η Ailoot στηρίζεται στη συσσωρευμένη λειτουργική εμπειρία, τη μεγάλη πελατειακή βάση, τη σταθερή εξυπηρέτηση και τον συνεχή έλεγχο KPI.





Η εταιρεία και το χαρτοφυλάκιο έργων της: εκατομμύρια πελάτες· μηνιαίες πωλήσεις δισεκατομμυρίων.





Η Ailoot αξιοποιεί αυτή τη λειτουργική εμπειρία για πρόσβαση μέσω API σε λειτουργίες AI στα προϊόντα, τους πράκτορες, τις εφαρμογές και τους αυτοματισμούς των πελατών.
