Cisco Secure Firewall MPM Changeset Validation API

The MPM Changeset Validation API from Cisco Secure Firewall — 1 operation(s) for mpm changeset validation.

OpenAPI Specification

cisco-secure-firewall-mpm-changeset-validation-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Mesh Policy Engine MPM Changeset Validation API
  version: 6.0.0
  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/mesh-policy.yaml
  - type: raw
    url: https://raw.githubusercontent.com/CiscoDevNet/scc-public-api-docs/main/specs/mesh-policy.yaml
servers:
- url: https://api.security.cisco.com/pinacl/api
security:
- BearerJWT: []
tags:
- name: MPM Changeset Validation
paths:
  /mpm/changeset/{changesetId}/error:
    get:
      description: 'Roles allowed: support, mpm-rw,mpm-ro'
      operationId: getChangesetError
      parameters:
      - in: path
        name: changesetId
        required: true
        schema:
          format: uuid
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MpmChangesetContentError'
          description: Ok
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      summary: Get the Changeset error using changesetId
      tags:
      - MPM Changeset Validation
    put:
      description: 'Roles allowed: support, mpm-rw'
      operationId: updateChangesetError
      parameters:
      - in: path
        name: changesetId
        required: true
        schema:
          format: uuid
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MpmChangesetErrorUpdate'
        required: true
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      summary: Update changeset content and error objects
      tags:
      - MPM Changeset Validation
