LogoLogo
Visit Contextual.ioSign Up
  • Getting Started
    • Welcome
    • Tour: Hello, AI World!
  • TRAINING
    • Basic Developer Training Course
      • Lesson 1: HTTP Agent Introduction
      • Lesson 2: Logging and Error Handling Basics
      • Lesson 3: Event Processing Agent Introduction
  • Services Catalog
    • What's in the Catalog?
      • Intro Patterns
      • Object Type Bundles
    • Browse by Platform
    • All Intro Patterns
      • Anthropic Claude Image Analysis
      • Mistral AI Prompt and Response
      • xAI Grok Prompt and Response
      • DeepSeek Chat Prompt and Response
      • Qwen Chat Prompt and Response
      • Perplexity AI Search and Response
      • Firecrawl Website Scraper
      • Groq Prompt and Response
      • Nyckel Dog Breed Classification
      • RapidAPI ClassifyAI Text Classification
      • RapidAPI YouTube AI Video Summary
      • UnifyAI Model Comparison
      • WebPilot URL Analysis and Summarization
      • OpenAI Assistants Prompt and Response
      • OpenAI Sync
    • All Prebuilt Solutions
      • Invoice AI
      • Lead Generation Form
    • All Object Type Bundles
      • Work Order Management System ITIL Object Type Bundle
        • Work Order
        • User
        • Role
        • Permission
        • Asset
        • Task
        • Action
        • Attachment
        • Comment
        • Notification
        • Audit Log
        • Service Level Agreement
        • Custom Fields
        • Work Order Template
        • Work Order Transition
        • Escalation Policy
        • Tag
  • Components & Data
    • Object Types
      • Data in Contextual
        • Secrets
        • Validation
        • Versioning
      • Examples
      • Creating an Object Type
      • Object Type Details
        • Definition
        • Data Schema
          • Automatic Record Metadata
          • Generated Values
            • Dates and Times
            • UUIDs
          • Frequently Used Validation
          • Disallowing Null Property Values
          • Disallowing Undefined Properties
          • Secrets
          • AI Assistant
          • ID and PrimaryKey Permanence
        • UI Schemas
        • Features
        • Triggers
        • Actions
        • Audit Trail
        • Versions
        • Templates
        • Records
      • Using Object Types in Flows
      • Records
        • Records and Your Tenant API
        • Record Import
    • Flows
      • Nodes
      • Wires
      • Message Object
      • Flow Editor
        • Basics
        • Saving Changes
        • In-Flow Testing with Debugger
        • Restart Agents to Make Changes Active
        • Config
      • Node Reference
        • Common
          • Log Tap
          • Inject
          • Debug
          • Complete
          • Catch
          • Status
          • Link In
          • Link Call
          • Link Out
          • Comment
        • Event
          • Prepare Event
          • Event Start
          • Event End
          • Event Error
        • Object
          • Search Object
          • Get Object
          • Create Object
          • Patch Object
          • Put Object
          • Delete Object
          • Run Action
        • Request
          • Send to Agent
          • HTTP GET
          • HTTP PATCH
          • HTTP PUT
          • HTTP DELETE
          • HTTP POST
          • GQL
          • Produce Message
        • Function
          • Function
          • Switch
          • Change
          • Range
          • Template
          • Delay
          • Trigger
          • Exec
          • Filter
          • Loop
        • Models
          • ML Predict
        • Network
          • MQTT In
          • MQTT Out
          • HTTP In
          • HTTP Response
          • HTTP Request
          • WebSocket In
          • WebSocket Out
          • TCP In
          • TCP Out
          • TCP Request
          • UDP In
          • UDP Out
        • Sequence
          • Split
          • Join
          • Sort
          • Batch
        • Parser
          • csv
          • html
          • json
          • xml
          • yaml
    • Agents
      • Creating an Agent
      • Types of Agents
        • Event to Flow
        • HTTP to Flow
          • Custom Domains
      • How Agents Work
        • Flow Execution
        • HTTP Load Balancing
        • Event Routing
      • Scale and Performance
        • Flow execution
        • Parallel Instances
        • Event Lag Scaling
        • Compute Threshold Scaling
        • Instance Compute Sizing
      • Agent Details
        • Definition
        • Operations
        • Logs
          • Session Log
          • Message Log
        • Audit Trail
        • Versions
      • Using Agents in Flows
    • Connections
      • Creating a Connection
      • Types of Connections
        • Basic
        • Bearer
        • Client Grant
        • Kafka
        • Password Grant
        • Public
        • Pulsar
      • Using Connections in Flows
    • JWKS Profiles
      • Using JWKS Profiles in Your Solution
  • PATTERNS
    • Solution Architecture
      • Events, Messages, Queues
    • Working with Data
      • Search Object Node & Pagination
      • Message Payload Content - Triggers and Actions
    • Industry Cookbooks
      • Field Services
  • Tenants
    • Tenant Workspace
    • Tenant Logs
      • Contextual Log Query Language (CLQL)
        • String Searches
        • Keyword Searches
        • Advanced Operators
    • Tenant API
      • API Keys
        • API Key Settings
        • API Key Permissions
      • Documentation
  • Release Notes
    • 2024
      • 2024.12.09
