Source: https://ailoot.ai/docs/da/cabinet/keys/
Canonical: https://ailoot.ai/docs/da/cabinet/keys/
Language: da

[Kontrolpanelets API](https://ailoot.ai/docs/da/) 

# API-nøgler

[Markdown](https://ailoot.ai/docs/da/cabinet/keys/index.md)

Metoder, anmodningsfelter og svar.

Afsnittet indeholder 5 metoder. Åbn en metode for at se adgangsbetingelser, anmodningsfelter og svar.

| Metode og sti | Beskrivelse | Adgang |
| --- | --- | --- |
| `GET /api/v1/keys` | Liste — API-nøgler | Kontrolpanelets token |
| `POST /api/v1/keys` | Oprettelse af API-nøgle | Kontrolpanelets token |
| `DELETE /api/v1/keys/:id` | Sletning — API-nøgler | Kontrolpanelets token |
| `GET /api/v1/keys/:id` | Hentning via identifikator — API-nøgler | Kontrolpanelets token |
| `PUT /api/v1/keys/:id` | Ændring af API-nøgle | Kontrolpanelets token |

**GET /api/v1/keys** — Liste — API-nøgler

Adgang: kontrolpanelets token

GET`/api/v1/keys`

Læsning; ID hentes fra dit tidligere svar

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

## Query-parametre

| Feltet | Type | Obligatorisk | Validering / beskrivelse |
| --- | --- | --- | --- |
| `sort_by` | `string` | nej | ; som standard: created\_at |
| `sort_order` | `string` | nej | ; som standard: desc |
| `search` | `string` | nej |  |
| `status` | `string` | nej |  |
| `page` | `integer` | nej | ; som standard: 1; positiv værdi; page\_size/limit \<=1000 |
| `page_size` | `integer` | nej | ; som standard: 20; positiv værdi; page\_size/limit \<=1000 |
| `limit` | `integer` | nej | ; som standard: 20; positiv værdi; page\_size/limit \<=1000 |

Anmodningens indhold er ikke nødvendigt. Send de ovenstående parametre i URL'en.

## Svar

JSON-svaret indeholder code, message og data. Indholdet af data beskrives i skemaerne nedenfor.

Svarenes dataskemaer: `APIKey`. Felter og typer findes på siderne »Dataskemaer«.

Svarskema med illustrative værdier

```json
{
  "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)"
  }
}
```

Bemærk: Alle personoplysninger og objekter er afgrænset til JWT-subjektet.

Bemærk: Svaret indeholder den hemmelige key; offentliggør ikke rigtige værdier.

**POST /api/v1/keys** — Oprettelse af API-nøgle

Adgang: kontrolpanelets token

POST`/api/v1/keys`

## JSON- / formularfelter

| Feltet | Type | Obligatorisk | Validering / beskrivelse |
| --- | --- | --- | --- |
| `name` | `string` | ja | required |
| `custom_key` | `string` | nej | ; Valgfri egen nøgleværdi; kan være null |
| `ip_whitelist` | `array` | nej | ; Liste over tilladte IP-adresser |
| `ip_blacklist` | `array` | nej | ; Liste over blokerede IP-adresser |
| `quota` | `number` | nej | ; Nøglens forbrugsgrænse i USD; kan være null |
| `expires_in_days` | `integer` | nej | ; Gyldighedsperiode i dage; kan være null |
| `rate_limit_5h` | `number` | nej | ; kan være null |
| `rate_limit_1d` | `number` | nej | ; kan være null |
| `rate_limit_7d` | `number` | nej | ; kan være null |

Skabelon til anmodningens indhold

```json
{
  "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 angiver dit input og dets type. Erstat værdierne, og behold kun de valgfrie felter, du har brug for; strengmarkører sendes ikke i stedet for tal, boolean, objekter eller lister.

Anmodningsskema: `CreateAPIKeyRequest`

## Svar

JSON-svaret indeholder code, message og data. Indholdet af data beskrives i skemaerne nedenfor.

Svarenes dataskemaer: `APIKey`. Felter og typer findes på siderne »Dataskemaer«.

Svarskema med illustrative værdier

```json
{
  "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)"
  }
}
```

Bemærk: Alle personoplysninger og objekter er afgrænset til JWT-subjektet.

Bemærk: Handlingen ændrer tilstanden eller fortsætter en engangsautorisation; eksemplet beskriver kontrakten og udføres ikke.

Bemærk: Idempotency-Key understøttes; en gentagelse returnerer det gemte svar med X-Idempotency-Replayed.

Bemærk: Svaret indeholder den hemmelige key; offentliggør ikke rigtige værdier.

Metoden ændrer data. Genafsendelse er kun sikker, når metoden angiver Idempotency-Key. Hvis svaret går tabt, skal du først kontrollere resultatet (for eksempel nøglelisten) og derefter beslutte, om anmodningen skal sendes igen.

**DELETE /api/v1/keys/:id** — Sletning — API-nøgler

Adgang: kontrolpanelets token

DELETE`/api/v1/keys/:id`

## Stiparametre

| Feltet | Type | Obligatorisk | Validering / beskrivelse |
| --- | --- | --- | --- |
| `id` | `integer` | ja |  |

Anmodningens indhold er ikke nødvendigt.

## Svar

JSON-svaret indeholder code, message og data. Indholdet af data beskrives i skemaerne nedenfor.

Svarskema med illustrative værdier

```json
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "VALUE_FROM_RESPONSE"
  }
}
```

Bemærk: Alle personoplysninger og objekter er afgrænset til JWT-subjektet.

Bemærk: Handlingen ændrer tilstanden eller fortsætter en engangsautorisation; eksemplet beskriver kontrakten og udføres ikke.

Bemærk: Svaret indeholder den hemmelige key; offentliggør ikke rigtige værdier.

Metoden ændrer data. Genafsendelse er kun sikker, når metoden angiver Idempotency-Key. Hvis svaret går tabt, skal du først kontrollere resultatet (for eksempel nøglelisten) og derefter beslutte, om anmodningen skal sendes igen.

**GET /api/v1/keys/:id** — Hentning via identifikator — API-nøgler

Adgang: kontrolpanelets token

GET`/api/v1/keys/:id`

Læsning; ID hentes fra dit tidligere svar

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

## Stiparametre

| Feltet | Type | Obligatorisk | Validering / beskrivelse |
| --- | --- | --- | --- |
| `id` | `integer` | ja |  |

Anmodningens indhold er ikke nødvendigt. Send de ovenstående parametre i URL'en.

## Svar

JSON-svaret indeholder code, message og data. Indholdet af data beskrives i skemaerne nedenfor.

Svarenes dataskemaer: `APIKey`. Felter og typer findes på siderne »Dataskemaer«.

Svarskema med illustrative værdier

```json
{
  "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)"
  }
}
```

Bemærk: Alle personoplysninger og objekter er afgrænset til JWT-subjektet.

Bemærk: Svaret indeholder den hemmelige key; offentliggør ikke rigtige værdier.

**PUT /api/v1/keys/:id** — Ændring af API-nøgle

Adgang: kontrolpanelets token

PUT`/api/v1/keys/:id`

## Stiparametre

| Feltet | Type | Obligatorisk | Validering / beskrivelse |
| --- | --- | --- | --- |
| `id` | `integer` | ja |  |

## JSON- / formularfelter

| Feltet | Type | Obligatorisk | Validering / beskrivelse |
| --- | --- | --- | --- |
| `name` | `string` | nej |  |
| `status` | `string` | nej | omitempty,oneof=active inactive |
| `ip_whitelist` | `array` | nej | ; Tilladte IP-adresser: null ændrer ikke listen, en tom liste rydder den; kan være null |
| `ip_blacklist` | `array` | nej | ; Blokerede IP-adresser: null ændrer ikke listen, en tom liste rydder den; kan være null |
| `quota` | `number` | nej | ; Nøglens forbrugsgrænse i USD; 0 — ingen grænse; kan være null |
| `expires_at` | `string` | nej | ; Udløbstidspunkt i ISO 8601-format; kan være null |
| `reset_quota` | `boolean` | nej | ; Nulstil den brugte del af forbrugsgrænsen; kan være null |
| `rate_limit_5h` | `number` | nej | ; kan være null |
| `rate_limit_1d` | `number` | nej | ; kan være null |
| `rate_limit_7d` | `number` | nej | ; kan være null |
| `reset_rate_limit_usage` | `boolean` | nej | ; Nulstil forbruget i tidsvinduerne; kan være null |

Skabelon til anmodningens indhold

```json
{
  "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 angiver dit input og dets type. Erstat værdierne, og behold kun de valgfrie felter, du har brug for; strengmarkører sendes ikke i stedet for tal, boolean, objekter eller lister.

Anmodningsskema: `UpdateAPIKeyRequest`

## Svar

JSON-svaret indeholder code, message og data. Indholdet af data beskrives i skemaerne nedenfor.

Svarenes dataskemaer: `APIKey`. Felter og typer findes på siderne »Dataskemaer«.

Svarskema med illustrative værdier

```json
{
  "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)"
  }
}
```

Bemærk: Alle personoplysninger og objekter er afgrænset til JWT-subjektet.

Bemærk: Handlingen ændrer tilstanden eller fortsætter en engangsautorisation; eksemplet beskriver kontrakten og udføres ikke.

Bemærk: Svaret indeholder den hemmelige key; offentliggør ikke rigtige værdier.

Bemærk: Så længe nøglen har uafsluttede anmodninger med en reservation, kan dens forbrugsgrænse ikke sænkes eller nulstilles. Send kun de felter, du ændrer.

Metoden ændrer data. Genafsendelse er kun sikker, når metoden angiver Idempotency-Key. Hvis svaret går tabt, skal du først kontrollere resultatet (for eksempel nøglelisten) og derefter beslutte, om anmodningen skal sendes igen.

Har du stadig spørgsmål? Send Request ID og en beskrivelse — så hjælper vi med at finde ud af det.[Kontakt support](mailto:support@ailoot.ai)

## Ailoot · Virksomheden og dens projektportefølje





Ailoot bygger på solid driftserfaring, en stor kundebase, stabil service og løbende kontrol af KPI.





Virksomheden og dens projektportefølje: millioner af kunder; månedligt salg for milliarder.





Ailoot bruger denne driftserfaring til API-adgang til AI-funktioner i kundernes produkter, agenter, applikationer og automatiseringer.
