Cisco Secure Firewall Domains and Identity providers API

The Domains and Identity providers API from Cisco Secure Firewall — 4 operation(s) for domains and identity providers.

OpenAPI Specification

cisco-secure-firewall-domains-and-identity-providers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.4.0
  title: Identity and Access Management Domains and Identity providers API
  description: APIs for creating and updating the customer enterprise, including user access control.
  x-provenance:
    method: harvested
    authored_by: Cisco Security Cloud Control
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
    provider_published: true
  x-evidence:
  - type: source
    url: https://github.com/CiscoDevNet/scc-public-api-docs/blob/main/specs/iam.yaml
  - type: raw
    url: https://raw.githubusercontent.com/CiscoDevNet/scc-public-api-docs/main/specs/iam.yaml
servers:
- url: https://api.int.security.cisco.com/identity
  variables:
    baseUrl:
      default: https://api.int.security.cisco.com/identity
    domain:
      default: https://sso-apps-preview.myverysecuresignon.name/api
security:
- OpenID: []
- bearerAuth: []
tags:
- name: Domains and Identity providers
paths:
  /enterprises/{id}/domains/{domain}/verify:
    post:
      operationId: verifyPendingEnterpriseDomain
      description: Will trigger the backend to attempt to verify the domain for the enterprise
      parameters:
      - name: id
        in: path
        description: ID of enterprise
        required: true
        schema:
          type: string
          format: uuid
      - name: domain
        in: path
        description: domain to verify
        required: true
        schema:
          $ref: '#/components/schemas/DomainName'
      responses:
        '201':
          description: Verification was successful, domain will be marked as verified
          headers:
            Date:
              $ref: '#/components/headers/Date'
            Location:
              $ref: '#/components/headers/Location'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Domain'
        '400':
          description: verification/claim was not successful
          headers:
            Date:
              $ref: '#/components/headers/Date'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          $ref: '#/components/responses/NotFoundError'
        default:
          $ref: '#/components/responses/GeneralError'
      tags:
      - Domains and Identity providers
  /enterprises/{id}/domains:
    get:
      tags:
      - Domains and Identity providers
      operationId: getEnterpriseDomains
      description: Reads from the domains table first to see if it has any verified domains. If such a one exists, it returns that domain. Else this API will read from the pending_domains table and return all the unverified domains the enterprise has. After 30 days, if the domain is unverified, the entry will be deleted by the TTL in DDB and thus this API will not return it.
      parameters:
      - name: id
        in: path
        description: ID of enterprise
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: ''
          headers:
            Date:
              $ref: '#/components/headers/Date'
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/PendingDomain'
        '404':
          $ref: '#/components/responses/NotFoundError'
        default:
          $ref: '#/components/responses/GeneralError'
    post:
      tags:
      - Domains and Identity providers
      operationId: initiatePendingEnterpriseDomain
      description: Will begin the domain verification process for the enterprise. Action needs to done by the admin of the enterprise
      parameters:
      - name: id
        in: path
        description: ID of enterprise
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        description: ''
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                domain:
                  $ref: '#/components/schemas/DomainName'
      responses:
        '201':
          description: success
          headers:
            Date:
              $ref: '#/components/headers/Date'
            Location:
              $ref: '#/components/headers/Location'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PendingDomain'
        '400':
          $ref: '#/components/responses/ValidationError'
        default:
          $ref: '#/components/responses/GeneralError'
  /enterprises/{id}/groupMappings:
    put:
      tags:
      - Domains and Identity providers
      operationId: createIdpGroupMapping
      summary: Create or update an IDP group mapping, if a set of group mappings exist for the IDP already, this should be updated in-place. Requires enterprise admin to invoke this endpoint.
      security:
      - bearerAuth: []
      parameters:
      - name: id
        in: path
        description: The ID of the enterprise.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              $ref: '#/components/schemas/IDPGroupMappingInput'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdatedIDPGroupMapping'
        default:
          $ref: '#/components/responses/GeneralError'
  /enterprises/{id}/authorizedExternalIdps:
    get:
      tags:
      - Domains and Identity providers
      summary: List authorize external IdP for this enterprise. Requires enterprise admin to invoke this endpoint.
      operationId: listExternalIdp
      parameters:
      - name: id
        in: path
        description: The ID of the enterprise.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: success response
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/ExternalIdpGroupMappingListResponse'
        default:
          $ref: '#/components/responses/GeneralError'
    post:
      summary: Authorize external IdP for this enterprise. Requires enterprise admin to invoke this endpoint.
      operationId: addExternalIdp
      tags:
      - Domains and Identity providers
      parameters:
      - name: id
        in: path
        description: The ID of the enterprise.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              $ref: '#/components/schemas/ExternalIdpGroupMappingInput'
      responses:
        '201':
          description: 201 response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalIdpGroupMappingCreateResponse'
        default:
          $ref: '#/components/responses/GeneralError'
