# API-kulcsok kezelése

> A REST API-kulcsok kezelése a vezérlőpulton és a kulcskezelő végpontokkal: listázás, létrehozás, szerkesztés, törlés.

Az API-kulcsokat a MainWP menüjében az **API-hozzáférés → API-kulcsok** oldalon kezeled. Ugyanezt programból is megteheted a `/mainwp/v2/rest-api` alatti végpontokkal.

## A kulcsok listája

![Az API-kulcsok listája egy létrehozott kulccsal](./kepek/rest-api-api-kulcsok-lista.webp)

*Az API-kulcsok listája egy létrehozott kulccsal* (https://minta-bolt.hu/wp-admin/admin.php?page=RESTAPI)

A táblázat oszlopai: **Állapot**, **API-kulcs (v2)** (a kulcs neve), **Jogosultságok**, **API-kulcs, amelynek a vége** (a token utolsó karakterei) és **Utolsó hozzáférés**. Az üres listán az **Új API-kulcs létrehozása** gomb indítja a létrehozást. A csoportos műveletekkel egyszerre több kulcsot is kezelhetsz.

A kulcs létrehozásának lépéseit és a jogosultsági köröket a [REST API áttekintés](https://hub.hellowp.io/hu/plugins/mainwp/rest-api-attekintes/) írja le.

## Kulcskezelő végpontok

A `{key_identifier}` lehet a kulcs számazonosítója (v2), vagy egy `ck_...` kezdetű régi kulcsazonosító.

| Metódus | Útvonal | Mire jó | Fő paraméterek |
|---|---|---|---|
| GET | `/rest-api/keys` | Kulcsok listázása | `page`, `per_page` |
| POST | `/rest-api/add-key` | Új kulcs létrehozása | `active` (logikai), `permissions` (`read`, `write` vagy `read,write`), opcionális `description` |
| PUT, PATCH | `/rest-api/edit-key/{key_identifier}` | Kulcs tulajdonságainak szerkesztése | `key_identifier`, opcionális `active`, `permissions`, `description` |
| DELETE | `/rest-api/delete-key/{key_identifier}` | Kulcs törlése | `key_identifier` |

A `write` érték a vezérlőpulton látható **Írás és törlés** jogosultságnak felel meg.

### Kulcs létrehozása

```bash
curl -X POST \
  -H "Authorization: Bearer API_KULCS" \
  -H "Content-Type: application/json" \
  -d '{
    "active": true,
    "permissions": "read,write",
    "description": "Automatizálási kulcs"
  }' \
  "https://a-te-vezerlopultod.hu/wp-json/mainwp/v2/rest-api/add-key"
```

```json
{
  "success": 1,
  "message": "API Key created successfully.",
  "token": "GENERÁLT_TOKEN"
}
```

### Kulcs szerkesztése

```bash
curl -X PATCH \
  -H "Authorization: Bearer API_KULCS" \
  -H "Content-Type: application/json" \
  -d '{"active": false, "description": "Átmenetileg letiltva"}' \
  "https://a-te-vezerlopultod.hu/wp-json/mainwp/v2/rest-api/edit-key/15"
```

```json
{
  "success": 1,
  "message": "API Key updated successfully."
}
```
