{
  "description": "TokenRequestSpec contains client provided parameters of a token request.",
  "properties": {
    "attestations": {
      "additionalProperties": {
        "items": {
          "type": [
            "string",
            "null"
          ]
        },
        "type": [
          "array",
          "null"
        ]
      },
      "description": "attestations is a map of well-known keys to string-slice values. The values for each key have a specific semantic meaning, which is documented on the key definition. Requesters of tokens may ask the Kubernetes API Server to attest to certain claims. The API Server may perform authorization checks depending on the key of this map.",
      "type": [
        "object",
        "null"
      ]
    },
    "audiences": {
      "description": "audiences are the intendend audiences of the token. A recipient of a token must identify themself with an identifier in the list of audiences of the token, and otherwise should reject the token. A token issued for multiple audiences may be used to authenticate against any of the audiences listed but implies a high degree of trust between the target audiences.",
      "items": {
        "type": [
          "string",
          "null"
        ]
      },
      "type": [
        "array",
        "null"
      ],
      "x-kubernetes-list-type": "atomic"
    },
    "boundObjectRef": {
      "description": "BoundObjectReference is a reference to an object that a token is bound to.",
      "properties": {
        "apiVersion": {
          "description": "apiVersion is API version of the referent.",
          "type": [
            "string",
            "null"
          ]
        },
        "kind": {
          "description": "kind of the referent. Valid kinds are 'Pod', 'Secret', 'Node', 'ValidatingWebhookConfiguration', and 'MutatingWebhookConfiguration'.",
          "type": [
            "string",
            "null"
          ]
        },
        "name": {
          "description": "name of the referent.",
          "type": [
            "string",
            "null"
          ]
        },
        "uid": {
          "description": "uid of the referent.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": [
        "object",
        "null"
      ]
    },
    "expirationSeconds": {
      "description": "expirationSeconds is the requested duration of validity of the request. The token issuer may return a token with a different validity duration so a client needs to check the 'expiration' field in a response.",
      "format": "int64",
      "type": [
        "integer",
        "null"
      ]
    }
  },
  "type": "object",
  "$schema": "http://json-schema.org/schema#"
}