Tripetto · Schema
Tripetto Form
Schema for a Tripetto form including its metadata and definition
FormsSurveysForm BuilderNo-CodeSDKWebhooks
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Unique form identifier |
| name | string | Human-readable form name |
| description | string | Optional description of the form's purpose |
| definition | object | |
| created | string | Form creation timestamp |
| modified | string | Last modification timestamp |
| responseCount | integer | Total number of responses collected |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://api-evangelist.github.io/tripetto/json-schema/tripetto-form-schema.json",
"title": "Tripetto Form",
"description": "Schema for a Tripetto form including its metadata and definition",
"type": "object",
"required": ["id", "name", "definition"],
"properties": {
"id": {
"type": "string",
"description": "Unique form identifier"
},
"name": {
"type": "string",
"description": "Human-readable form name"
},
"description": {
"type": "string",
"description": "Optional description of the form's purpose"
},
"definition": {
"$ref": "#/definitions/FormDefinition"
},
"created": {
"type": "string",
"format": "date-time",
"description": "Form creation timestamp"
},
"modified": {
"type": "string",
"format": "date-time",
"description": "Last modification timestamp"
},
"responseCount": {
"type": "integer",
"description": "Total number of responses collected",
"minimum": 0
}
},
"definitions": {
"FormDefinition": {
"type": "object",
"description": "JSON definition of a Tripetto form generated by the Builder",
"properties": {
"nodes": {
"type": "array",
"description": "Array of form nodes representing questions and blocks",
"items": {
"$ref": "#/definitions/FormNode"
}
},
"sections": {
"type": "array",
"description": "Grouping sections within the form",
"items": {
"$ref": "#/definitions/FormSection"
}
},
"conditions": {
"type": "array",
"description": "Conditional logic rules for branching",
"items": {
"type": "object"
}
}
}
},
"FormNode": {
"type": "object",
"required": ["id", "type"],
"properties": {
"id": {
"type": "string",
"description": "Unique node identifier"
},
"type": {
"type": "string",
"description": "Block type identifier",
"enum": [
"text",
"email",
"number",
"yes-no",
"dropdown",
"multiple-choice",
"date",
"url",
"phone",
"file-upload",
"rating",
"opinion-scale",
"matrix",
"calculation"
]
},
"name": {
"type": "string",
"description": "Question or field label"
},
"required": {
"type": "boolean",
"description": "Whether a response is required",
"default": false
},
"settings": {
"type": "object",
"description": "Block-specific configuration settings"
}
}
},
"FormSection": {
"type": "object",
"required": ["id"],
"properties": {
"id": {
"type": "string",
"description": "Unique section identifier"
},
"name": {
"type": "string",
"description": "Section label displayed to respondents"
},
"nodes": {
"type": "array",
"description": "Node IDs belonging to this section",
"items": {
"type": "string"
}
}
}
}
}
}