components:
  schemas:
    AppChangeError:
      properties:
        duplicateId:
          type: boolean
        duplicateName:
          type: boolean
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        ticketError:
          $ref: '#/components/schemas/TicketError'
        undeletedRelErrs:
          $ref: '#/components/schemas/UndeletedAppRelationshipErrors'
      required:
      - id
      type: object
    MpmChangesetErrorUpdate:
      properties:
        content:
          $ref: '#/components/schemas/MpmChangesetContent'
        error:
          $ref: '#/components/schemas/MpmChangesetContentError'
      type: object
    UndeletedEndpointRelationshipErrors:
      properties:
        grpRefs:
          items:
            format: uuid
            type: string
          type: array
        natRuleRefs:
          items:
            $ref: '#/components/schemas/ParentNatRuleEndpointRelationship'
          type: array
        ruleRefs:
          items:
            $ref: '#/components/schemas/ParentRuleRelationship'
          type: array
      type: object
    EndpointGroupChangeError:
      properties:
        duplicateId:
          type: boolean
        duplicateName:
          type: boolean
        epErrs:
          $ref: '#/components/schemas/RelationshipChanges'
        epgErrs:
          $ref: '#/components/schemas/RelationshipChanges'
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        ticketError:
          $ref: '#/components/schemas/TicketError'
        undeletedRelErrs:
          $ref: '#/components/schemas/UndeletedEndpointRelationshipErrors'
      required:
      - id
      type: object
    PolicyRuleOrderChange:
      properties:
        newOrder:
          items:
            format: uuid
            type: string
          type: array
        oldOrder:
          items:
            format: uuid
            type: string
          type: array
      type: object
    AppInfoChange:
      properties:
        description:
          type: string
        name:
          type: string
        value:
          type: string
      type: object
    ManagerInfoChange:
      properties:
        description:
          type: string
        name:
          type: string
      type: object
    TicketError:
      properties:
        invalidTicket:
          type: boolean
        invalidTicketErr:
          type: string
        ticketRequired:
          type: boolean
      type: object
    ManagerChangeBody:
      properties:
        apgs:
          items:
            $ref: '#/components/schemas/AppGroupChange'
          type: array
        aps:
          items:
            $ref: '#/components/schemas/AppChange'
          type: array
        epgs:
          items:
            $ref: '#/components/schemas/EndpointGroupChange'
          type: array
        eps:
          items:
            $ref: '#/components/schemas/EndpointChange'
          type: array
        info:
          $ref: '#/components/schemas/ManagerInfoChange'
        policies:
          items:
            $ref: '#/components/schemas/PolicyChange'
          type: array
      type: object
    AppGroupChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/AppGroupChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
    PolicyChangeBody:
      properties:
        info:
          $ref: '#/components/schemas/PolicyInfoChange'
        natRules:
          items:
            $ref: '#/components/schemas/NatRuleChange'
          type: array
        ruleOrder:
          $ref: '#/components/schemas/PolicyRuleOrderChange'
        rules:
          items:
            $ref: '#/components/schemas/RuleChange'
          type: array
        targets:
          $ref: '#/components/schemas/TargetRelationshipChanges'
      type: object
    NatRuleChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/NatRuleChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
    PolicyInfoChange:
      properties:
        description:
          type: string
        name:
          type: string
        policyType:
          enum:
          - SECURITY
          - GOVERNANCE_PREPEND
          - GOVERNANCE_APPEND
          - NAT
          type: string
      type: object
    EndpointChangeBody:
      properties:
        info:
          $ref: '#/components/schemas/EndpointInfoChange'
      required:
      - info
      type: object
    RuleChangeBody:
      properties:
        apgs:
          $ref: '#/components/schemas/RelationshipChanges'
        aps:
          $ref: '#/components/schemas/RelationshipChanges'
        dstDgs:
          $ref: '#/components/schemas/MpmDynamicGroupRelationshipChanges'
        dstEpgs:
          $ref: '#/components/schemas/RelationshipChanges'
        dstEps:
          $ref: '#/components/schemas/RelationshipChanges'
        info:
          $ref: '#/components/schemas/RuleInfoChange'
        srcDgs:
          $ref: '#/components/schemas/MpmDynamicGroupRelationshipChanges'
        srcEpgs:
          $ref: '#/components/schemas/RelationshipChanges'
        srcEps:
          $ref: '#/components/schemas/RelationshipChanges'
      type: object
    AppGroupInfoChange:
      properties:
        description:
          type: string
        name:
          type: string
      type: object
    TargetRelationshipChangeError:
      properties:
        add:
          items:
            type: string
          type: array
        natErrs:
          items:
            type: string
          type: array
        rem:
          items:
            type: string
          type: array
        ticketError:
          $ref: '#/components/schemas/TicketError'
      type: object
    RuleChangeError:
      properties:
        apErrs:
          $ref: '#/components/schemas/RelationshipChangeError'
        apgErrs:
          $ref: '#/components/schemas/RelationshipChangeError'
        dgsInUnpinnedRule:
          type: boolean
        dstDgErrs:
          $ref: '#/components/schemas/MpmDynamicGroupRelationshipChangeError'
        dstEpErrs:
          $ref: '#/components/schemas/RelationshipChangeError'
        dstEpgErrs:
          $ref: '#/components/schemas/RelationshipChangeError'
        duplicateId:
          type: boolean
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        srcDgErrs:
          $ref: '#/components/schemas/MpmDynamicGroupRelationshipChangeError'
        srcEpErrs:
          $ref: '#/components/schemas/RelationshipChangeError'
        srcEpgErrs:
          $ref: '#/components/schemas/RelationshipChangeError'
        ticketError:
          $ref: '#/components/schemas/TicketError'
      required:
      - id
      type: object
    ParentNatRuleEndpointRelationship:
      properties:
        behaviour:
          enum:
          - MATCH
          - TRANSLATED
          type: string
        direction:
          enum:
          - DST
          - SRC
          type: string
        id:
          format: uuid
          type: string
        policyId:
          format: uuid
          type: string
      required:
      - behaviour
      - direction
      - id
      - policyId
      type: object
    NatRuleChangeError:
      properties:
        apMatchErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        apTranslatedErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        apgMatchErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        dstEpMatchErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        dstEpTranslatedErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        dstEpgMatchErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        duplicateId:
          type: boolean
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        srcEpMatchErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        srcEpTranslatedErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        srcEpgMatchErrs:
          items:
            $ref: '#/components/schemas/NatRuleRelationshipChangesError'
          type: array
        ticketError:
          $ref: '#/components/schemas/TicketError'
      type: object
    EndpointGroupChangeBody:
      properties:
        epgs:
          $ref: '#/components/schemas/RelationshipChanges'
        eps:
          $ref: '#/components/schemas/RelationshipChanges'
        info:
          $ref: '#/components/schemas/EndpointGroupInfoChange'
      type: object
    AppGroupChangeBody:
      properties:
        apgs:
          $ref: '#/components/schemas/RelationshipChanges'
        aps:
          $ref: '#/components/schemas/RelationshipChanges'
        info:
          $ref: '#/components/schemas/AppGroupInfoChange'
      type: object
    PolicyChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/PolicyChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
    NatMatchInfoChange:
      properties:
        apgs:
          $ref: '#/components/schemas/RelationshipChanges'
        aps:
          $ref: '#/components/schemas/RelationshipChanges'
        dstEpgs:
          $ref: '#/components/schemas/RelationshipChanges'
        dstEps:
          $ref: '#/components/schemas/RelationshipChanges'
        srcEpgs:
          $ref: '#/components/schemas/RelationshipChanges'
        srcEps:
          $ref: '#/components/schemas/RelationshipChanges'
      type: object
    RuleChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/RuleChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
    EndpointGroupInfoChange:
      properties:
        description:
          type: string
        name:
          type: string
      type: object
    AppGroupChangeError:
      properties:
        apErrs:
          $ref: '#/components/schemas/RelationshipChanges'
        apgErrs:
          $ref: '#/components/schemas/RelationshipChanges'
        duplicateId:
          type: boolean
        duplicateName:
          type: boolean
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        ticketError:
          $ref: '#/components/schemas/TicketError'
        undeletedRelErrs:
          $ref: '#/components/schemas/UndeletedAppRelationshipErrors'
      required:
      - id
      type: object
    PolicyChangeError:
      properties:
        duplicateId:
          type: boolean
        duplicateName:
          type: boolean
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        natRuleErrors:
          items:
            $ref: '#/components/schemas/NatRuleChangeError'
          type: array
        ruleErrs:
          items:
            $ref: '#/components/schemas/RuleChangeError'
          type: array
        ruleOrderErr:
          type: string
        targetErrs:
          $ref: '#/components/schemas/TargetRelationshipChangeError'
        ticketError:
          $ref: '#/components/schemas/TicketError'
        undeletedDeviceSetErrs:
          items:
            type: string
          type: array
      required:
      - id
      type: object
    RelationshipChanges:
      properties:
        add:
          items:
            format: uuid
            type: string
          type: array
        rem:
          items:
            format: uuid
            type: string
          type: array
      type: object
    ParentRuleRelationship:
      properties:
        direction:
          enum:
          - DST
          - SRC
          type: string
        id:
          format: uuid
          type: string
        policyId:
          format: uuid
          type: string
      required:
      - direction
      - id
      - policyId
      type: object
    NatRuleChangeBody:
      properties:
        info:
          $ref: '#/components/schemas/NatRuleInfoChange'
        matchInfo:
          $ref: '#/components/schemas/NatMatchInfoChange'
        translatedInfo:
          $ref: '#/components/schemas/NatTranslatedInfoChange'
      type: object
    RuleInfoChange:
      properties:
        action:
          enum:
          - PERMIT
          - DENY
          type: string
        description:
          type: string
        enabled:
          type: boolean
        fullyPinned:
          type: boolean
        onClose:
          type: boolean
        onInit:
          type: boolean
        ruleGroup:
          type: string
      type: object
    AppChangeBody:
      properties:
        info:
          $ref: '#/components/schemas/AppInfoChange'
      required:
      - info
      type: object
    AppChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/AppChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
    ParentNatRuleAppRelationship:
      properties:
        behaviour:
          enum:
          - MATCH
          - TRANSLATED
          type: string
        id:
          format: uuid
          type: string
        policyId:
          format: uuid
          type: string
      required:
      - behaviour
      - id
      - policyId
      type: object
    TargetRelationshipChanges:
      properties:
        add:
          items:
            type: string
          type: array
        rem:
          items:
            type: string
          type: array
      type: object
    NatTranslatedInfoChange:
      properties:
        ap:
          $ref: '#/components/schemas/RelationshipChanges'
        dstEp:
          $ref: '#/components/schemas/RelationshipChanges'
        srcEp:
          $ref: '#/components/schemas/RelationshipChanges'
      type: object
    RuleId:
      properties:
        id:
          format: uuid
          type: string
        policyId:
          format: uuid
          type: string
      required:
      - id
      - policyId
      type: object
    MpmChangesetContent:
      properties:
        extIds:
          items:
            type: string
          type: array
        managers:
          items:
            $ref: '#/components/schemas/ManagerChange'
          type: array
      required:
      - managers
      type: object
    ManagerChangeError:
      properties:
        apErrs:
          items:
            $ref: '#/components/schemas/AppChangeError'
          type: array
        apgErrs:
          items:
            $ref: '#/components/schemas/AppGroupChangeError'
          type: array
        duplicateId:
          type: boolean
        duplicateName:
          type: boolean
        epErrs:
          items:
            $ref: '#/components/schemas/EndpointChangeError'
          type: array
        epgErrs:
          items:
            $ref: '#/components/schemas/EndpointGroupChangeError'
          type: array
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        policyErrs:
          items:
            $ref: '#/components/schemas/PolicyChangeError'
          type: array
        ticketError:
          $ref: '#/components/schemas/TicketError'
        undeletedDeviceSetErrs:
          items:
            type: string
          type: array
      required:
      - id
      type: object
    EndpointChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/EndpointChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
    MpmDynamicGroupRelationshipChanges:
      properties:
        add:
          items:
            type: string
          type: array
        rem:
          items:
            type: string
          type: array
      type: object
    MpmChangesetContentError:
      properties:
        managerErrs:
          items:
            $ref: '#/components/schemas/ManagerChangeError'
          type: array
      type: object
    UndeletedAppRelationshipErrors:
      properties:
        grpRefs:
          items:
            format: uuid
            type: string
          type: array
        natRuleRefs:
          items:
            $ref: '#/components/schemas/ParentNatRuleAppRelationship'
          type: array
        ruleRefs:
          items:
            $ref: '#/components/schemas/RuleId'
          type: array
      type: object
    NatRuleInfoChange:
      properties:
        appNatType:
          enum:
          - MATCH
          - STATIC
          type: string
        description:
          type: string
        dstNatType:
          enum:
          - MATCH
          - STATIC
          type: string
        enabled:
          type: boolean
        ruleGroup:
          type: string
        srcNatType:
          enum:
          - MATCH
          - STATIC
          - HIDE
          type: string
      type: object
    ManagerChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/ManagerChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
    EndpointInfoChange:
      properties:
        description:
          type: string
        name:
          type: string
        value:
          type: string
      type: object
    MpmDynamicGroupRelationshipChangeError:
      properties:
        add:
          items:
            type: string
          type: array
        rem:
          items:
            type: string
          type: array
        ticketError:
          $ref: '#/components/schemas/TicketError'
      type: object
    EndpointChangeError:
      properties:
        duplicateId:
          type: boolean
        duplicateName:
          type: boolean
        id:
          format: uuid
          type: string
        missing:
          type: boolean
        ticketError:
          $ref: '#/components/schemas/TicketError'
        undeletedRelErrs:
          $ref: '#/components/schemas/UndeletedEndpointRelationshipErrors'
      required:
      - id
      type: object
    RelationshipChangeError:
      properties:
        add:
          items:
            format: uuid
            type: string
          type: array
        rem:
          items:
            format: uuid
            type: string
          type: array
        ticketError:
          $ref: '#/components/schemas/TicketError'
      type: object
    NatRuleRelationshipChangesError:
      properties:
        add:
          items:
            format: uuid
            type: string
          type: array
        errorMessage:
          type: string
        rem:
          items:
            format: uuid
            type: string
          type: array
        ticketError:
          $ref: '#/components/schemas/TicketError'
      type: object
    EndpointGroupChange:
      properties:
        action:
          enum:
          - CREATE
          - UPDATE
          - DELETE
          type: string
        body:
          $ref: '#/components/schemas/EndpointGroupChangeBody'
        extId:
          type: string
        id:
          format: uuid
          type: string
      required:
      - action
      - id
      type: object
  securitySchemes:
    BearerJWT:
      bearerFormat: jwt
      scheme: bearer
      type: http