LanzaTech users API
The users API from LanzaTech — 6 operation(s) for users.
The users API from LanzaTech — 6 operation(s) for users.
openapi: 3.0.3
info:
title: LanzaTech WordPress REST block-directory users API
version: wp/v2
description: 'The public WordPress REST API served by lanzatech.com. Derived faithfully from the provider''s own live discovery document at https://lanzatech.com/wp-json/ on 2026-07-19. Alongside the standard WordPress content types (posts, pages, media, categories, tags), LanzaTech publishes five custom content types that model the company itself: news (external news coverage), employee, board-member, download (published reports and life-cycle assessments) and testimonial. Read operations are publicly accessible without authentication; write operations require a WordPress application password.'
contact:
name: LanzaTech
url: https://lanzatech.com/contact/
termsOfService: https://lanzatech.com/terms-of-use/
x-generated: '2026-07-19'
x-method: derived
x-source: https://lanzatech.com/wp-json/
servers:
- url: https://lanzatech.com/wp-json
description: Production
tags:
- name: users
paths:
/wp/v2/users:
get:
operationId: listUsers
summary: GET /wp/v2/users
tags:
- users
parameters:
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
- name: page
in: query
required: false
description: Current page of the collection.
schema:
type: integer
default: 1
minimum: 1
- name: per_page
in: query
required: false
description: Maximum number of items to be returned in result set.
schema:
type: integer
default: 10
minimum: 1
maximum: 100
- name: search
in: query
required: false
description: Limit results to those matching a string.
schema:
type: string
- name: exclude
in: query
required: false
description: Ensure result set excludes specific IDs.
schema:
type: array
default: []
items:
type: integer
- name: include
in: query
required: false
description: Limit result set to specific IDs.
schema:
type: array
default: []
items:
type: integer
- name: offset
in: query
required: false
description: Offset the result set by a specific number of items.
schema:
type: integer
- name: order
in: query
required: false
description: Order sort attribute ascending or descending.
schema:
type: string
enum:
- asc
- desc
default: asc
- name: orderby
in: query
required: false
description: Sort collection by user attribute.
schema:
type: string
enum:
- id
- include
- name
- registered_date
- slug
- include_slugs
- email
- url
default: name
- name: slug
in: query
required: false
description: Limit result set to users with one or more specific slugs.
schema:
type: array
items:
type: string
- name: roles
in: query
required: false
description: Limit result set to users matching at least one specific role provided. Accepts csv list or single role.
schema:
type: array
items:
type: string
- name: capabilities
in: query
required: false
description: Limit result set to users matching at least one specific capability provided. Accepts csv list or single capability.
schema:
type: array
items:
type: string
- name: who
in: query
required: false
description: Limit result set to users who are considered authors.
schema:
type: string
enum:
- authors
- name: has_published_posts
in: query
required: false
description: Limit result set to users who have published posts.
schema:
type: boolean
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
headers:
X-WP-Total:
description: Total items in the collection.
schema:
type: integer
X-WP-TotalPages:
description: Total pages in the collection.
schema:
type: integer
Link:
description: RFC 8288 pagination links (rel=next / rel=prev).
schema:
type: string
'400': &id001
$ref: '#/components/responses/Error'
'404': *id001
post:
operationId: createUsers
summary: POST /wp/v2/users
tags:
- users
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
username:
type: string
description: Login name for the user.
name:
type: string
description: Display name for the user.
first_name:
type: string
description: First name for the user.
last_name:
type: string
description: Last name for the user.
email:
type: string
format: email
description: The email address for the user.
url:
type: string
format: uri
description: URL of the user.
description:
type: string
description: Description of the user.
locale:
type: string
enum:
- ''
- en_US
description: Locale for the user.
nickname:
type: string
description: The nickname for the user.
slug:
type: string
description: An alphanumeric identifier for the user.
roles:
type: array
items:
type: string
description: Roles assigned to the user.
password:
type: string
description: Password for the user (never included).
meta:
type: object
description: Meta fields.
required:
- username
- email
- password
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id002
$ref: '#/components/responses/Error'
'401': *id002
'403': *id002
'404': *id002
/wp/v2/users/{id}:
parameters:
- name: id
in: path
required: true
description: 'Route-matched value (WordPress route pattern: [\d]+).'
schema:
type: integer
get:
operationId: getUsersById
summary: GET /wp/v2/users/{id}
tags:
- users
parameters:
- name: id
in: query
required: false
description: Unique identifier for the user.
schema:
type: integer
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'404':
$ref: '#/components/responses/Error'
post:
operationId: createUsersById
summary: POST /wp/v2/users/{id}
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
id:
type: integer
description: Unique identifier for the user.
username:
type: string
description: Login name for the user.
name:
type: string
description: Display name for the user.
first_name:
type: string
description: First name for the user.
last_name:
type: string
description: Last name for the user.
email:
type: string
format: email
description: The email address for the user.
url:
type: string
format: uri
description: URL of the user.
description:
type: string
description: Description of the user.
locale:
type: string
enum:
- ''
- en_US
description: Locale for the user.
nickname:
type: string
description: The nickname for the user.
slug:
type: string
description: An alphanumeric identifier for the user.
roles:
type: array
items:
type: string
description: Roles assigned to the user.
password:
type: string
description: Password for the user (never included).
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id003
$ref: '#/components/responses/Error'
'401': *id003
'403': *id003
'404': *id003
put:
operationId: replaceUsersById
summary: PUT /wp/v2/users/{id}
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
id:
type: integer
description: Unique identifier for the user.
username:
type: string
description: Login name for the user.
name:
type: string
description: Display name for the user.
first_name:
type: string
description: First name for the user.
last_name:
type: string
description: Last name for the user.
email:
type: string
format: email
description: The email address for the user.
url:
type: string
format: uri
description: URL of the user.
description:
type: string
description: Description of the user.
locale:
type: string
enum:
- ''
- en_US
description: Locale for the user.
nickname:
type: string
description: The nickname for the user.
slug:
type: string
description: An alphanumeric identifier for the user.
roles:
type: array
items:
type: string
description: Roles assigned to the user.
password:
type: string
description: Password for the user (never included).
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id004
$ref: '#/components/responses/Error'
'401': *id004
'403': *id004
'404': *id004
patch:
operationId: updateUsersById
summary: PATCH /wp/v2/users/{id}
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
id:
type: integer
description: Unique identifier for the user.
username:
type: string
description: Login name for the user.
name:
type: string
description: Display name for the user.
first_name:
type: string
description: First name for the user.
last_name:
type: string
description: Last name for the user.
email:
type: string
format: email
description: The email address for the user.
url:
type: string
format: uri
description: URL of the user.
description:
type: string
description: Description of the user.
locale:
type: string
enum:
- ''
- en_US
description: Locale for the user.
nickname:
type: string
description: The nickname for the user.
slug:
type: string
description: An alphanumeric identifier for the user.
roles:
type: array
items:
type: string
description: Roles assigned to the user.
password:
type: string
description: Password for the user (never included).
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id005
$ref: '#/components/responses/Error'
'401': *id005
'403': *id005
'404': *id005
delete:
operationId: deleteUsersById
summary: DELETE /wp/v2/users/{id}
tags:
- users
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
id:
type: integer
description: Unique identifier for the user.
force:
type: boolean
default: false
description: Required to be true, as users do not support trashing.
reassign:
type: integer
description: Reassign the deleted user's posts and links to this user ID.
required:
- reassign
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id006
$ref: '#/components/responses/Error'
'401': *id006
'403': *id006
'404': *id006
/wp/v2/users/{user_id}/application-passwords:
parameters:
- name: user_id
in: path
required: true
description: 'Route-matched value (WordPress route pattern: (?:[\d]+|me)).'
schema:
type: string
get:
operationId: getUsersApplicationPasswordsByUser_id
summary: GET /wp/v2/users/{user_id}/application-passwords
tags:
- users
parameters:
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'404':
$ref: '#/components/responses/Error'
post:
operationId: createUsersApplicationPasswordsByUser_id
summary: POST /wp/v2/users/{user_id}/application-passwords
tags:
- users
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
app_id:
type: string
format: uuid
description: A UUID provided by the application to uniquely identify it. It is recommended to use an UUID v5 with the URL or DNS namespace.
name:
type: string
description: The name of the application password.
required:
- name
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id007
$ref: '#/components/responses/Error'
'401': *id007
'403': *id007
'404': *id007
delete:
operationId: deleteUsersApplicationPasswordsByUser_id
summary: DELETE /wp/v2/users/{user_id}/application-passwords
tags:
- users
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id008
$ref: '#/components/responses/Error'
'401': *id008
'403': *id008
'404': *id008
/wp/v2/users/{user_id}/application-passwords/{uuid}:
parameters:
- name: user_id
in: path
required: true
description: 'Route-matched value (WordPress route pattern: (?:[\d]+|me)).'
schema:
type: string
- name: uuid
in: path
required: true
description: 'Route-matched value (WordPress route pattern: [\w\-]+).'
schema:
type: string
get:
operationId: getUsersApplicationPasswordsByUser_idByUuid
summary: GET /wp/v2/users/{user_id}/application-passwords/{uuid}
tags:
- users
parameters:
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'404':
$ref: '#/components/responses/Error'
post:
operationId: createUsersApplicationPasswordsByUser_idByUuid
summary: POST /wp/v2/users/{user_id}/application-passwords/{uuid}
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
app_id:
type: string
format: uuid
description: A UUID provided by the application to uniquely identify it. It is recommended to use an UUID v5 with the URL or DNS namespace.
name:
type: string
description: The name of the application password.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id009
$ref: '#/components/responses/Error'
'401': *id009
'403': *id009
'404': *id009
put:
operationId: replaceUsersApplicationPasswordsByUser_idByUuid
summary: PUT /wp/v2/users/{user_id}/application-passwords/{uuid}
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
app_id:
type: string
format: uuid
description: A UUID provided by the application to uniquely identify it. It is recommended to use an UUID v5 with the URL or DNS namespace.
name:
type: string
description: The name of the application password.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id010
$ref: '#/components/responses/Error'
'401': *id010
'403': *id010
'404': *id010
patch:
operationId: updateUsersApplicationPasswordsByUser_idByUuid
summary: PATCH /wp/v2/users/{user_id}/application-passwords/{uuid}
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
app_id:
type: string
format: uuid
description: A UUID provided by the application to uniquely identify it. It is recommended to use an UUID v5 with the URL or DNS namespace.
name:
type: string
description: The name of the application password.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id011
$ref: '#/components/responses/Error'
'401': *id011
'403': *id011
'404': *id011
delete:
operationId: deleteUsersApplicationPasswordsByUser_idByUuid
summary: DELETE /wp/v2/users/{user_id}/application-passwords/{uuid}
tags:
- users
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id012
$ref: '#/components/responses/Error'
'401': *id012
'403': *id012
'404': *id012
/wp/v2/users/{user_id}/application-passwords/introspect:
parameters:
- name: user_id
in: path
required: true
description: 'Route-matched value (WordPress route pattern: (?:[\d]+|me)).'
schema:
type: string
get:
operationId: getUsersApplicationPasswordsIntrospectByUser_id
summary: GET /wp/v2/users/{user_id}/application-passwords/introspect
tags:
- users
parameters:
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'404':
$ref: '#/components/responses/Error'
/wp/v2/users/me:
get:
operationId: listUsersMe
summary: GET /wp/v2/users/me
tags:
- users
parameters:
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
headers:
X-WP-Total:
description: Total items in the collection.
schema:
type: integer
X-WP-TotalPages:
description: Total pages in the collection.
schema:
type: integer
Link:
description: RFC 8288 pagination links (rel=next / rel=prev).
schema:
type: string
'400': &id013
$ref: '#/components/responses/Error'
'404': *id013
post:
operationId: createUsersMe
summary: POST /wp/v2/users/me
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
username:
type: string
description: Login name for the user.
name:
type: string
description: Display name for the user.
first_name:
type: string
description: First name for the user.
last_name:
type: string
description: Last name for the user.
email:
type: string
format: email
description: The email address for the user.
url:
type: string
format: uri
description: URL of the user.
description:
type: string
description: Description of the user.
locale:
type: string
enum:
- ''
- en_US
description: Locale for the user.
nickname:
type: string
description: The nickname for the user.
slug:
type: string
description: An alphanumeric identifier for the user.
roles:
type: array
items:
type: string
description: Roles assigned to the user.
password:
type: string
description: Password for the user (never included).
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id014
$ref: '#/components/responses/Error'
'401': *id014
'403': *id014
'404': *id014
put:
operationId: replaceUsersMe
summary: PUT /wp/v2/users/me
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
username:
type: string
description: Login name for the user.
name:
type: string
description: Display name for the user.
first_name:
type: string
description: First name for the user.
last_name:
type: string
description: Last name for the user.
email:
type: string
format: email
description: The email address for the user.
url:
type: string
format: uri
description: URL of the user.
description:
type: string
description: Description of the user.
locale:
type: string
enum:
- ''
- en_US
description: Locale for the user.
nickname:
type: string
description: The nickname for the user.
slug:
type: string
description: An alphanumeric identifier for the user.
roles:
type: array
items:
type: string
description: Roles assigned to the user.
password:
type: string
description: Password for the user (never included).
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400': &id015
$ref: '#/components/responses/Error'
'401': *id015
'403': *id015
'404': *id015
patch:
operationId: updateUsersMe
summary: PATCH /wp/v2/users/me
tags:
- users
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
username:
type: string
description: Login name for the user.
name:
type: string
description: Display name for the user.
first_name:
type: string
description: First name for the user.
last_name:
type: string
description: Last name for the user.
email:
type: string
format: email
description: The email address for the user.
url:
type: string
format: uri
description: URL of the user.
description:
type: string
description: Description of the user.
locale:
type: string
enum:
- ''
- en_US
description: Locale for the user.
nickname:
type: string
description: The nickname for the user.
slug:
type: string
description: An alphanumeric identifier for the user.
roles:
type: array
items:
type: string
description: Roles assigned to the user.
password:
type: string
description: Password for t
# --- truncated at 32 KB (34 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lanzatech/refs/heads/main/openapi/lanzatech-users-api-openapi.yml