openapi: 3.2.0 info: title: Cisco Secure Firewall AI Assistant API version: 1.13.0 contact: name: Cisco Security Cloud Control TAC email: cdo.tac@cisco.com description: 'Operations tagged AI Assistant across 2 of this provider''s published API definitions: cisco-secure-firewall-scc-firewall-manager-openapi.yml, scc-firewall-manager-openapi.yaml. Each path carries the servers of the definition it was published in.' x-provenance: method: harvested first_party: true harvested: '2026-08-19' source: https://raw.githubusercontent.com/CiscoDevNet/scc-public-api-docs/main/cdo/openapi.yaml source_repo: https://github.com/CiscoDevNet/scc-public-api-docs note: Verbatim first-party OpenAPI published by Cisco in the CiscoDevNet scc-public-api-docs repository, the source of record for developer.cisco.com/docs/cisco-security-cloud-control-firewall-manager/. Not authored or modified by API Evangelist. derived_view: Per-tag view of cisco-secure-firewall-scc-firewall-manager-openapi.yml, the provider's source document. Operations and schemas are the provider's, unmodified; only the partition is ours. derived_from: cisco-secure-firewall-scc-firewall-manager-openapi.yml operation_coverage: 5/5 x-evidence: fetched: '2026-08-19' url: https://raw.githubusercontent.com/CiscoDevNet/scc-public-api-docs/main/cdo/openapi.yaml http_status: 200 servers: - url: https://api.us.security.cisco.com/firewall description: US - url: https://api.eu.security.cisco.com/firewall description: EU - url: https://api.apj.security.cisco.com/firewall description: APJ - url: https://api.au.security.cisco.com/firewall description: AUS - url: https://api.in.security.cisco.com/firewall description: IN - url: https://api.int.security.cisco.com/firewall description: Staging - url: https://scale.manage.security.cisco.com/api/rest description: Scale - url: https://ci.manage.security.cisco.com/api/rest description: CI - url: https://manage.stg.secure.cisco/api/rest description: Stgf9 tags: - name: AI Assistant paths: /v1/ai-assistant/conversations: get: description: 'Get a list of AI Assistant Conversations. Note: the total number of conversations is set to -1 as this information is currently unavailable.' operationId: getConversations parameters: - description: The number of results to retrieve. in: query name: limit required: false schema: maximum: 200 minimum: 0 type: string - description: The offset of the results retrieved. The Security Cloud Control API uses the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified. in: query name: offset required: false schema: minimum: 0 type: string - description: The fields to sort results by. example: name:DESC in: query name: sort required: false schema: items: type: string type: array responses: '200': content: application/json: schema: $ref: '#/components/schemas/AiAssistantConversationPage' description: List of Conversations '400': $ref: '#/components/responses/http400BadRequest' '401': $ref: '#/components/responses/http401Unauthorised' '403': $ref: '#/components/responses/http403Forbidden' '500': content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: Internal server error. security: - bearerAuth: [] summary: Get Conversations tags: - AI Assistant post: description: Start a new conversation with the AI Assistant by asking a question. operationId: askAiAssistantInNewConversation requestBody: content: application/json: schema: $ref: '#/components/schemas/AiQuestion' required: true responses: '202': content: application/json: schema: $ref: '#/components/schemas/CdoTransaction' description: Security Cloud Control Transaction object that can be used to track the status of the question. '400': $ref: '#/components/responses/http400BadRequest' '401': $ref: '#/components/responses/http401Unauthorised' '403': $ref: '#/components/responses/http403Forbidden' '500': content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: Internal server error. security: - bearerAuth: [] summary: Ask AI Assistant (New Conversation) tags: - AI Assistant servers: - url: https://api.us.security.cisco.com/firewall description: US - url: https://api.eu.security.cisco.com/firewall description: EU - url: https://api.apj.security.cisco.com/firewall description: APJ - url: https://api.au.security.cisco.com/firewall description: AUS - url: https://api.in.security.cisco.com/firewall description: IN - url: https://api.int.security.cisco.com/firewall description: Staging - url: https://scale.manage.security.cisco.com/api/rest description: Scale - url: https://ci.manage.security.cisco.com/api/rest description: CI - url: https://manage.stg.secure.cisco/api/rest description: Stgf9 /v1/ai-assistant/conversations/{conversationUid}: get: description: Get an AI Assistant conversation by UID in the Security Cloud Control tenant. operationId: getConversation parameters: - description: The unique identifier, represented as a UUID, of the conversation in Security Cloud Control. in: path name: conversationUid required: true schema: format: uuid type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/AiConversation' description: Conversation object '400': $ref: '#/components/responses/http400BadRequest' '401': $ref: '#/components/responses/http401Unauthorised' '403': $ref: '#/components/responses/http403Forbidden' '404': $ref: '#/components/responses/http404NotFound' '500': content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: Internal server error. security: - bearerAuth: [] summary: Get Conversation tags: - AI Assistant post: description: Ask the AI Assistant a question in the context of an existing conversation with the AI Assistant. operationId: askAiAssistantInExistingConversation parameters: - in: path name: conversationUid required: true schema: format: uuid type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/AiQuestion' required: true responses: '202': content: application/json: schema: $ref: '#/components/schemas/CdoTransaction' description: Security Cloud Control Transaction object that can be used to track the status of the question. '400': $ref: '#/components/responses/http400BadRequest' '401': $ref: '#/components/responses/http401Unauthorised' '403': $ref: '#/components/responses/http403Forbidden' '500': content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: Internal server error. security: - bearerAuth: [] summary: Ask AI Assistant (Existing Conversation) tags: - AI Assistant servers: - url: https://api.us.security.cisco.com/firewall description: US - url: https://api.eu.security.cisco.com/firewall description: EU - url: https://api.apj.security.cisco.com/firewall description: APJ - url: https://api.au.security.cisco.com/firewall description: AUS - url: https://api.in.security.cisco.com/firewall description: IN - url: https://api.int.security.cisco.com/firewall description: Staging - url: https://scale.manage.security.cisco.com/api/rest description: Scale - url: https://ci.manage.security.cisco.com/api/rest description: CI - url: https://manage.stg.secure.cisco/api/rest description: Stgf9 /v1/ai-assistant/conversations/{conversationUid}/messages: get: description: 'Get a list of messages in a single AI Assistant conversation. Note: this endpoint is not paginated, and returns the full list of messages.' operationId: getAiAssistantConversationMessages parameters: - description: The unique identifier, represented as a UUID, of the conversation in Security Cloud Control. in: path name: conversationUid required: true schema: format: uuid type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/AiMessage' type: array description: List of Conversation Messages '400': $ref: '#/components/responses/http400BadRequest' '401': $ref: '#/components/responses/http401Unauthorised' '403': $ref: '#/components/responses/http403Forbidden' '500': content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: Internal server error. security: - bearerAuth: [] summary: Get Messages tags: - AI Assistant servers: - url: https://api.us.security.cisco.com/firewall description: US - url: https://api.eu.security.cisco.com/firewall description: EU - url: https://api.apj.security.cisco.com/firewall description: APJ - url: https://api.au.security.cisco.com/firewall description: AUS - url: https://api.in.security.cisco.com/firewall description: IN - url: https://api.int.security.cisco.com/firewall description: Staging - url: https://scale.manage.security.cisco.com/api/rest description: Scale - url: https://ci.manage.security.cisco.com/api/rest description: CI - url: https://manage.stg.secure.cisco/api/rest description: Stgf9 components: responses: http403Forbidden: content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: User does not have sufficient privileges to perform this operation. http404NotFound: content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: Entity not found. http400BadRequest: content: application/json: schema: $ref: '#/components/schemas/CommonApiError' description: Invalid input provided. Check the response for details. http401Unauthorised: content: application/json: schema: $ref: '#/components/schemas/AuthenticationError' description: Request not authorized. schemas: AuthenticationError: properties: error: description: A human-readable error description in English. example: invalid_token type: string errorDescription: description: A human-readable error description in English. example: Your token is invalid type: string AiAssistantConversationPage: properties: count: description: The total number of results available. example: 100 format: int32 type: integer items: description: The list of items retrieved. items: $ref: '#/components/schemas/AiConversation' type: array limit: description: The number of results retrieved. example: 50 format: int32 type: integer offset: description: The offset of the results retrieved. The Security Cloud Control API uses the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified. example: 0 format: int32 type: integer type: object AiMessage: properties: content: description: The content of the message. example: What's the difference between an Admin and a Super Admin? type: string createdDate: description: The time (UTC; represented using the RFC-3339 standard) at which the message was sent. example: 2023-12-13 08:15:44+00:00 format: date-time type: string inReplyTo: description: The unique identifier, represented as a UUID, of the message to which this message is replying. This field is populated only for messages of type RESPONSE. example: f127a6f6-ec56-400f-a23b-832b0100540b format: uuid type: string type: description: The type of the message, indicating whether it is a request or a response. enum: - REQUEST - RESPONSE example: REQUEST type: string uid: description: The unique identifier, represented as a UUID, of the Message. example: 7131daad-e813-4b8f-8f42-be1e241e8cdb format: uuid type: string required: - uid type: object CdoTransaction: properties: cdoTransactionStatus: description: The status of the transaction enum: - PENDING - IN_PROGRESS - DONE - ERROR example: IN_PROGRESS type: string entityUid: description: The unique identifier of the entity that the transaction is triggered on. This can be empty, for a transaction that is not tied to an entity, such as transactions which refresh RA VPN sessions. example: f5f660d4-4b81-4374-877d-fbc4bee894e2 format: uuid type: string entityUrl: description: A URL to access the entity that the transaction is triggered on. This can also be empty example: https://edge.us.cdo.cisco.com/platform/public-api/v1/inventory/devices/f5f660d4-4b81-4374-877d-fbc4bee894e2 type: string errorDetails: additionalProperties: type: string description: Transaction error details, if any type: object errorMessage: description: Transaction error message, if any type: string lastUpdatedTime: description: The time (UTC; represented using the RFC-3339 standard) at which the transaction status was last updated example: 2023-12-13 08:15:44+00:00 format: date-time type: string submissionTime: description: The time (UTC; represented using the RFC-3339 standard) at which the transaction was triggered example: 2023-12-13 05:15:44+00:00 format: date-time type: string tenantUid: description: The unique identifier of the tenant that the transaction triggered on. example: 5131daad-e813-4b8f-8f42-be1e241e2cdb format: uuid type: string transactionDetails: additionalProperties: type: string description: Transaction details, if any type: object transactionPollingUrl: description: The URL to poll to track the progress of the transaction. example: https://edge.us.cdo.cisco.com/platform/v1/transactions/7131daad-e813-4b8f-8f42-be1e241e8cdb type: string transactionType: description: the type of the transaction enum: - ONBOARD_ASA - ONBOARD_IOS - ONBOARD_DUO_ADMIN_PANEL - CREATE_FTD - ONBOARD_FTD_ZTP - REGISTER_FTD - DELETE_CDFMC_MANAGED_FTD - RECONNECT_ASA - READ_ASA - BULK_READ_ASA - EXECUTE_CLI_COMMAND - BULK_ACCEPT_ASA_CERTIFICATES - DEPLOY_ASA_DEVICE_CHANGES - DEPLOY_FTD_DEVICE_CHANGES - INDEX_TENANT - TERMINATE_DEVICE_RA_VPN_SESSIONS - REFRESH_RA_VPN_SESSIONS - TERMINATE_USER_RA_VPN_SESSIONS - UPGRADE_ASA - UPGRADE_FTD - UPGRADE_FTD_CACHE - MSP_UPGRADE_FTDS - MSP_GET_COMPATIBLE_FTD_UPGRADE_PACKAGES - CREATE_SDC - SEND_AI_ASSISTANT_MESSAGE - MSP_CREATE_TENANT - MSP_ADD_USERS_TO_TENANT - MSP_ADD_USER_GROUPS_TO_TENANT - MSP_DELETE_USERS_FROM_TENANT - MSP_DELETE_USER_GROUPS_FROM_TENANT - MSP_ADD_EXISTING_TENANT - MSP_ENABLE_MULTICLOUD_DEFENSE - MSP_PROVISION_CDFMC - CREATE_USERS - DELETE_USERS - EXECUTE_ASA_COMMAND - ANALYZE_POLICIES - TRIGGER_FMC_DATA_EXPORT - EXPORT_DEVICES - EXPORT_CLOUD_SERVICES - EXPORT_MANAGERS - EXPORT_TEMPLATES - PROVISION_SDWAN_SAL_RESOURCES - DEPROVISION_SDWAN_SAL_RESOURCES - PROVISION_FIREWALL_SAL_RESOURCES - DEPROVISION_FIREWALL_SAL_RESOURCES - ASA_HEALTH_METRICS_TENANT_OPT_IN - ASA_HEALTH_METRICS_TENANT_OPT_OUT example: ONBOARD_ASA type: string transactionUid: description: The unique identifier of the transaction triggered. example: 7131daad-e813-4b8f-8f42-be1e241e8cdb format: uuid type: string type: object CommonApiError: properties: details: additionalProperties: description: Additional details, if any, on the error example: {} type: object description: Additional details, if any, on the error example: {} type: object errorCode: description: A unique code that describes the error. enum: - INVALID_INPUT - UNAUTHORIZED - FORBIDDEN - NOT_FOUND - METHOD_NOT_ALLOWED - CONFLICT - TOO_MANY_REQUESTS - SERVER_ERROR - PROXY_ERROR - BAD_REQUEST - UNPROCESSABLE_ENTITY example: INVALID_INPUT type: string errorMsg: description: A human-readable error description in English. example: sample error type: string AiConversation: properties: createdDate: description: The time (UTC; represented using the RFC-3339 standard) at which the conversation was created. example: 2023-12-13 08:15:44+00:00 format: date-time type: string lastAnswerDate: description: The time (UTC; represented using the RFC-3339 standard) at which an answer was received. example: 2023-12-13 08:15:44+00:00 format: date-time type: string lastInteractionDate: description: The time (UTC; represented using the RFC-3339 standard) at which the user interacted with this conversation. example: 2023-12-13 08:15:44+00:00 format: date-time type: string title: description: The title of the conversation. This is set to the first question asked as part of the conversation. example: Is example.com blocked on my FTD? type: string uid: description: The unique identifier, represented as a UUID, of the conversation. example: 7131daad-e813-4b8f-8f42-be1e241e8cdb format: uuid type: string required: - uid type: object AiQuestion: properties: content: description: The content of the message. example: What's the difference between an Admin and a Super Admin? type: string type: object securitySchemes: bearerAuth: bearerFormat: JWT scheme: bearer type: http x-refined-from: - cisco-secure-firewall-scc-firewall-manager-openapi.yml - scc-firewall-manager-openapi.yaml