Palo Alto Networks IAM API

Prisma Cloud identity and access management (IAM) security provides: * Visiblity—Query all relevant IAM entities * Gonvernance—Monitor your cloud environment for overly-used permissions * Response—Automatically remediate permissions The IAM security endpoints enable you to investigate IAM data programmatically. See [Primsa Cloud IAM Security](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-admin/prisma-cloud-iam-security/what-is-prisma-cloud-iam-security.html) for more information. ### Error Handling Like other Prisma Cloud public API requests, the IAM security API requests return standard HTTP response codes. Unlike most other CSPM API error handling, IAM security API error responses do not include an [x-redlock-status](//prisma-cloud/api/cspm/api-errors) in the response header. ### Pagination You can control the number of items in a response for endpoints that support pagination. Use request parameter **limit** to control the maximum number of items in a response. If the response includes **data.nextPageToken**, use **data.nextPageToken** as the request parameter **pageToken** in a request for the next page of data. The following table summarizes the request parameters for pagination: Request Parameter | Description -----------| ------- **limit** | Maximum number of items to return in a page. **pageToken** | Use the **data.nextPageToken** value from the previous response object to return the next page of data.

OpenAPI Specification

palo-alto-networks-iam-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Palo Alto Networks IAM API
  version: '1.0'
  description: 'Operations tagged IAM across 3 of this provider''s published API definitions: palo-alto-cspm-consolidated-spec-cspm-spec-openapi.json, palo-alto-cspm-iammicroservice-openapi.json, palo-alto-cspm-iamv2microservice-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.prismacloud.io
- url: https://api2.prismacloud.io
- url: https://api3.prismacloud.io
- url: https://api4.prismacloud.io
- url: https://api.anz.prismacloud.io
- url: https://api.eu.prismacloud.io
- url: https://api2.eu.prismacloud.io
- url: https://api.gov.prismacloud.io
- url: https://api.prismacloud.cn
- url: https://api.ca.prismacloud.io
- url: https://api.sg.prismacloud.io
- url: https://api.uk.prismacloud.io
- url: https://api.ind.prismacloud.io
- url: https://api.jp.prismacloud.io
- url: https://api.fr.prismacloud.io
tags:
- name: IAM
  description: "Prisma Cloud identity and access management (IAM) security provides:\n* Visiblity—Query all relevant IAM entities\n* Gonvernance—Monitor your cloud environment for overly-used permissions\n* Response—Automatically remediate permissions\n\nThe IAM security endpoints enable you to investigate IAM data programmatically.\n\nSee [Primsa Cloud IAM Security](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-admin/prisma-cloud-iam-security/what-is-prisma-cloud-iam-security.html)\nfor more information.\n\n\n### Error Handling\n\nLike other Prisma Cloud public API requests, the IAM security API requests return standard HTTP response codes. \nUnlike most other CSPM API error handling, IAM security API error responses do not include an [x-redlock-status](//prisma-cloud/api/cspm/api-errors)\nin the response header.\n\n\n### Pagination\n\nYou can control the number of items in a response for endpoints that support pagination. \nUse request parameter **limit** to control the maximum number of items in a response. If the response includes\n**data.nextPageToken**, use **data.nextPageToken** as the request parameter **pageToken** in a request for\nthe next page of data. \n\nThe following table summarizes the request parameters for pagination:\n\nRequest Parameter  | Description  \n-----------| -------\n**limit** | Maximum number of items to return in a page.\n**pageToken** | Use the **data.nextPageToken** value from the previous response object to return the next page of data.\n"
