$schema: "http://json-schema.org/draft-06/schema#"

title: networkservices v1alpha1 CDNPolicyAddSignaturesOptions export schema
description: A gcloud export/import command YAML validation schema.
type: object
required:
- actions
additionalProperties: false
properties:
  COMMENT:
    type: object
    description: User specified info ignored by gcloud import.
    additionalProperties: false
    properties:
      template-id:
        type: string
      region:
        type: string
      description:
        type: string
      date:
        type: string
      version:
        type: string
  UNKNOWN:
    type: array
    description: Unknown API fields that cannot be imported.
    items:
      type: string
  actions:
    description: |-
      The actions to take to add signatures to responses. You must specify
      exactly one action.
    type: array
    items:
      type: string
      enum:
      - GENERATE_COOKIE
      - GENERATE_TOKEN_HLS_COOKIELESS
      - PROPAGATE_TOKEN_HLS_COOKIELESS
      - SIGNATURE_ACTION_UNSPECIFIED
  copiedParameters:
    description: |-
      The parameters to copy from the verified token to the generated token.
      Only the following parameters can be copied: * `PathGlobs` * `paths` *
      `acl` * `URLPrefix` * `IPRanges` * `SessionID` * `id` * `Data` *
      `data` * `payload` * `Headers` You can specify up to 6 parameters to
      copy. A given parameter is be copied only if the parameter exists in
      the verified token. Parameter names are matched exactly as specified.
      The order of the parameters does not matter. Duplicates are not
      allowed. This field can only be specified when the `GENERATE_COOKIE`
      or `GENERATE_TOKEN_HLS_COOKIELESS` actions are specified.
    type: array
    items:
      type: string
  keyset:
    description: |-
      The keyset to use for signature generation. The following are both
      valid paths to an EdgeCacheKeyset resource: *
      `projects/project/locations/global/edgeCacheKeysets/yourKeyset` *
      `yourKeyset` This must be specified when the `GENERATE_COOKIE` or
      `GENERATE_TOKEN_HLS_COOKIELESS` actions are specified. This field
      can not be specified otherwise.
    type: string
  tokenQueryParameter:
    description: |-
      The query parameter in which to put the generated token. If not
      specified, defaults to `edge-cache-token`. If specified, the name
      must be 1-64 characters long and match the regular expression
      `[a-zA-Z]([a-zA-Z0-9_-])*` which means the first character must be
      a letter, and all following characters must be a dash, underscore,
      letter or digit. This field can only be set when the
      `GENERATE_TOKEN_HLS_COOKIELESS` or
      `PROPAGATE_TOKEN_HLS_COOKIELESS` actions are specified.
    type: string
  tokenTtl:
    description: |-
      The duration the token is valid for starting from the moment the
      token is first generated. Defaults to `86400s` (1 day). The TTL
      must be >= 0 and <= 604,800 seconds (1 week). This field can only
      be specified when the `GENERATE_COOKIE` or
      `GENERATE_TOKEN_HLS_COOKIELESS` actions are specified.
    type: string
