Imperva Site Management API

Add, remove, and update sites.

OpenAPI Specification

imperva-site-management-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Cloud Application Security Account Management Site Management API
  license:
    name: Imperva License Agreement.
    url: http://www.imperva.com/other/license_agreement.asp
  version: '1.0'
  description: Add, delete, and modify accounts. Get account details.
servers:
- url: https://my.imperva.com
  description: Imperva API server
  variables: {}
security:
- api_key: []
- api_id: []
tags:
- name: Site Management
  description: Add, remove, and update sites.
paths:
  /api/prov/v1/sites/performance/caching-rules/add:
    post:
      tags:
      - Site Management
      summary: Add a cache rule
      description: Use this operation for adding a cache rule
      operationId: addCacheRule
      parameters:
      - name: action
        in: query
        description: Rule action. See Possible action parameter values.<br/>Possible action parameter values:<br/><ul><li><b>HTTP_CACHE_MAKE_STATIC</b> Cache Resource</li><li><b>HTTP_CACHE_CLIENT_CACHE_CTL</b> Cache Resource on Client</li><li><b>HTTP_CACHE_FORCE_UNCACHEABLE</b> Don't Cache Resource</li><li><b>HTTP_CACHE_DIFFERENTIATE_SSL</b> Differentiate Cache Key by HTTP/HTTPS Scheme</li><li><b>HTTP_CACHE_DIFFERENTIATE_BY_HEADER</b> Differentiate Cache Key by Header</li><li><b>HTTP_CACHE_DIFFERENTIATE_BY_COOKIE</b> Differentiate Cache Key by Cookie</li><li><b>HTTP_CACHE_IGNORE_PARAMS</b> Ignore Parameters in Cache Key</li><li><b>HTTP_CACHE_IGNORE_AUTH_HEADER</b> CacheRuleAction.HTTP_CACHE_IGNORE_AUTH_HEADER</li><li><b>HTTP_CACHE_FORCE_VALIDATION</b> Force User Authentication</li><li><b>HTTP_CACHE_ADD_TAG</b> Create Tag</li><li><b>HTTP_CACHE_ENRICH_CACHE_KEY</b> Enrich Cache Key</li></ul>
        required: true
        schema:
          type: string
        example: HTTP_CACHE_CREATE_TAG
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: name
        in: query
        description: Rule name.
        required: true
        schema:
          type: string
        example: rule1
      - name: filter
        in: query
        description: Rule will trigger only a request that matches this filter. For more details on filters, see <a href="https://docs.imperva.com/csh?context=rule_syntax">Syntax Guide</a>.
        schema:
          type: string
        example: URL ==  /admin
      - name: ttl
        in: query
        description: Rule TTL. Only relevant when action is HTTP_CACHE_MAKE_STATIC or HTTP_CACHE_CLIENT_CACHE_CTL
        schema:
          type: string
        example: TTL value
      - name: ttl_unit
        in: query
        description: Rule TTL time unit.<br/>Must be one of SECONDS, MINUTES, HOURS, DAYS or WEEKS. If no time unit is provided, SECONDS is used.<br/>Only relevant when action is HTTP_CACHE_MAKE_STATIC or HTTP_CACHE_CLIENT_CACHE_CTL
        schema:
          type: string
        example: SECONDS
      - name: differentiated_by_value
        in: query
        description: Value to differentiate by. HTTP_CACHE_DIFFERENTIATE_BY_HEADER - header name, HTTP_CACHE_DIFFERENTIATE_BY_COOKIE - cookie name, HTTP_CACHE_DIFFERENTIATE_BY_GEO - geo location <br/>(ISO 3166-1 alpha-2 country codes ), otherwise irrelevant.
        schema:
          type: string
        example: cookie name
      - name: params
        in: query
        description: Comma separated list of parameters to ignore.
        schema:
          type: string
        example: '{a,b,c}'
      - name: all_params
        in: query
        description: 'When set to <b>true</b>: all parameters in cache key will be ignored.<br/>Default: false.<br/>Relevant for HTTP_CACHE_IGNORE_PARAMS action'
        schema:
          type: boolean
        example: true
      - name: tag_name
        in: query
        description: The name of the tag to add.
        schema:
          type: string
        example: tag example
      - name: text
        in: query
        description: Add text to the cache key as suffix. Relevant for the HTTP_CACHE_ENRICH_CACHE_KEY action
        schema:
          type: string
        example: suffix
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - Unknown/unauthorized site_id<br/>9415 - Operation not allowed<br/>2 - Invalid input
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ApiResultAddCacheRule'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/caching-rules/delete:
    post:
      tags:
      - Site Management
      summary: Delete a cache rule
      description: Use this operation for deleting a cache rule
      operationId: deleteCacheRule
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: rule_id
        in: query
        description: ID of the rule to change.
        required: true
        schema:
          type: integer
          format: int64
        example: 3746
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - Unknown/unauthorized site_id<br/>9415 - Operation not allowed<br/>2 - Invalid input<br/>2002 - Object is not found<br/>1 - Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/caching-rules/enable:
    post:
      tags:
      - Site Management
      summary: Enable or disable cache rule
      description: Use this operation for enabling or disable cache rule
      operationId: enableDisableCacheRule
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: rule_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 3746
      - name: enable
        in: query
        description: When true, the rule will be enabled. Set to false to disable.
        required: true
        schema:
          type: string
        example: true
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - Unknown/unauthorized site_id<br/>9415 - Operation not allowed<br/>2 - Invalid input<br/>2002 - Object is not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/caching-rules/list:
    post:
      tags:
      - Site Management
      summary: List cache rules for a given site
      description: Use this operation for representing cache rules for a given site
      operationId: listCacheRules
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: string
        example: 10
      - name: page_size
        in: query
        description: 'The number of objects to return in the response.<br/>Default is 50.<br/>Maximum: 100'
        schema:
          type: string
        example: 75
      - name: page_num
        in: query
        description: The page to return starting from 0. Default is 0.
        schema:
          type: string
        example: 0
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - Unknown/unauthorized site_id<br/>9415 - Operation not allowed<br/>2 - Invalid input<br/>
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/SiteCacheRuleResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/caching-rules/edit:
    post:
      tags:
      - Site Management
      summary: Edit a cache rule
      description: Use this operation for editing a cache rule
      operationId: editCacheRule
      parameters:
      - name: action
        in: query
        description: Rule action. See Possible action parameter values.<br/>Possible action parameter values:<br/><ul><li><b>HTTP_CACHE_MAKE_STATIC</b> Cache Resource</li><li><b>HTTP_CACHE_CLIENT_CACHE_CTL</b> Cache Resource on Client</li><li><b>HTTP_CACHE_FORCE_UNCACHEABLE</b> Don't Cache Resource</li><li><b>HTTP_CACHE_DIFFERENTIATE_SSL</b> Differentiate Cache Key by HTTP/HTTPS Scheme</li><li><b>HTTP_CACHE_DIFFERENTIATE_BY_HEADER</b> Differentiate Cache Key by Header</li><li><b>HTTP_CACHE_DIFFERENTIATE_BY_COOKIE</b> Differentiate Cache Key by Cookie</li><li><b>HTTP_CACHE_IGNORE_PARAMS</b> Ignore Parameters in Cache Key</li><li><b>HTTP_CACHE_IGNORE_AUTH_HEADER</b> CacheRuleAction.HTTP_CACHE_IGNORE_AUTH_HEADER</li><li><b>HTTP_CACHE_FORCE_VALIDATION</b> Force User Authentication</li><li><b>HTTP_CACHE_ADD_TAG</b> Create Tag</li><li><b>HTTP_CACHE_ENRICH_CACHE_KEY</b> Enrich Cache Key</li></ul>
        required: true
        schema:
          type: string
        example: HTTP_CACHE_CREATE_TAG
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: rule_id
        in: query
        description: ID of the rule to change.
        required: true
        schema:
          type: integer
          format: int64
        example: 3746
      - name: name
        in: query
        description: Rule name.
        required: true
        schema:
          type: string
        example: rule1
      - name: filter
        in: query
        description: Rule will trigger only a request that matches this filter. For more details on filters, see <a href="https://docs.imperva.com/csh?context=rule_syntax">Syntax Guide</a>.
        schema:
          type: string
        example: URL ==  /admin
      - name: ttl
        in: query
        description: Rule TTL. Only relevant when action is HTTP_CACHE_MAKE_STATIC or HTTP_CACHE_CLIENT_CACHE_CTL
        schema:
          type: string
        example: TTL value
      - name: ttl_unit
        in: query
        description: Rule TTL time unit.<br/>Must be one of SECONDS, MINUTES, HOURS, DAYS or WEEKS. If no time unit is provided, SECONDS is used.<br/>Only relevant when action is HTTP_CACHE_MAKE_STATIC or HTTP_CACHE_CLIENT_CACHE_CTL
        schema:
          type: string
        example: SECONDS
      - name: differentiated_by_value
        in: query
        description: Value to differentiate by. HTTP_CACHE_DIFFERENTIATE_BY_HEADER - header name, HTTP_CACHE_DIFFERENTIATE_BY_COOKIE - cookie name, HTTP_CACHE_DIFFERENTIATE_BY_GEO - geo location<br/> (ISO 3166-1 alpha-2 country codes ), otherwise irrelevant.
        schema:
          type: string
        example: cookie name
      - name: params
        in: query
        description: Comma separated list of parameters to ignore.
        schema:
          type: string
        example: '{a,b,c}'
      - name: all_params
        in: query
        description: 'When set to <b>true</b>: all parameters in cache key will be ignored.<br/>Default: false.<br/>Relevant for HTTP_CACHE_IGNORE_PARAMS action'
        schema:
          type: boolean
        example: true
      - name: tag_name
        in: query
        description: The name of the tag to add.
        schema:
          type: string
        example: tag1
      - name: text
        in: query
        description: Add text to the cache key as suffix. Relevant for the HTTP_CACHE_ENRICH_CACHE_KEY action
        schema:
          type: string
        example: cache
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - Unknown/unauthorized site_id<br/>9415 - Operation not allowed<br/>2 - Invalid input<br/>2002 - Object is not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/add:
    post:
      tags:
      - Site Management
      summary: Add data center
      description: Use this operation for adding data center to site.
      operationId: addDataCenter
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: name
        in: query
        description: The new data center's name.
        required: true
        schema:
          type: string
        example: DataCenter
      - name: server_address
        in: query
        description: 'The server''s address. Possible values: IP, CNAME'
        required: true
        schema:
          type: string
        example: 1.1.1.1
      - name: lb_algorithm
        in: query
        description: Data center load balancing algorithm. Possible values are:<br/>LB_LEAST_PENDING_REQUESTS - Server with least pending requests<br/>LB_LEAST_OPEN_CONNECTIONS - Server with least open connections<br/>LB_SOURCE_IP_HASH - Server by IP hash<br/>RANDOM - Random server<br/>WEIGHTED - Server by weight
        schema:
          type: string
          enum:
          - LB_LEAST_PENDING_REQUESTS
          - LB_LEAST_OPEN_CONNECTIONS
          - LB_SOURCE_IP_HASH
          - RANDOM
          - WEIGHTED
        example: LB_LEAST_PENDING_REQUESTS
      - name: is_enabled
        in: query
        description: Enables the data center.
        schema:
          type: boolean
        example: true
      - name: is_content
        in: query
        description: The data center will be available for specific resources (<b>Forward</b> Delivery Rules).
        schema:
          type: boolean
        example: true
      responses:
        '200':
          description: res - contains the specific error code:<br/>2 - a datacenter with that name already exists
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/DataCenterResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/edit:
    post:
      tags:
      - Site Management
      summary: Edit site
      description: Use this operation to editing site's data center
      operationId: editDataCenter
      parameters:
      - name: dc_id
        in: query
        description: The data center's ID.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: name
        in: query
        description: The new data center's name.
        schema:
          type: string
        example: DataCenter
      - name: is_enabled
        in: query
        description: Enables the data center.
        schema:
          type: boolean
        example: true
      - name: is_standby
        in: query
        description: Defines the data center as <b>standby</b> for failover.
        schema:
          type: boolean
        example: true
      - name: is_content
        in: query
        description: The data center will be available for specific resources (<b>Forward</b> Delivery Rules).
        schema:
          type: boolean
        example: true
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 -invalid datacenter</br>2- datacenter with that name already exists
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/DataCenterResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/resume:
    post:
      tags:
      - Site Management
      summary: Resume traffic to your active data centers
      description: When at least one active data center is back up, you have to manually reroute your traffic back to the active data center.<br/>Traffic does not revert automatically to your active data centers.
      operationId: resumeTrafficToActiveDCs
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 -Unknown/unauthorized site_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/delete:
    post:
      tags:
      - Site Management
      summary: delete site
      description: Use this operation for deleting site datacenter.
      operationId: deleteDataCenter
      parameters:
      - name: dc_id
        in: query
        description: The data center's ID.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      responses:
        '200':
          description: res - contains the specific error code:<br/>5 -Could not delete datacenter</br>2- invalid datacenter</br>9415- invalid.dc.state<br/>3011 - There must be at least one active data center not configured for forward rules in the site
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/DataCenterResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/servers/add:
    post:
      tags:
      - Site Management
      summary: 'Add datacenter '
      description: Use this operation to adding datacenter server.
      operationId: addDCServer
      parameters:
      - name: dc_id
        in: query
        description: The data center's ID.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: server_address
        in: query
        description: Server IP address.
        required: true
        schema:
          type: string
        example: 1.1.1.1
      - name: is_disabled
        in: query
        description: Enables the data center
        schema:
          type: boolean
        example: true
      - name: is_standby
        in: query
        description: Set the server as Active (P0) or Standby (P1) (Boolean).
        schema:
          type: boolean
        example: true
      responses:
        '200':
          description: res - contains the specific error code:<br/>1 -General error</br>2- invalid datacenter
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ServerOperationResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/servers/delete:
    post:
      tags:
      - Site Management
      summary: 'Delete datacenter '
      description: Use this operation to deleting datacenter server.
      operationId: deleteDCServer
      parameters:
      - name: server_id
        in: query
        description: Server ID.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      responses:
        '200':
          description: res - contains the specific error code:<br/>9415 -invalid.server.state</br>2- invalid datacenter<br/>1 - Unexpected error
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ServerOperationResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/servers/edit:
    post:
      tags:
      - Site Management
      summary: Edit datacenter
      description: Use this operation to editing datacenter server.
      operationId: editDCServer
      parameters:
      - name: server_id
        in: query
        description: Server ID.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: server_address
        in: query
        description: The IP address of the server to modify.
        schema:
          type: string
        example: 1.1.1.1
      - name: is_enabled
        in: query
        description: Enable or disable the server (Boolean).
        schema:
          type: boolean
        example: true
      - name: is_standby
        in: query
        description: Set the server as Active (P0) or Standby (P1) (Boolean).
        schema:
          type: boolean
        example: true
      responses:
        '200':
          description: res - contains the specific error code:<br/>9415 -invalid.server.state</br>2- invalid datacenter<br/>1 -Unexpected error<br/>9413 -invalid server<br/>1 -General error
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ServerOperationResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/dataCenters/list:
    post:
      tags:
      - Site Management
      summary: List site's data centers
      description: Use this operation for listing site's data centers including datacenters servers.
      operationId: listDataCenters
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - invalid site</br>2 - invalid datacenter<br/>
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ListDataCenterResponse'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/datacenter/origin-pop/modify:
    post:
      tags:
      - Site Management
      summary: Set Data Center Origin PoP
      description: Set an origin PoP for a given data center.
      operationId: setDataCenterOriginPoP
      parameters:
      - name: dc_id
        in: query
        description: Numeric identifier of the data center to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: origin_pop
        in: query
        description: 'The ID of the PoP that serves as an access point between Imperva and the customer’s origin server. For example: “lax”, for Los Angeles.'
        schema:
          type: string
        example: lax, for Los Angeles
      responses:
        '200':
          description: res - contains the specific error code:<br/>405 - Api is disabled</br>2 - invalid datacenter<br/>5 - Cant set Origin PoP for datacenter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/datacenter/origin-pop/recommend:
    post:
      tags:
      - Site Management
      summary: Get Data Center Recommended Origin PoPs
      description: Get a list of recommended origin PoPs for a given data center.
      operationId: getRecommendedDataCenterOriginPoPs
      parameters:
      - name: dc_id
        in: query
        description: Numeric identifier of the data center to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      responses:
        '200':
          description: res - contains the specific error code:<br/>405 - Api is disabled</br>2- invalid datacenter<br/>5 - Cant set Origin PoP for datacenter
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/RecommendedPopsApiResult'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/cache-mode:
    post:
      tags:
      - Site Management
      summary: Modify Caching Mode
      description: Use this operation to edit basic site caching settings.
      operationId: setCachingMode
      parameters:
      - name: cache_mode
        in: query
        description: 'Possible values:<br/><ul/><li>disable</li><li>custom_cache_rules_only</li><li>static_only</li><li>static_and_dynamic</li><li>aggressive</li>Default value: static_only</ul>'
        required: true
        schema:
          type: string
        example: static_and_dynamic
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: string
        example: 10
      - name: dynamic_cache_duration
        in: query
        description: 'Profile dynamic pages and cache duration. Pass a number followed by ''_'' and one of: hr | min | sec | days | weeks.</br>Default: 5_min'
        schema:
          type: string
        example: 5_min
      - name: aggressive_cache_duration
        in: query
        description: 'Cache resource duration. Pass a number followed by ''_'' and one of: hr | min | sec | days | weeks</br>Default: 1_hr'
        schema:
          type: string
        example: 1_hr
      responses:
        '200':
          description: res - contains the specific error code:<br/>2 - Invalid input<br/>9413 - Unknown/unauthorized site_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/cache-mode/get:
    post:
      tags:
      - Site Management
      summary: Get Caching Mode
      description: Use this operation to get a site's caching mode.
      operationId: getCachingMode
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: string
        example: 10
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - Unknown/unauthorized site_id
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ApiResultGetCacheMode'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/purge:
    post:
      tags:
      - Site Management
      summary: Purge Resources
      description: Use this operation to purge site resources.
      operationId: modifyPurgeSettings
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: string
        example: 10
      - name: resource_url
        in: query
        description: Comma separated list of URLs where the resource is located.
        required: true
        schema:
          type: string
        example: /home
      - name: resource_pattern
        in: query
        description: 'Comma separated list of pattern. One of: contains | equals | prefix | suffix | not_equals | not_contains | not_prefix | not_suffix'
        required: true
        schema:
          type: string
        example: prefix
      - name: should_purge_all_site_resources
        in: query
        description: 'Should purge all cached resources on site.</br>Possible values:</br>If the parameter does not exist, is null, or an empty string, it is ignored and only specific resources defined by the resource_pattern and resource_url parameters are purged.</br><b>true</b> or <b>TRUE</b>: All site resources are purged.</br><b>false</b> or <b>FALSE</b>: Nothing is done.</br>Any other string: An error is returned.'
        schema:
          type: string
        example: true
      responses:
        '200':
          description: res - contains the specific error code:<br/>2 - Invalid input<br/>9413 - Unknown/unauthorized site_id<br/>3015 - Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/cache/purge:
    post:
      tags:
      - Site Management
      summary: Purge Site Cache
      description: Use this operation to purge all cached content on our proxy servers for a specific site.<br/>Our Proxy servers keep cached content of your sites in order to accelerate page load times for your users.<br/>When you want this cached content to be refreshed (for example, after making adjustments in your site) you can use this API call.<br/>In order to purge the entire cached content for this site just use the API call with no parameters.<br/>If you want to purge a specific resource add the resource name as parameter.
      operationId: purgeSiteCache
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: integer
          format: int64
        example: 10
      - name: purge_pattern
        in: query
        description: The pattern of the resource to be purged from the cache. For example:</br><ul/><li><b>Resource_name</b> - Resources that contain Resource_name will be purged</li><li><b>^Resource_name</b> - Resources that start with Resource_name will be purged</li><li><b>Resource_name$</b> - Resources that end with Resource_name will be purged.</li></ul>
        schema:
          type: string
      - name: purge_tag_names
        in: query
        description: A comma separated list of tag names to purge.
        schema:
          type: string
      responses:
        '200':
          description: res - contains the specific error code:<br/>5010 - Pattern invalid<br/>9413 - Unknown/unauthorized site_id.<br/>9415 - Operation not allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/response-headers:
    post:
      tags:
      - Site Management
      summary: Modify Cached Response Headers
      description: Use this operation to modify cached response headers.
      operationId: modifyResponseHeaderSettings
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: string
        example: 10
      - name: cache_headers
        in: query
        description: Comma separated list of header names to be cached
        schema:
          type: string
        example: h1
      - name: cache_all_headers
        in: query
        description: Cache all response headers. Pass "true" or "false" in the value parameter. Cannot be selected together with cache_headers. Default:false
        schema:
          type: string
        example: true
      responses:
        '200':
          description: res - contains the specific error code:<br/>2 - Invalid input<br/>9413 - Unknown/unauthorized site_id<br/>9415 - Operation not allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/response-headers/get:
    post:
      tags:
      - Site Management
      summary: Get Cached Response Headers
      description: Use this operation to get a site's cached response headers.
      operationId: getResponseHeaderSettings
      parameters:
      - name: site_id
        in: query
        description: Numeric identifier of the site to operate on.
        required: true
        schema:
          type: string
        example: 10
      responses:
        '200':
          description: res - contains the specific error code:<br/>9413 - Unknown/unauthorized site_id<br/>9415 - Operation not allowed<br/>5 - Operation is unavailable
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ApiResultGetResponseHeaderSettings'
                - $ref: '#/components/schemas/ApiResult'
  /api/prov/v1/sites/performance/tag-response:
    post:
      tags:
      - Site Management
      summary: Tag the Response According to the Value of a Header
      description: Specify which origin response header contains the cache tags in your resources.
      operationId: modifyTagResponseHeader
   

# --- truncated at 32 KB (161 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/imperva/refs/heads/main/openapi/imperva-site-management-api-openapi.yml