Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.0.3",
"info": {
"title": "AWX API",
"version": "v2",
"description": "AWX API Documentation",
"contact": {
"email": "ansible-community@redhat.com"
},
"license": {
"name": "Apache License"
}
},
"paths": {
"/api/": {
"get": {
"operationId": "api_retrieve",
"description": "List supported API versions",
"tags": [
"api"
],
"security": [
{}
],
"responses": {
"200": {
"description": "No response body"
}
},
"x-ai-description": "List supported API versions"
}
},
"/api/v2/": {
"get": {
"operationId": "root_retrieve",
"description": "List top level resources",
"security": [
{}
],
"responses": {
"200": {
"description": "No response body"
}
},
"x-ai-description": "List top-level API resources"
}
},
"/api/v2/activity_stream/": {
"get": {
"operationId": "activity_stream_list",
"parameters": [
{
"in": "query",
"name": "order",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"in": "query",
"name": "order_by",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"name": "page",
"required": false,
"in": "query",
"description": "A page number within the paginated result set.",
"schema": {
"type": "integer"
}
},
{
"name": "page_size",
"required": false,
"in": "query",
"description": "Number of results to return per page.",
"schema": {
"type": "integer"
}
},
{
"in": "query",
"name": "role_level",
"schema": {
"type": "string"
},
"description": "Filter by role level for RBAC"
},
{
"name": "search",
"required": false,
"in": "query",
"description": "A search term.",
"schema": {
"type": "string"
}
},
{
"in": "query",
"name": "type",
"schema": {
"type": "string"
},
"description": "Filter by object type. Supports comma-separated values for multiple types."
}
],
"tags": [
"activity_stream"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PaginatedActivityStreamList"
}
}
},
"description": ""
}
},
"x-ai-description": "A list of activity stream entries. An activity stream entry tracks actions or changes that were previously made to the system."
}
},
"/api/v2/activity_stream/{id}/": {
"get": {
"operationId": "activity_stream_retrieve",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"activity_stream"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActivityStream"
}
}
},
"description": ""
}
},
"x-ai-description": "Retrieve an audit trail entry for tracking all changes within the system"
}
},
"/api/v2/ad_hoc_command_events/{id}/": {
"get": {
"operationId": "ad_hoc_command_events_retrieve",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_command_events"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AdHocCommandEvent"
}
}
},
"description": ""
}
}
}
},
"/api/v2/ad_hoc_commands/": {
"get": {
"operationId": "ad_hoc_commands_list",
"parameters": [
{
"in": "query",
"name": "order",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"in": "query",
"name": "order_by",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"name": "page",
"required": false,
"in": "query",
"description": "A page number within the paginated result set.",
"schema": {
"type": "integer"
}
},
{
"name": "page_size",
"required": false,
"in": "query",
"description": "Number of results to return per page.",
"schema": {
"type": "integer"
}
},
{
"in": "query",
"name": "role_level",
"schema": {
"type": "string"
},
"description": "Filter by role level for RBAC"
},
{
"name": "search",
"required": false,
"in": "query",
"description": "A search term.",
"schema": {
"type": "string"
}
},
{
"in": "query",
"name": "type",
"schema": {
"type": "string"
},
"description": "Filter by object type. Supports comma-separated values for multiple types."
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PaginatedAdHocCommandListList"
}
}
},
"description": ""
}
},
"x-ai-description": "Returns a paginated list of all ad hoc command runs. Ad hoc commands execute a single Ansible module without a playbook."
},
"post": {
"operationId": "ad_hoc_commands_create",
"tags": [
"ad_hoc_commands"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AdHocCommandListRequest"
}
}
}
},
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AdHocCommandList"
}
}
},
"description": ""
}
},
"x-ai-description": "Run an ad hoc command. Executes a single Ansible module on specified hosts without a playbook."
}
},
"/api/v2/ad_hoc_commands/{id}/": {
"get": {
"operationId": "ad_hoc_commands_retrieve",
"description": "Special handling when deleting a running unified job object.",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AdHocCommandDetail"
}
}
},
"description": ""
}
},
"x-ai-description": "Retrieve an ad hoc command"
},
"delete": {
"operationId": "ad_hoc_commands_destroy",
"description": "Special handling when deleting a running unified job object.",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"204": {
"description": "No response body"
}
},
"x-ai-description": "Delete an ad hoc command"
}
},
"/api/v2/ad_hoc_commands/{id}/activity_stream/": {
"get": {
"operationId": "ad_hoc_commands_activity_stream_list",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
},
{
"in": "query",
"name": "order",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"in": "query",
"name": "order_by",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"name": "page",
"required": false,
"in": "query",
"description": "A page number within the paginated result set.",
"schema": {
"type": "integer"
}
},
{
"name": "page_size",
"required": false,
"in": "query",
"description": "Number of results to return per page.",
"schema": {
"type": "integer"
}
},
{
"in": "query",
"name": "role_level",
"schema": {
"type": "string"
},
"description": "Filter by role level for RBAC"
},
{
"name": "search",
"required": false,
"in": "query",
"description": "A search term.",
"schema": {
"type": "string"
}
},
{
"in": "query",
"name": "type",
"schema": {
"type": "string"
},
"description": "Filter by object type. Supports comma-separated values for multiple types."
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PaginatedActivityStreamList"
}
}
},
"description": ""
}
},
"x-ai-description": "List activity stream of an ad hoc command"
}
},
"/api/v2/ad_hoc_commands/{id}/cancel/": {
"get": {
"operationId": "ad_hoc_commands_cancel_retrieve",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AdHocCommandCancel"
}
}
},
"description": ""
}
},
"x-ai-description": "Cancel an ad hoc command"
},
"post": {
"operationId": "ad_hoc_commands_cancel_create",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AdHocCommandCancel"
}
}
},
"description": ""
}
},
"x-ai-description": "Cancel an ad hoc command"
}
},
"/api/v2/ad_hoc_commands/{id}/events/": {
"get": {
"operationId": "ad_hoc_commands_events_list",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
},
{
"in": "query",
"name": "order",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"in": "query",
"name": "order_by",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"name": "page",
"required": false,
"in": "query",
"description": "A page number within the paginated result set.",
"schema": {
"type": "integer"
}
},
{
"name": "page_size",
"required": false,
"in": "query",
"description": "Number of results to return per page.",
"schema": {
"type": "integer"
}
},
{
"in": "query",
"name": "role_level",
"schema": {
"type": "string"
},
"description": "Filter by role level for RBAC"
},
{
"name": "search",
"required": false,
"in": "query",
"description": "A search term.",
"schema": {
"type": "string"
}
},
{
"in": "query",
"name": "type",
"schema": {
"type": "string"
},
"description": "Filter by object type. Supports comma-separated values for multiple types."
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PaginatedAdHocCommandEventList"
}
}
},
"description": ""
}
},
"x-ai-description": "List events of an ad hoc command"
}
},
"/api/v2/ad_hoc_commands/{id}/notifications/": {
"get": {
"operationId": "ad_hoc_commands_notifications_list",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
},
{
"in": "query",
"name": "order",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"in": "query",
"name": "order_by",
"schema": {
"type": "string"
},
"description": "Order results by field name. Prefix with '-' for descending order. Supports comma-separated values for multiple fields."
},
{
"name": "page",
"required": false,
"in": "query",
"description": "A page number within the paginated result set.",
"schema": {
"type": "integer"
}
},
{
"name": "page_size",
"required": false,
"in": "query",
"description": "Number of results to return per page.",
"schema": {
"type": "integer"
}
},
{
"in": "query",
"name": "role_level",
"schema": {
"type": "string"
},
"description": "Filter by role level for RBAC"
},
{
"name": "search",
"required": false,
"in": "query",
"description": "A search term.",
"schema": {
"type": "string"
}
},
{
"in": "query",
"name": "type",
"schema": {
"type": "string"
},
"description": "Filter by object type. Supports comma-separated values for multiple types."
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PaginatedNotificationList"
}
}
},
"description": ""
}
},
"x-ai-description": "List notifications of an ad hoc command"
}
},
"/api/v2/ad_hoc_commands/{id}/relaunch/": {
"get": {
"operationId": "ad_hoc_commands_relaunch_retrieve",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"description": "No response body"
}
},
"x-ai-description": "Return passwords needed to start an ad hoc command"
},
"post": {
"operationId": "ad_hoc_commands_relaunch_create",
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"description": "No response body"
}
},
"x-ai-description": "Relaunch an ad hoc command"
}
},
"/api/v2/ad_hoc_commands/{id}/stdout/": {
"get": {
"operationId": "ad_hoc_commands_stdout_retrieve",
"parameters": [
{
"in": "query",
"name": "format",
"schema": {
"type": "string",
"enum": [
"ansi",
"ansi_download",
"html",
"json",
"txt",
"txt_download"
]
}
},
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"pattern": "^[0-9]+$"
},
"required": true
}
],
"tags": [
"ad_hoc_commands"
],
"responses": {
"200": {
"content": {
"text/html": {
"schema": {
"$ref": "#/components/schemas/UnifiedJobStdout"
}
},
"text/plain": {
"schema": {
"$ref": "#/components/schemas/UnifiedJobStdout"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnifiedJobStdout"
}
}
},
"description": ""
}
},
"x-ai-description": "Retrieve a stdout output of an ad hoc command"
}
},
"/api/v2/analytics/": {
"get": {
"operationId": "analytics_retrieve",
"tags": [
"analytics"
],
"responses": {
"200": {
"description": "No response body"
}
},
"x-ai-description": "Returns available analytics API endpoints and their descriptions."
}
},
"/api/v2/analytics/adoption_rate/": {
"get": {
"operationId": "analytics_adoption_rate_retrieve",
"description": "Example:\n headers = {\n 'Content-Type': 'application/json',\n }\n\n params = {\n 'limit': '20',\n 'offset': '0',\n 'sort_by': 'name:asc',\n }\n\n json_data = {\n 'limit': '20',\n 'offset': '0',\n 'sort_options': 'name',\n 'sort_order': 'asc',\n 'tags': [],\n 'slug': [],\n 'name': [],\n 'description': '',\n }\n\n response = requests.post(f'{AUTOMATION_ANALYTICS_API_URL}/reports/', params=params,\n headers=headers, json=json_data)\n\n return Response(response.json(), status=response.status_code)",
"tags": [
"analytics"
],
"responses": {
"200": {
"description": "No response body"
}
},
"x-ai-description": "Retrieve single analytics adoption rate"
},
"post": {
"operationId": "analytics_adoption_rate_create",
"description": "Example:\n headers = {\n 'Content-Type': 'application/json',\n }\n\n params = {\n 'limit': '20',\n 'offset': '0',\n 'sort_by': 'name:asc',\n }\n\n json_data = {\n 'limit': '20',\n 'offset': '0',\n 'sort_options': 'name',\n 'sort_order': 'asc',\n 'tags': [],\n 'slug': [],\n 'name': [],\n 'description': '',\n }\n\n response = requests.post(f'{AUTOMATION_ANALYTICS_API_URL}/reports/', p
# --- truncated at 32 KB (2119 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/red-hat-ansible-automation-platform/refs/heads/main/openapi/red-hat-ansible-automation-platform-automation-controller-openapi.json