paths:
  /api/v1/permission:
    post:
      tags:
      - IAM
      summary: Get Permissions
      description: 'Returns the results of a given [IAM query](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-rql-reference/rql-reference/iam-query.html).


        If you set the **Accept** request header to **appliation/json**, the response object contains an array of items with permissions data.


        The request parameter **limit** determines the number of items—for example, permissions—in the response object. If the amount of available data is greater than the specified **limit**, use the response object attribute **data.nextPageToken** as the request parameter **pageToken** in [Get Permissions Next Page](/prisma-cloud/api/cspm/get-next-permissions-page-with-post) to request the next page of data.


        If you set the **Accept** request header to **text/csv**, the response is a CSV that contains permissions details.'
      operationId: get-permissions-with-post
      requestBody:
        description: Model for Permission Search Request DTO
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionSearchRequestDto'
        required: true
      security:
      - x-redlock-auth: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionSearchResponseDto'
            text/csv:
              schema:
                type: string
        '201':
          description: Created
        '401':
          description: Unauthorize
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
  /api/v1/permission/page:
    post:
      tags:
      - IAM
      summary: Get Permissions Next Page
      operationId: get-next-permissions-page-with-post
      description: Given a request parameter **pageToken**, returns the next page of permissions data. You can find the value for **pageToken** from the response object of a previous request to [Get Permissions](/prisma-cloud/api/cspm/get-permissions-with-post).
      requestBody:
        description: Model for Permission Search Page Request DTO
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionSearchPageRequestDto'
        required: true
      security:
      - x-redlock-auth: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionSearchResultDataDto'
            text/plain:
              schema:
                $ref: '#/components/schemas/PermissionSearchResultDataDto'
        '201':
          description: Created
        '401':
          description: Unauthorize
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
  /api/v1/permission/access:
    post:
      tags:
      - IAM
      summary: Get Permissions Access
      description: "Given a permission ID and an \n[IAM query](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-rql-reference/rql-reference/iam-query.html),\nreturns data about the actual permission usage (last access).\n\n\nThe request parameter **limit** determines the number of items—that is, last access—in the response object. \n\n\nIf the amount of available data is greater than the \nspecified **limit**, use the response object attribute **data.nextPageToken** as the request parameter **pageToken** in \n[Get Permissions Access Next Page](/prisma-cloud/api/cspm/get-next-permissions-access-with-post) to request the\nnext page of data.\n"
      operationId: get-permissions-access-with-post
      requestBody:
        description: Model for Permission Access Request DTO
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionAccessRequestDto'
        required: true
      security:
      - x-redlock-auth: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionAccessResponseDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
  /api/v1/permission/access/page:
    post:
      tags:
      - IAM
      summary: Get Permissions Access Next Page
      description: "Given a request parameter **pageToken**, returns the next page of permissions data.\nYou can find the value for **pageToken** from the response object of a previous request to \n[Get Permissions Access](/prisma-cloud/api/cspm/get-permissions-access-with-post)\n"
      operationId: get-next-permissions-access-with-post
      requestBody:
        description: Model for Permission Access Page Request DTO
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionAccessPageRequestDto'
        required: true
      security:
      - x-redlock-auth: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionAccessResultDataDto'
        '201':
          description: Created
        '401':
          description: Unauthorize
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
  /api/v1/permission/alert/remediation:
    post:
      tags:
      - IAM
      summary: Get Remediation
      operationId: get-remediation-with-post
      description: Returns a list of remediations for the specified alert IDs.
      requestBody:
        description: Model for RemediationRequestDto
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RemediationRequestDto'
        required: true
      security:
      - x-redlock-auth: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RemediationResponseDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
  /api/v1/permission/alert/search:
    get:
      tags:
      - IAM
      summary: Get IAM Query
      operationId: get-rql-with-get
      description: Returns the IAM query for the specified alert ID.
      parameters:
      - name: alertId
        in: query
        description: alertId
        required: true
        schema:
          type: string
      security:
      - x-redlock-auth: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RqlResponseDto'
        '401':
          description: Unauthorize
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
  /api/v1/suggest:
    post:
      tags:
      - IAM
      summary: Get Query Suggestions
      operationId: get-suggestions-with-post
      description: Given a partial IAM query, returns suggestions to append to your query either to create a complete valid IAM query or to build a further partial query. Also indicates whether or not the query you input is already a valid IAM query.
      requestBody:
        description: Model for SuggestRequestDto
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SuggestRequestDto'
        required: true
      security:
      - x-redlock-auth: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestResponseDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
  /iam/api/v3/search/permission:
    post:
      tags:
      - IAM
      summary: Get Permissions V3
      description: Returns a page of permissions and a page token for the next page if applicable
      operationId: search-permissions-v3
      parameters:
      - name: limit
        in: query
        description: Query records limit
        required: false
        schema:
          type: integer
          format: int32
        example: 5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionSearchRequestDtoV3'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionSearchResponseDtoV3'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Throttled
          headers:
            X-RateLimit-Remaining:
              style: simple
              schema:
                type: integer
            X-RateLimit-Requested-Tokens:
              style: simple
              schema:
                type: integer
            X-RateLimit-Burst-Capacity:
              style: simple
              schema:
                type: integer
            X-RateLimit-Replenish-Rate:
              style: simple
              schema:
                type: integer
      x-microservice: 'true'
      x-public: 'true'
      security:
      - x-redlock-auth: []
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
    - url: https://api.anz.prismacloud.io
    - url: https://api.eu.prismacloud.io
    - url: https://api2.eu.prismacloud.io
    - url: https://api.gov.prismacloud.io
    - url: https://api.prismacloud.cn
    - url: https://api.ca.prismacloud.io
    - url: https://api.sg.prismacloud.io
    - url: https://api.uk.prismacloud.io
    - url: https://api.ind.prismacloud.io
    - url: https://api.jp.prismacloud.io
    - url: https://api.fr.prismacloud.io
  /iam/api/v4/search/permission:
    post:
      tags:
      - IAM
      summary: Get Permissions V4
      description: Returns permissions grouped by requested fields and a page token for the next page if applicable.
      operationId: permission-search-v4
      parameters:
      - name: limit
        in: query
        description: Query records limit
        required: false
        schema:
          type: integer
          format: int32
        example: 100
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionSearchV4RequestDto'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionSearchV4ResponseDto'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Throttled
          headers:
            X-RateLimit-Remaining:
              style: simple
              schema:
                type: integer
            X-RateLimit-Requested-Tokens:
              style: simple
              schema:
                type: integer
            X-RateLimit-Burst-Capacity:
              style: simple
              schema:
                type: integer
            X-RateLimit-Replenish-Rate:
              style: simple
              schema:
                type: integer
      x-microservice: 'true'
      x-public: 'true'
      security:
      - x-redlock-auth: []
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
    - url: https://api.anz.prismacloud.io
    - url: https://api.eu.prismacloud.io
    - url: https://api2.eu.prismacloud.io
    - url: https://api.gov.prismacloud.io
    - url: https://api.prismacloud.cn
    - url: https://api.ca.prismacloud.io
    - url: https://api.sg.prismacloud.io
    - url: https://api.uk.prismacloud.io
    - url: https://api.ind.prismacloud.io
    - url: https://api.jp.prismacloud.io
    - url: https://api.fr.prismacloud.io
  /iam/api/v3/permission/{permission-id}/list_access:
    post:
      tags:
      - IAM
      summary: Get Permission Accesses V3
      description: Returns a page of permission's last acceses and a page token for the next page if applicable
      operationId: permissions-accesses-v3
      parameters:
      - name: permission-id
        in: path
        description: The permission id. Can be retrieved from search/permission api
        required: true
        schema:
          type: string
          description: The permission id. Can be retrieved from search/permission api
          example: 06c3cb4403ac276ff59679139b8e6afca2afe93100c8b39014f033ca0339ff0f
        example: 06c3cb4403ac276ff59679139b8e6afca2afe93100c8b39014f033ca0339ff0f
      - name: limit
        in: query
        description: Query records limit
        required: false
        schema:
          type: integer
          format: int32
        example: 5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionAccessRequestDtoV3'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionAccessResponseDtoV3'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Throttled
          headers:
            X-RateLimit-Remaining:
              style: simple
              schema:
                type: integer
            X-RateLimit-Requested-Tokens:
              style: simple
              schema:
                type: integer
            X-RateLimit-Burst-Capacity:
              style: simple
              schema:
                type: integer
            X-RateLimit-Replenish-Rate:
              style: simple
              schema:
                type: integer
      x-microservice: 'true'
      x-public: 'true'
      security:
      - x-redlock-auth: []
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
    - url: https://api.anz.prismacloud.io
    - url: https://api.eu.prismacloud.io
    - url: https://api2.eu.prismacloud.io
    - url: https://api.gov.prismacloud.io
    - url: https://api.prismacloud.cn
    - url: https://api.ca.prismacloud.io
    - url: https://api.sg.prismacloud.io
    - url: https://api.uk.prismacloud.io
    - url: https://api.ind.prismacloud.io
    - url: https://api.jp.prismacloud.io
    - url: https://api.fr.prismacloud.io
  /iam/api/v2/suggestion:
    post:
      tags:
      - IAM
      summary: Get Query Suggestions V2
      description: Suggest auto completion for RQL and notify whether the current RQL is valid or not
      operationId: iam-suggest-v2
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SuggestRequestDto_2'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestResponseDto_2'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Throttled
          headers:
            X-RateLimit-Remaining:
              style: simple
              schema:
                type: integer
            X-RateLimit-Requested-Tokens:
              style: simple
              schema:
                type: integer
            X-RateLimit-Burst-Capacity:
              style: simple
              schema:
                type: integer
            X-RateLimit-Replenish-Rate:
              style: simple
              schema:
                type: integer
      x-microservice: 'true'
      x-public: 'true'
      security:
      - x-redlock-auth: []
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
    - url: https://api.anz.prismacloud.io
    - url: https://api.eu.prismacloud.io
    - url: https://api2.eu.prismacloud.io
    - url: https://api.gov.prismacloud.io
    - url: https://api.prismacloud.cn
    - url: https://api.ca.prismacloud.io
    - url: https://api.sg.prismacloud.io
    - url: https://api.uk.prismacloud.io
    - url: https://api.ind.prismacloud.io
    - url: https://api.jp.prismacloud.io
    - url: https://api.fr.prismacloud.io
  /iam/api/v2/search/iam_config:
    post:
      tags:
      - IAM
      summary: Get Permissions Role or Policy Definition V2
      description: Returns the raw config (policy/role definition) which the permission was calculated from
      operationId: permission-raw-config-definition
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PermissionRawDataRequestDto'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionRawDataResponseDto'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Throttled
          headers:
            X-RateLimit-Remaining:
              style: simple
              schema:
                type: integer
            X-RateLimit-Requested-Tokens:
              style: simple
              schema:
                type: integer
            X-RateLimit-Burst-Capacity:
              style: simple
              schema:
                type: integer
            X-RateLimit-Replenish-Rate:
              style: simple
              schema:
                type: integer
      x-microservice: 'true'
      x-public: 'true'
      security:
      - x-redlock-auth: []
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
    - url: https://api.anz.prismacloud.io
    - url: https://api.eu.prismacloud.io
    - url: https://api2.eu.prismacloud.io
    - url: https://api.gov.prismacloud.io
    - url: https://api.prismacloud.cn
    - url: https://api.ca.prismacloud.io
    - url: https://api.sg.prismacloud.io
    - url: https://api.uk.prismacloud.io
    - url: https://api.ind.prismacloud.io
    - url: https://api.jp.prismacloud.io
    - url: https://api.fr.prismacloud.io
  /iam/api/v1/asset/{asset-id}/related-asset:
    post:
      tags:
      - IAM
      summary: Get Cloud Identity Inventory (CII) Resource Related Assets
      description: Get assets related to Cloud Identity Inventory (CII) resource.
      operationId: cii-related-assets-v1
      parameters:
      - name: asset-id
        in: path
        description: The asset UAI where you want to find it related assets
        required: true
        schema:
          type: string
          description: The asset UAI where you want to find it related assets
          example: 681390424b288d835f5cd03e7bfb0993
        example: 681390424b288d835f5cd03e7bfb0993
      - name: limit
        in: query
        description: Query client records limit, return MAX(0, MIN(client.limit, service.limit))
        required: false
        schema:
          type: string
          description: Query client records limit, return MAX(0, MIN(client.limit, service.limit))
          example: 5
        example: 5
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloudAssetRelatedAssetsRequestDto'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CloudAssetRelatedAssetsResponseDto'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Throttled
          headers:
            X-RateLimit-Remaining:
              style: simple
              schema:
                type: integer
            X-RateLimit-Requested-Tokens:
              style: simple
              schema:
                type: integer
            X-RateLimit-Burst-Capacity:
              style: simple
              schema:
                type: integer
            X-RateLimit-Replenish-Rate:
              style: simple
              schema:
                type: integer
      x-microservice: 'true'
      x-public: 'true'
      security:
      - x-redlock-auth: []
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
    - url: https://api.anz.prismacloud.io
    - url: https://api.eu.prismacloud.io
    - url: https://api2.eu.prismacloud.io
    - url: https://api.gov.prismacloud.io
    - url: https://api.prismacloud.cn
    - url: https://api.ca.prismacloud.io
    - url: https://api.sg.prismacloud.io
    - url: https://api.uk.prismacloud.io
    - url: https://api.ind.prismacloud.io
    - url: https://api.jp.prismacloud.io
    - url: https://api.fr.prismacloud.io
  /iam/api/v2/alert/{alertId}/remediation_command:
    get:
      tags:
      - IAM
      summary: Get Remediation Command
      description: Get remediation command for an alert
      operationId: alert-remediation-command
      parameters:
      - name: alertId
        in: path
        description: The alert id
        required: true
        schema:
          type: string
          description: The alert id
          example: I-34537
        example: I-34537
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RemediationResponseDtoV2'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponseDto'
        '429':
          description: Throttled
          headers:
            X-RateLimit-Remaining:
              style: simple
              schema:
                type: integer
            X-RateLimit-Requested-Tokens:
              style: simple
              schema:
                type: integer
            X-RateLimit-Burst-Capacity:
              style: simple
              schema:
                type: integer
            X-RateLimit-Replenish-Rate:
              style: simple
              schema:
                type: integer
      x-microservice: 'true'
      x-public: 'true'
      security:
      - x-redlock-auth: []
    servers:
    - url: https://api.prismacloud.io
    - url: https://api2.prismacloud.io
    - url: https://api3.prismacloud.io
    - url: https://api4.prismacloud.io
    - url: https://api.anz.prismacloud.io
    - url: https://api.eu.prismacloud.io
    - url: https://api2.eu.prismacloud.io
    - url: https://api.gov.prismacloud.io
    - url: https://api.prismacloud.cn
    - url: https://api.ca.prismacloud.io
    - url: https://api.sg.prismacloud.io
    - url: https://api.uk.prismacloud.io
    - url: https://api.ind.prismacloud.io
    - url: https://api.jp.prismacloud.io
    - url: https://api.fr.prismacloud.io
  /iam/api/v2/alert/{alertId}/query:
    get:
      tags:
      - IAM
      summary: Get IAM Query V2
      description: Returns the query associated with an alert instance
      operationId: investigate-alert
      parameters:
      - name: alertId
        in: path
        description: The alert id
        required: true
        schema:
          type: string
          description: The alert id
          example: I-34537
        example: I-34537
      re

# --- truncated at 32 KB (96 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/palo-alto-networks/refs/heads/main/openapi/palo-alto-networks-iam-api-openapi.yml