Powered by GitBook
On this page
  • When does validation happen?
  • String Values
  • Numeric Values
  • Boolean Value
  • "type": "object"
  • "type": "array"

Was this helpful?

  1. Components & Data
  2. Object Types
  3. Object Type Details
  4. Data Schema

Frequently Used Validation

PreviousUUIDsNextDisallowing Null Property Values

Last updated 1 year ago

Was this helpful?

When does validation happen?

Validation based on your Object Type Data Schema is enforced as follows.

  • Anytime a Record is created, updated or patched programmatically, either internally in your Contextual solution and its processing of data, or when an external system uses the Tenant API to interact with Object Type records

  • When Records are created or updated using the Contextual Workspace UI, the forms that are presented to users for doing so perform a combination of client-side input validation with onChange user feedback (e.g. minLength, regular expression match), enforced data format entry using custom-rendered UI elements (e.g. Date+Time Pickers), and/or validation success or failure after submission of the form (e.g. ipv6).

Learn more about .

String Values

These are common ways to validate "type": string values in your data schema. All validation and data requirements are enforced by your Tenant API

Validation
UI Input Type
UI Validation Feedback

"minLength": 2 minimum number of characters allowed

Input Field

On change, prevents form submission

"maxLength": 64 maximum number of characters allowed

Input Field

On change, prevents form submission

"format": "date-time" e.g. 2029-11-13T20:20:39+00:00

Date+Time Picker

Only valid input allowed using picker

"format": "time" e.g. 20:20:39+00:00

Time Picker

Only valid input allowed using picker

"format": "date" e.g. 2029-11-13

Date Picker

Only valid input allowed using picker

"format": "email" e.g. support@contextual.io

Input Field

On submission/processing, validation error returned

"format": "uri" e.g. https://contextual.io

Input Field

On submission/processing, validation error returned

"format": "ipv6" designate ipv4 or ipv6 as appropriate

Input Field

On submission/processing, validation error returned

"pattern": "^[a-zA-Z0-9]+$" string value must match the specified regular expression

Input Field

On change, prevents form submission

Numeric Values

These are common ways to validate "type": "number" and "type": "int" numeric values in your data schema.

Validation
UI Input Type
UI Validation Feedback

"minimum": 3 specifies the minimum numeric value

Input Field

On submission/processing, validation error returned

"exclusiveMinimum": "true" excludes the minimum value itself

Input Field

On submission/processing, validation error returned

"maximum": 999 specifies the maximum numeric value

Input Field

On submission/processing, validation error returned

"exclusiveMaximum": "true" excludes the maximum value itself

Input Field

On submission/processing, validation error returned

"multipleOf": 5 allows only values that are divisible by the specified numeric value

Input Field

On submission/processing, validation error returned

Boolean Value

These are common ways to validate "type": "boolean" values in your data schema.

  • "const": true specifies either true or false value

"type": "object"

  • code note

"type": "array"

  • code note

JSON Schema Type-Specific Keywords (https://json-schema.org)