components:
  schemas:
    ExternalIdpGroupMappingListResponse:
      type: object
      properties:
        idpName:
          type: string
        idpId:
          type: string
          format: uuid
        enterpriseId:
          type: string
          format: uuid
        groupMappings:
          type: array
          items:
            type: object
            required:
            - idpGroupName
            - rbacGroupId
            properties:
              idpGroupName:
                type: string
              rbacGroupId:
                type: string
                format: uuid
    Error:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
    ExternalIdpGroupMappingInput:
      type: object
      description: Request body for authorizedExternalIdps endpoint
      properties:
        idpId:
          type: string
          format: uuid
    Domain:
      type: object
      required:
      - domain
      - status
      properties:
        domain:
          $ref: '#/components/schemas/DomainName'
        status:
          $ref: '#/components/schemas/DomainStatus'
    DomainStatus:
      type: string
      enum:
      - pending
      - verified
    ExternalIdpGroupMappingCreateResponse:
      type: object
      properties:
        idpId:
          type: string
          format: uuid
        enterpriseId:
          type: string
          format: uuid
        samlIdpIssuer:
          type: string
    IDPGroupMappingInput:
      type: object
      description: Represent request body for idp group operation
      required:
      - groupMappings
      properties:
        groupMappings:
          type: array
          items:
            type: object
            required:
            - idpGroupName
            - rbacGroupId
            properties:
              isExternalIdp:
                type: boolean
                default: false
              idpGroupName:
                type: string
              idpId:
                type: string
                format: uuid
              rbacGroupId:
                type: string
                format: uuid
    UpdatedIDPGroupMapping:
      type: object
      properties:
        enterpriseId:
          type: string
          format: uuid
        groupMappings:
          type: array
          items:
            type: object
            required:
            - idpGroupName
            - rbacGroupId
            properties:
              idpGroupName:
                type: string
              idpId:
                type: string
                format: uuid
              rbacGroupId:
                type: string
                format: uuid
    PendingDomain:
      properties:
        createdAt:
          format: date-time
          type: string
        domain:
          type: string
        entityID:
          type: string
        expiresAt:
          format: date-time
          type: string
        status:
          $ref: '#/components/schemas/DomainStatus'
        txtRecord:
          example: _ciscosxsoverification.acme.com
          type: string
        txtRecordValue:
          format: uuid
          type: string
      required:
      - entityID
      - domain
      type: object
    DomainName:
      type: string
      pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\.[a-zA-Z]{2,})+$
      example: cisco.com
  responses:
    ValidationError:
      description: The request was invalid
      headers:
        Date:
          $ref: '#/components/headers/Date'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFoundError:
      description: Not Found
      headers:
        Date:
          $ref: '#/components/headers/Date'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    GeneralError:
      description: An unknown error occurred
      headers:
        Date:
          $ref: '#/components/headers/Date'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  headers:
    Location:
      schema:
        type: string
        format: uri
    Date:
      schema:
        type: string
        pattern: ^.*$
  securitySchemes:
    OpenID:
      type: openIdConnect
      openIdConnectUrl: https://auth.example.com/.well-known/openid-configuration
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    piamServiceTokenSecurity:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://auth.example.com/oauth/token
          scopes:
            security:duo:identity:mappings-migrate: Grants write and read access to product mappings migration APIs for Duo Security
            security:etd:identity:mappings-migrate: Grants write and read access to Encrypted Traffic Analytics product mappings migration APIs
            security:panoptica:identity:mappings-migrate: Grants write and read access to Panoptica product mappings migration APIs
            security:secure-access:identity:mappings-migrate: Grants write and read access to Secure Access product mappings migration APIs
            security:secure-endpoint:identity:mappings-migrate: Grants write and read access to Secure Endpoint product mappings migration APIs
            security:secure-workload:identity:mappings-migrate: Grants write and read access to Secure Workload product mappings migration APIs
            security:vuln-mgmt:identity:mappings-migrate: Grants write and read access to Vulnerability Management product mappings migration APIs
            security:attack-surface-mgmt:identity:mappings-migrate: Grants write and read access to Attack Surface Management product mappings migration APIs
            security:cdo:identity:mappings-migrate: Grants write and read access to CDO product mappings migration APIs
            security:xdr:identity:mappings-migrate: Grants write and read access to XDR product mappings migration APIs
            security:cdo:public-api: Grants write and read access to CDO Public Group Directory APIs