Palo Alto Networks Manage Custom URL Categories API

The ManageCustomURLCategories API from Palo Alto Networks — 2 operation(s) for managecustomurlcategories.

OpenAPI Specification

palo-alto-networks-managecustomurlcategories-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact: {}
  description: "Palo Alto Networks provides a set of predefined URL filtering categories.  \nYou can also specify your own URL filtering categories using a customer URL category object. For example, create a custom list of URLs that you want to use as match criteria in a Security policy rule. \nYou can use the custom URL categories as a security policy match criteria.  \n\nFor more information, refer to the following links.\n- [Where Can I Find a Complete List of PAN-DB URL Filtering Categories?](https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000Cm5hCAC)\n- [Palo Alto Networks URL filtering](https://urlfiltering.paloaltonetworks.com/)\n- [Create a custom URL category for Cloud NGFW on AWS](https://docs.paloaltonetworks.com/cloud-ngfw/aws/cloud-ngfw-on-aws/rules-and-rulestacks/cloud-ngfw-security-rule-objects/create-a-custom-url-category-for-cloud-ngfw-on-aws)\n\n### Permission Policies\n\n| Action                                 | Local Firewall Administrator  | Local Rulestack Administrator | Global Rulestack Administrator |\n| -------------------------------------- | :---------------------------: | :---------------------------: | :----------------------------: |\n| Create Custom URL Category             | ☐                       | **☑**                   | **☑**                    | \n| Delete Custom URL Category             | ☐                       | **☑**                   | **☑**                    |                         \n| Update Custom URL Category             | ☐                       | **☑**                   | **☑**                    |  \n| Describe Custom URL Category           | **☑**                   | **☑**                   | **☑**                    |\n| List Custom URL Categories             | **☑**                   | **☑**                   | **☑**                    |\n"
  title: Manage Custom URL Categories API
  version: 1.0.0
servers:
- url: https://api.us-east-1.aws.cloudngfw.paloaltonetworks.com
tags:
- name: ManageCustomURLCategories
paths:
  /v1/config/rulestacks/{rulestackname}/urlcustomcategories:
    get:
      description: 'Retrieve the custom URL categories for a specified rulestack.

        '
      operationId: get-v1-config-rulestacks-rulestackname-urlcustomcategories
      parameters:
      - description: 'The name of the rulestack.

          '
        in: path
        name: rulestackname
        required: true
        schema:
          type: string
      - description: ''
        in: query
        name: nexttoken
        required: false
        schema:
          title: Nexttoken
          type: string
      - description: ''
        in: query
        name: candidate
        required: false
        schema:
          default: true
          title: Candidate
          type: boolean
      - description: ''
        in: query
        name: running
        required: false
        schema:
          default: false
          title: Running
          type: boolean
      - description: ''
        in: query
        name: uncommitted
        required: false
        schema:
          default: false
          title: Uncommitted
          type: boolean
      - description: ''
        in: query
        name: maxresults
        required: false
        schema:
          default: 1024
          maximum: 1024
          minimum: 1
          title: Maxresults
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCustomURLCategoriesResponse'
          description: OK
      summary: Retrieve custom URL categories
      tags:
      - ManageCustomURLCategories
    post:
      description: 'Create a custom URL filtering object to specify exceptions to URL category enforcement and create custom URL categories based on multiple URL categories.

        '
      operationId: post-v1-config-rulestacks-rulestackname-urlcustomcategories
      parameters:
      - description: 'The name of the rulestack.

          '
        in: path
        name: rulestackname
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateCustomURLCategoryRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateCustomURLCategoryResponse'
          description: OK
      summary: Create custom URL category
      tags:
      - ManageCustomURLCategories
  /v1/config/rulestacks/{rulestackname}/urlcustomcategories/{name}:
    delete:
      description: 'Delete a custom URL category for a specified rulestack.

        '
      operationId: delete-v1-config-rulestacks-rulestackname-urlcustomcategories-name
      parameters:
      - description: 'The name of the rulestack.

          '
        in: path
        name: rulestackname
        required: true
        schema:
          type: string
      - description: 'URL Category.

          '
        in: path
        name: name
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteCustomURLCategoryRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteCustomURLCategoryResponse'
          description: OK
      summary: Delete custom URL category
      tags:
      - ManageCustomURLCategories
    get:
      description: 'Retrieve the custom URL category for a specified rule group, including custom categories and default predefined ones.

        '
      operationId: get-v1-config-rulestacks-rulestackname-urlcustomcategories-name
      parameters:
      - description: 'The name of the rulestack.

          '
        in: path
        name: rulestackname
        required: true
        schema:
          type: string
      - description: 'URL Category.

          '
        in: path
        name: name
        required: true
        schema:
          type: string
      - description: ''
        in: query
        name: running
        required: false
        schema:
          default: true
          title: Running
          type: boolean
      - description: ''
        in: query
        name: candidate
        required: false
        schema:
          default: false
          title: Candidate
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DescribeCustomURLCategoryResponse'
          description: OK
      summary: Retrieve custom URL category
      tags:
      - ManageCustomURLCategories
    put:
      description: 'Modify the custom URL category for a specified rulestack.

        '
      operationId: put-v1-config-rulestacks-rulestackname-urlcustomcategories-name
      parameters:
      - description: 'The name of the rulestack.

          '
        in: path
        name: rulestackname
        required: true
        schema:
          type: string
      - description: 'URL Category.

          '
        in: path
        name: name
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateCustomURLCategoryRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateCustomURLCategoryResponse'
          description: OK
      summary: Update custom URL category
      tags:
      - ManageCustomURLCategories
