Skip to main content
Jomioz represents your domain through three first-class object types — Resources, Events, and Users — each with a well-defined schema and clear relationships to the others. Understanding these schemas helps you design integrations that read and write data efficiently, construct precise API filters, and interpret the payloads your webhooks and event streams deliver.

Resources

A resource is the primary data object you create and manage in Jomioz. Resources are generic by design: the type field lets you classify them for your domain, while the metadata field holds any additional key-value data your application needs.

Resource fields

Resource object schema

string
required
Unique identifier for the resource. Always prefixed with res_.Example: "res_01hxyz4kab3cdef56789"
string
required
Human-readable display name assigned at creation time. Must be between 1 and 255 characters.
string
required
A free-form string categorizing the resource within your workspace. Use consistent, slug-style values (e.g. "order", "customer") to make filtering and querying predictable.
string
required
Current lifecycle state of the resource.Allowed values: active, inactive, archived
object
A flat object of string key-value pairs you control. Jomioz does not interpret these values — they are stored and returned as-is. See the Metadata section for usage guidance.
string
required
ISO 8601 timestamp (UTC) recording when the resource was created.Example: "2024-06-15T09:42:11Z"
string
required
ISO 8601 timestamp (UTC) recording when the resource was last modified. Equals created_at for resources that have never been updated.Example: "2024-06-17T14:05:33Z"

Example resource object


Events

Every state change on a resource — creation, update, deletion, or an integration-triggered sync — appends an immutable event record. Events form a chronological log you can query, replay, and stream in real time.

Event fields

Example event object

The payload shape is specific to each event type. resource.created payloads include the full resource object; resource.updated payloads include previous, current, and changed_fields; resource.deleted payloads include the final state of the resource before deletion. Consult the Events API reference for per-type payload schemas.

Users

Users represent the human members of your workspace. Every user belongs to exactly one workspace account and is assigned a role that governs what they can read and modify. User objects are managed at the workspace level — you invite, update, and remove users through the workspace membership API or the dashboard’s Team panel.

User fields

Example user object

User objects do not carry API keys. API keys are workspace-scoped credentials that exist independently of any individual user. This means you can revoke a team member’s access without invalidating the API keys your services rely on.

Metadata

The metadata field on every resource is a flat, free-form object of string key-value pairs that you fully control. Jomioz stores and returns these values verbatim — they are never interpreted, indexed for full-text search, or used to drive platform behaviour. Use metadata to attach application-specific context directly to a resource so you do not need a separate lookup in your own database:
You can filter resources by metadata values through the API using the metadata[key]=value query parameter syntax:
Metadata values are not encrypted at rest beyond Jomioz’s standard storage encryption. Do not store sensitive data — such as passwords, payment card numbers, or government-issued identifiers — in the metadata field.
Keep the following limits in mind when designing your metadata schema:
  • Maximum 50 key-value pairs per resource.
  • Keys may be up to 64 characters; values may be up to 500 characters.
  • All keys and values must be strings — numbers, booleans, and nested objects are not supported.