# Schema for Client Statement
# The Client Statement is used in the Client Assertion JWT with the ZETA Guard AuthServer.
# It contains information about the client instance.
$schema: "http://json-schema.org/draft-07/schema#"
title: Client Statement
description: The client statement contains information about the client instance.
type: object
properties:
  sub:
    type: string
    description: The name of the client
  platform:
    type: string
    description: The platform of the client instance
    enum:
      - android
      - apple
      - windows
      - linux
      - other
  posture_type:
    type: string
    description: The type of the supplied posture
    enum:
      - android
      - apple
      - software
      - tpm
  posture:
    description: The posture of the client instance. The structure depends on the platform.
    $ref: "./posture.yaml"
  attestation_timestamp:
    description: The attestation timestamp of the client instance
    type: integer
    format: unix-time
required:
  - sub
  - platform
  - posture_type
  - posture
  - attestation_timestamp
