Пароли приложений (Application Passwords)
С версии WP 5.6, появились маршруты, которые позволяют получить/создать/обновить/удалить пароли приложений конкретного юзера.
Возможные маршруты (конечные точки маршрутов описаны ниже):
/wp/v2/users/{ID}/application-passwords // работает с указанным юзером /wp/v2/users/me/application-passwords // работает с текущим юзером /wp/v2/users/{ID}/application-passwords/introspect /wp/v2/users/{ID}/application-passwords/uuid /wp/v2/users/me/application-passwords/uuid
- Класс контроллера: WP_REST_Application_Passwords_Controller{}
Схема
Схема показывает все поля, которые существуют для объекта: поля объекта которые вернет запрос.
Параметр | Контекст | Описание |
---|---|---|
uuid Строка readonly |
view, edit, embed | Уникальный идентификатор для пароля приложения. |
app_id Строка |
view, edit, embed | UUID предоставляемый приложением для уникальной идентификации. Рекомендуется использовать UUID v5 с пространством имен URL или DNS. |
name Строка required |
view, edit, embed | Название пароля приложения. |
password Строка readonly |
edit | Создаваемый пароль. Доступен после добавления приложения. |
created Строка readonly |
view, edit | Дата и время (GMT) создания пароля приложения. |
last_used Строка/null readonly |
view, edit | Дата и время (GMT) последнего использования пароля приложения. |
last_ip Строка/null readonly |
view, edit | IP-адрес, с которого последний раз использовался пароль приложения. |
/wp/v2/users/{ID}/application-passwords
/wp/v2/users/me/application-passwords
Запрос OPTIONS к маршруту вернет полное описание этого маршрута.
OPTIONS http://demo.wp-api.org/wp-json/wp/v2/users/{ID}/application-passwordsGitHub
Просмотр Паролей приложений юзера
Получает все пароли приложения пользователя. См. WP_Application_Passwords::get_user_application_passwords().
Вид запроса
GET /wp/v2/users/{id}/application-passwords
Параметры запроса
- $context(строка)
- Рамки в которых сделан запрос, определяют поля в ответе. Возможные значения:
view
,embed
,edit
.
По умолчанию: view
Пример запроса
GET https://wp-kama.ru/api/wp/v2/users/1/application-passwords
Ответ:
[ { "uuid": "e76548d7-0274-438c-b04a-904301bda4d32", "app_id": "", "name": "Тест", "created": "2020-12-23T13:47:55", "last_used": "2020-12-23T13:48:55", "last_ip": "89.149.201.210", "_links": { "self": [ { "href": "https://wp-kama.ru/api/wp/v2/users/1/application-passwords/e76548d7-0274-438c-b04a-904301bda4d32" } ] } }, { "uuid": "e76548d7-0274-438c-b04a-987301bda4d32", "app_id": "", "name": "Test2", "created": "2020-12-23T13:49:08", "last_used": null, "last_ip": null, "_links": { "self": [ { "href": "https://wp-kama.ru/api/wp/v2/users/1/application-passwords/e76548d7-0274-438c-b04a-987301bda4d32" } ] } } ]
Создание Пароля приложения
Создает пароль приложения. См. WP_Application_Passwords::create_new_application_password().
Вид запроса
Доступ: требует авторизацию.
POST /wp/v2/users/{id}/application-passwords
Параметры запроса
- $name(строка) (обязательный)
- Название пароля приложения.
- $app_id(строка)
- UUID предоставляемый приложением для уникальной идентификации. Рекомендуется использовать UUID v5 с пространством имен URL или DNS.
По умолчанию: ''
Пример запроса
POST https://wp-kama.ru/api/wp/v2/users/1/application-passwords?name=Test2
Ответ:
{ "uuid": "c9e5ce07-0ccb-4a2e-963a-feda93cf8bab", "app_id": "", "name": "Test2", "created": "2020-12-23T12:41:38", "last_used": null, "last_ip": null, "password": "pNFX LyvZ gz75 tiks UZiT xlSL", "_links": { "self": [ { "href": "https://wp-kama.ru/api/wp/v2/users/1/application-passwords/c9e5ce07-0ccb-4a2e-963a-feda93cf8bab" } ] } }
Удаление Паролей приложения юзера
Удаляет все пароли предложений пользователя. См. WP_Application_Passwords::delete_all_application_passwords().
Вид запроса
Доступ: требует авторизацию.
DELETE /wp-json/wp/v2/users/1/application-passwords
Параметры запроса
Параметров нет.
Пример запроса
DELETE https://example.com/wp-json/wp/v2/users/1/application-passwords
/wp/v2/users/{ID}/application-passwords/introspect
Получает пароль приложения, который используется в данный момент для аутентификации пользователя.
См. WP_REST_Application_Passwords_Controller::get_current_item().
Запрос OPTIONS к маршруту вернет полное описание этого маршрута.
OPTIONS http://demo.wp-api.org/wp-json/wp/v2/users/{ID}/application-passwords/introspect
Вид запроса
GET /wp/v2/users/{ID}/application-passwords/introspect
Параметры запроса
- $context(строка)
- Скоуп запроса, определяют поля в ответе. Возможные значения:
view
,embed
,edit
.
По умолчанию: view
/wp/v2/users/{ID}/application-passwords/uuid
/wp/v2/users/me/application-passwords/uuid
Эти эндпоинты такие же как предыдущие, только работают с конкретным паролем приложения.
Запрос OPTIONS к маршруту вернет полное описание этого маршрута.
OPTIONS http://demo.wp-api.org/wp-json/wp/v2/users/{ID}/application-passwords/{uuid}GitHub
Просмотр Пароля приложения
Получает пароли указанного приложения. См: WP_REST_Application_Passwords_Controller::get_item().
Вид запроса
GET /wp/v2/users/{ID}/application-passwords/{uuid}
Параметры запроса
- $context(строка)
- Скоуп запроса, определяют поля в ответе. Возможные значения:
view
,embed
,edit
.
По умолчанию: view
Пример
GET https://example.com/wp-json/wp/v2/users/1/application-passwords/e79943d8-0367-287c-b07a-90001bda4d32
Ответ:
{ "uuid": "e79943d8-0367-287c-b07a-90001bda4d32", "app_id": "", "name": "Test2", "created": "2020-12-23T13:49:08", "last_used": null, "last_ip": null, "_links": { "self": [ { "href": "https://example.com/api/wp/v2/users/1/application-passwords/e79943d8-0367-287c-b07a-90001bda4d32" } ] } }
Обновление Пароля приложения
Обновляет пароль для указанного приложения. См: WP_REST_Application_Passwords_Controller::update_item().
Вид запроса
Доступ: требует авторизацию.
POST|PUT|PATCH /wp/v2/users/{user_id}/application-passwords/{uuid}
Параметры запроса
- $name(строка) (обязательный)
- Название пароля приложения.
Пример
POST https://example.com/wp-json/wp/v2/users/1/application-passwords/e77743d8-0367-287c-b07a-90001bda4d32
Удаление Пароля приложения
Удаляет пароли юзера для указанного приложения. См: WP_REST_Application_Passwords_Controller::delete_item().
Вид запроса
DELETE /wp/v2/users/{user_id}/application-passwords/{uuid}
Параметры запроса
Параметров нет.
Пример
DELETE https://example.com/wp-json/wp/v2/users/1/application-passwords/e78743d8-0367-287c-b07a-90001bda4d32