{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/trimble/json-schema/trimble-definition-response-schema.json",
  "title": "The pset definition.",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/trimble-connect-property-set-openapi.yml#/components/schemas/DefinitionResponse",
  "required": [
    "createdAt",
    "createdBy",
    "id",
    "libId",
    "modifiedAt",
    "modifiedBy",
    "schema",
    "v"
  ],
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The definition identifier. This identifier is valid in the scope of the parent library only. Definition with the same identifier might exist in another library."
    },
    "libId": {
      "type": "string",
      "description": "The parent library identifier."
    },
    "createdAt": {
      "type": "string",
      "description": "The creation timestamp.",
      "format": "date-time"
    },
    "createdBy": {
      "type": "string",
      "description": "The identifier of the user created the pset definition."
    },
    "modifiedAt": {
      "type": "string",
      "description": "The last update timestamp.",
      "format": "date-time"
    },
    "modifiedBy": {
      "type": "string",
      "description": "The identifier of the user updated the pset definition last time."
    },
    "deleted": {
      "type": "boolean",
      "description": "The deletion flag."
    },
    "v": {
      "type": "integer",
      "description": "The version number."
    },
    "name": {
      "type": "string",
      "description": "The name."
    },
    "description": {
      "type": "string",
      "description": "The optional description."
    },
    "types": {
      "type": "array",
      "description": "The collection of object types the pset is applicable to. If empty the pset can be attached to any object type.",
      "items": {
        "type": "string",
        "description": "The type of object."
      }
    },
    "schema": {
      "$ref": "#/$defs/PSetSchemaResponse"
    },
    "i18n": {
      "type": "object",
      "properties": {},
      "description": "The translation table for pset name, description, property names and values."
    },
    "_actions": {
      "type": "array",
      "description": "Metadata. The list of context actions caller is allowed to perform on the resource. Please see explanation with warning about use of this information in the introduction section.",
      "items": {
        "type": "string",
        "description": "The action."
      }
    }
  },
  "$defs": {
    "PSetSchemaResponse": {
      "title": "The pset schema.",
      "required": [
        "props",
        "v"
      ],
      "type": "object",
      "properties": {
        "open": {
          "type": "boolean",
          "description": "Optional. The default is false. If true, the pset is open, meaning any number of unknown properties can be added."
        },
        "v": {
          "type": "integer",
          "description": "The version number of the schema."
        },
        "props": {
          "type": "object",
          "properties": {},
          "description": "The individual properties definitions (similar to Open API data model definition https://swagger.io/docs/specification/data-models/)."
        }
      },
      "description": "The pset schema that describes all possible properties in the pset. Please refer to the pset schema specification https://drive.google.com/open?id=1sDVdKpLesdnxzU6-KQuaGRWmMSO9DGrS."
    }
  }
}