components:
  schemas:
    UpdateCustomURLCategoryRequest:
      additionalProperties: false
      properties:
        Action:
          default: none
          enum:
          - none
          - allow
          - alert
          - block
          title: Action
          type: string
        AuditComment:
          title: Auditcomment
          type: string
        Description:
          maxLength: 255
          title: Description
          type: string
        UpdateToken:
          title: Updatetoken
          type: string
        UrlTargets:
          items:
            maxLength: 255
            type: string
          title: Urltargets
          type: array
      required:
      - UrlTargets
      title: UpdateCustomURLCategoryRequest
      type: object
    ListCustomURLCategoriesResponse.UncommittedCategory:
      additionalProperties: false
      properties:
        Name:
          title: Name
          type: string
        Operation:
          title: Operation
          type: string
      required:
      - Name
      - Operation
      title: UncommittedCategory
      type: object
    CreateCustomURLCategoryResponse.ResponseData:
      additionalProperties: false
      properties:
        CustomURLEntry:
          $ref: '#/components/schemas/CreateCustomURLCategoryResponse.CustomURLCategory'
        Name:
          title: Name
          type: string
        RuleStackName:
          title: Rulestackname
          type: string
      title: ResponseData
      type: object
    DescribeCustomURLCategoryResponse.Result:
      additionalProperties: false
      properties:
        ErrorCode:
          default: 0
          title: Errorcode
          type: integer
        Reason:
          title: Reason
          type: string
      title: Result
      type: object
    DescribeCustomURLCategoryResponse.CustomURLCategory:
      additionalProperties: false
      properties:
        Action:
          title: Action
          type: string
        AuditComment:
          title: Auditcomment
          type: string
        Description:
          maxLength: 255
          title: Description
          type: string
        UpdateToken:
          title: Updatetoken
          type: string
        UrlTargets:
          items:
            maxLength: 255
            type: string
          title: Urltargets
          type: array
      required:
      - UrlTargets
      title: CustomURLCategory
      type: object
    CreateCustomURLCategoryRequest:
      additionalProperties: false
      properties:
        Action:
          default: none
          enum:
          - none
          - allow
          - alert
          - block
          title: Action
          type: string
        AuditComment:
          title: Auditcomment
          type: string
        Description:
          maxLength: 255
          title: Description
          type: string
        Name:
          maxLength: 29
          pattern: ^[a-zA-Z][0-9a-zA-Z-]*$
          title: Name
          type: string
        UrlTargets:
          items:
            maxLength: 255
            type: string
          title: Urltargets
          type: array
      required:
      - Name
      - UrlTargets
      title: CreateCustomURLCategoryRequest
      type: object
    UpdateCustomURLCategoryResponse.Result:
      additionalProperties: false
      properties:
        ErrorCode:
          default: 0
          title: Errorcode
          type: integer
        Reason:
          title: Reason
          type: string
      title: Result
      type: object
    UpdateCustomURLCategoryResponse.CustomURLCategory:
      additionalProperties: false
      properties:
        Action:
          title: Action
          type: string
        AuditComment:
          title: Auditcomment
          type: string
        Description:
          maxLength: 255
          title: Description
          type: string
        UpdateToken:
          title: Updatetoken
          type: string
        UrlTargets:
          items:
            maxLength: 255
            type: string
          title: Urltargets
          type: array
      required:
      - UrlTargets
      title: CustomURLCategory
      type: object
    ListCustomURLCategoriesResponse.Result:
      additionalProperties: false
      properties:
        ErrorCode:
          default: 0
          title: Errorcode
          type: integer
        Reason:
          title: Reason
          type: string
      title: Result
      type: object
    DescribeCustomURLCategoryResponse:
      additionalProperties: false
      properties:
        Response:
          $ref: '#/components/schemas/DescribeCustomURLCategoryResponse.ResponseData'
        ResponseStatus:
          $ref: '#/components/schemas/DescribeCustomURLCategoryResponse.Result'
      title: DescribeCustomURLCategoryResponse
      type: object
    UpdateCustomURLCategoryResponse:
      additionalProperties: false
      properties:
        Response:
          $ref: '#/components/schemas/UpdateCustomURLCategoryResponse.ResponseData'
        ResponseStatus:
          $ref: '#/components/schemas/UpdateCustomURLCategoryResponse.Result'
      title: UpdateCustomURLCategoryResponse
      type: object
    DescribeCustomURLCategoryResponse.CustomURLCategoryDB:
      additionalProperties: false
      properties:
        URLCategoryEntry:
          $ref: '#/components/schemas/DescribeCustomURLCategoryResponse.CustomURLCategory'
        operation:
          enum:
          - add
          - update
          - delete
          title: Operation
          type: string
        pk:
          title: Pk
          type: string
        sk:
          maxLength: 29
          pattern: ^[a-zA-Z][0-9a-zA-Z-]*$
          title: Sk
          type: string
      required:
      - pk
      - sk
      title: CustomURLCategoryDB
      type: object
    CreateCustomURLCategoryResponse.CustomURLCategory:
      additionalProperties: false
      properties:
        Action:
          title: Action
          type: string
        AuditComment:
          title: Auditcomment
          type: string
        Description:
          maxLength: 255
          title: Description
          type: string
        UpdateToken:
          title: Updatetoken
          type: string
        UrlTargets:
          items:
            maxLength: 255
            type: string
          title: Urltargets
          type: array
      required:
      - UrlTargets
      title: CustomURLCategory
      type: object
    CreateCustomURLCategoryResponse:
      additionalProperties: false
      properties:
        Response:
          $ref: '#/components/schemas/CreateCustomURLCategoryResponse.ResponseData'
        ResponseStatus:
          $ref: '#/components/schemas/CreateCustomURLCategoryResponse.Result'
      title: CreateCustomURLCategoryResponse
      type: object
    DescribeCustomURLCategoryResponse.ResponseData:
      additionalProperties: false
      properties:
        Name:
          title: Name
          type: string
        RuleStackName:
          title: Rulestackname
          type: string
        URLCategoryCandidate:
          $ref: '#/components/schemas/DescribeCustomURLCategoryResponse.CustomURLCategoryDB'
        URLCategoryRunning:
          $ref: '#/components/schemas/DescribeCustomURLCategoryResponse.CustomURLCategoryDB'
      title: ResponseData
      type: object
    UpdateCustomURLCategoryResponse.ResponseData:
      additionalProperties: false
      properties:
        CustomURLEntry:
          $ref: '#/components/schemas/UpdateCustomURLCategoryResponse.CustomURLCategory'
        Name:
          title: Name
          type: string
        RuleStackName:
          title: Rulestackname
          type: string
      title: ResponseData
      type: object
    DeleteCustomURLCategoryResponse.ResponseData:
      additionalProperties: false
      properties:
        CustomURLEntry:
          $ref: '#/components/schemas/DeleteCustomURLCategoryResponse.CustomURLCategory'
        Name:
          title: Name
          type: string
        RuleStackName:
          title: Rulestackname
          type: string
      title: ResponseData
      type: object
    DeleteCustomURLCategoryResponse.Result:
      additionalProperties: false
      properties:
        ErrorCode:
          default: 0
          title: Errorcode
          type: integer
        Reason:
          title: Reason
          type: string
      title: Result
      type: object
    CreateCustomURLCategoryResponse.Result:
      additionalProperties: false
      properties:
        ErrorCode:
          default: 0
          title: Errorcode
          type: integer
        Reason:
          title: Reason
          type: string
      title: Result
      type: object
    DeleteCustomURLCategoryResponse:
      additionalProperties: false
      properties:
        Response:
          $ref: '#/components/schemas/DeleteCustomURLCategoryResponse.ResponseData'
        ResponseStatus:
          $ref: '#/components/schemas/DeleteCustomURLCategoryResponse.Result'
      title: DeleteCustomURLCategoryResponse
      type: object
    DeleteCustomURLCategoryResponse.CustomURLCategory:
      additionalProperties: false
      properties:
        Action:
          title: Action
          type: string
        AuditComment:
          title: Auditcomment
          type: string
        Description:
          maxLength: 255
          title: Description
          type: string
        UpdateToken:
          title: Updatetoken
          type: string
        UrlTargets:
          items:
            maxLength: 255
            type: string
          title: Urltargets
          type: array
      required:
      - UrlTargets
      title: CustomURLCategory
      type: object
    ListCustomURLCategoriesResponse.ResponseData:
      additionalProperties: false
      properties:
        CategoriesCandidate:
          items:
            type: string
          title: Categoriescandidate
          type: array
        CategoriesPreDefined:
          items:
            type: string
          title: Categoriespredefined
          type: array
        CategoriesRunning:
          items:
            type: string
          title: Categoriesrunning
          type: array
        CategoriesUncommitted:
          items:
            $ref: '#/components/schemas/ListCustomURLCategoriesResponse.UncommittedCategory'
          title: Categoriesuncommitted
          type: array
        NextToken:
          title: Nexttoken
          type: string
        RuleStackName:
          title: Rulestackname
          type: string
      title: ResponseData
      type: object
    DeleteCustomURLCategoryRequest:
      additionalProperties: false
      properties: {}
      title: DeleteCustomURLCategoryRequest
      type: object
    ListCustomURLCategoriesResponse:
      additionalProperties: false
      properties:
        Response:
          $ref: '#/components/schemas/ListCustomURLCategoriesResponse.ResponseData'
        ResponseStatus:
          $ref: '#/components/schemas/ListCustomURLCategoriesResponse.Result'
      title: ListCustomURLCategoriesResponse
      type: object