REST API
Schema
Derived from the source of github.com/awee-ai/api/cmd/schema.
Awee Schema API · v1.0.0 · 26 endpoints
Databases
Handles GET /v1/databases
rest.Handler.GetSchemas
Query parameters
pagestringlimitstringResponses
200 OKOK
itemsSchema[]Are the records returned for the current page.
itemsSchema[]created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
limitinteger (int64)requiredIs the page size that was applied to the query.
pageinteger (int64)requiredIs the 1-based page number derived from the request's Offset/Limit.
searchListSearchResult[]
searchListSearchResult[]fieldstringrequiredhighlightinteger (int64)[][][[1,6]]
idstringrequiredvaluestringrequiredtotalinteger (int64)requiredIs the total number of records matching the query across all pages (i.e.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"items": [
{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}
],
"limit": 0,
"page": 0,
"search": [
{
"field": "string",
"highlight": [
[
0
]
],
"id": "string",
"value": "string"
}
],
"total": 0
}Handles POST /v1/databases
rest.Handler.CreateSchema
Body
application/jsonrequiredcreated_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
Responses
201 CreatedCreated
created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}Handles GET /v1/databases/{schema}
rest.Handler.GetSchema
Path parameters
schemastringrequiredResponses
200 OKOK
created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}Handles PUT /v1/databases/{schema}
rest.Handler.UpdateSchema
Path parameters
schemastringrequiredBody
application/jsonrequiredcreated_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
Responses
200 OKOK
created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}Handles DELETE /v1/databases/{schema}
rest.Handler.DeleteSchema
Path parameters
schemastringrequiredResponses
No response body.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"error": "string"
}Audit
Handles GET /v1/databases/{schema}/audit
Mirrors the QueryRecords convention: pagination via page/limit, filtering via a JSON `filters` array. Returns ListResult[AuditEntry]. Filterable fields (Op = "eq" unless noted): table_name, record_id, actor_id, actor_type, operation, correlation_id, batch_id – exact match created_at – gt/gte/lt/lte against an RFC3339 string; gt/gte → AuditQuery.From, lt/lte → To Example: ?page=1&limit=50&filters=[ {"field":"table_name","op":"eq","value":"projects"}, {"field":"created_at","op":"gte","value":"2026-05-01T00:00:00Z"} ]
rest.Handler.GetAuditLog
Path parameters
schemastringrequiredQuery parameters
pagestringlimitstringfiltersstringResponses
200 OKOK
itemsSchema[]Are the records returned for the current page.
itemsSchema[]created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
limitinteger (int64)requiredIs the page size that was applied to the query.
pageinteger (int64)requiredIs the 1-based page number derived from the request's Offset/Limit.
searchListSearchResult[]
searchListSearchResult[]fieldstringrequiredhighlightinteger (int64)[][][[1,6]]
idstringrequiredvaluestringrequiredtotalinteger (int64)requiredIs the total number of records matching the query across all pages (i.e.
400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{
"items": [
{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}
],
"limit": 0,
"page": 0,
"search": [
{
"field": "string",
"highlight": [
[
0
]
],
"id": "string",
"value": "string"
}
],
"total": 0
}Tables
Handles GET /v1/databases/{schema}/tables
rest.Handler.GetTables
Path parameters
schemastringrequiredQuery parameters
pagestringlimitstringResponses
200 OKOK
itemsSchema[]Are the records returned for the current page.
itemsSchema[]created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
limitinteger (int64)requiredIs the page size that was applied to the query.
pageinteger (int64)requiredIs the 1-based page number derived from the request's Offset/Limit.
searchListSearchResult[]
searchListSearchResult[]fieldstringrequiredhighlightinteger (int64)[][][[1,6]]
idstringrequiredvaluestringrequiredtotalinteger (int64)requiredIs the total number of records matching the query across all pages (i.e.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"items": [
{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}
],
"limit": 0,
"page": 0,
"search": [
{
"field": "string",
"highlight": [
[
0
]
],
"id": "string",
"value": "string"
}
],
"total": 0
}Handles POST /v1/databases/{schema}/tables
rest.Handler.CreateTable
Path parameters
schemastringrequiredBody
application/jsonrequiredauditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
Responses
201 CreatedCreated
auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}Handles GET /v1/databases/{schema}/tables/{table}
rest.Handler.GetTable
Path parameters
schemastringrequiredtablestringrequiredResponses
200 OKOK
auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}Handles PUT /v1/databases/{schema}/tables/{table}
rest.Handler.UpdateTable
Path parameters
schemastringrequiredtablestringrequiredBody
application/jsonrequiredauditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
Responses
200 OKOK
auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}Handles DELETE /v1/databases/{schema}/tables/{table}
rest.Handler.DeleteTable
Path parameters
schemastringrequiredtablestringrequiredResponses
No response body.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"error": "string"
}Config
Handles GET /v1/databases/{schema}/tables/{table}/config
Returns the table's relationships and opaque GUI configuration. Wired on DataManager so runtime SDK consumers can fetch it under user-level auth
rest.Handler.GetTableConfig
Path parameters
schemastringrequiredtablestringrequiredResponses
200 OKOK
configunknownIs the opaque JSON configuration like TableConfigDatatable
relationshipsTableRelationship[]
relationshipsTableRelationship[]fieldstringrequiredrelated_fieldstringrelated_tablestringrequiredtypeFieldTyperequiredEnumerates the supported field data types.
tablestringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{
"config": null,
"relationships": [
{
"field": "string",
"related_field": "string",
"related_table": "string",
"type": "string"
}
],
"table": "string"
}Handles PUT /v1/databases/{schema}/tables/{table}/config
Wired on Manager (admin auth); body is the opaque JSON config to persist
rest.Handler.UpdateTableConfig
Path parameters
schemastringrequiredtablestringrequiredResponses
200 OKOK
configunknownIs the opaque JSON configuration like TableConfigDatatable
relationshipsTableRelationship[]
relationshipsTableRelationship[]fieldstringrequiredrelated_fieldstringrelated_tablestringrequiredtypeFieldTyperequiredEnumerates the supported field data types.
tablestringrequired400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{
"config": null,
"relationships": [
{
"field": "string",
"related_field": "string",
"related_table": "string",
"type": "string"
}
],
"table": "string"
}Fields
Handles GET /v1/databases/{schema}/tables/{table}/fields
rest.Handler.GetFields
Path parameters
schemastringrequiredtablestringrequiredQuery parameters
pagestringlimitstringResponses
200 OKOK
itemsSchema[]Are the records returned for the current page.
itemsSchema[]created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
limitinteger (int64)requiredIs the page size that was applied to the query.
pageinteger (int64)requiredIs the 1-based page number derived from the request's Offset/Limit.
searchListSearchResult[]
searchListSearchResult[]fieldstringrequiredhighlightinteger (int64)[][][[1,6]]
idstringrequiredvaluestringrequiredtotalinteger (int64)requiredIs the total number of records matching the query across all pages (i.e.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"items": [
{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}
],
"limit": 0,
"page": 0,
"search": [
{
"field": "string",
"highlight": [
[
0
]
],
"id": "string",
"value": "string"
}
],
"total": 0
}Handles POST /v1/databases/{schema}/tables/{table}/fields
rest.Handler.CreateField
Path parameters
schemastringrequiredtablestringrequiredBody
application/jsonrequireddefaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
Responses
201 CreatedCreated
defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}Handles GET /v1/databases/{schema}/tables/{table}/fields/{field}
rest.Handler.GetField
Path parameters
schemastringrequiredtablestringrequiredfieldstringrequiredResponses
200 OKOK
defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}Handles PUT /v1/databases/{schema}/tables/{table}/fields/{field}
rest.Handler.UpdateField
Path parameters
schemastringrequiredtablestringrequiredfieldstringrequiredBody
application/jsonrequireddefaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
Responses
200 OKOK
defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
400 Bad Requestthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}Handles DELETE /v1/databases/{schema}/tables/{table}/fields/{field}
rest.Handler.DeleteField
Path parameters
schemastringrequiredtablestringrequiredfieldstringrequiredResponses
No response body.
Defaultthe request could not be completed
errorstringrequiredNo request body.
{
"error": "string"
}Records
Handles GET /v1/databases/{schema}/tables/{table}/records Supported query parameters: page int – 1-based page number (default 1) limit int – records per page (default 0 = no limit) sort string – "field:asc" or "field:desc" include_deleted bool – include soft-deleted records when "true"
rest.Handler.QueryRecords
Path parameters
schemastringrequiredtablestringrequiredQuery parameters
pagestringlimitstringsortstringinclude_deletedstringfiltersstringsearchstringResponses
200 OKOK
itemsSchema[]Are the records returned for the current page.
itemsSchema[]created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
limitinteger (int64)requiredIs the page size that was applied to the query.
pageinteger (int64)requiredIs the 1-based page number derived from the request's Offset/Limit.
searchListSearchResult[]
searchListSearchResult[]fieldstringrequiredhighlightinteger (int64)[][][[1,6]]
idstringrequiredvaluestringrequiredtotalinteger (int64)requiredIs the total number of records matching the query across all pages (i.e.
403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{
"items": [
{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}
],
"limit": 0,
"page": 0,
"search": [
{
"field": "string",
"highlight": [
[
0
]
],
"id": "string",
"value": "string"
}
],
"total": 0
}Handles POST /v1/databases/{schema}/tables/{table}/records
rest.Handler.CreateRecord
Path parameters
schemastringrequiredtablestringrequiredBody
application/jsonrequiredIs an untyped key-value map representing a single row.
Responses
201 CreatedCreated
Is an untyped key-value map representing a single row.
400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{}{}Handles GET /v1/databases/{schema}/tables/{table}/records/{record}
rest.Handler.GetRecord
Path parameters
schemastringrequiredtablestringrequiredrecordstringrequiredResponses
200 OKOK
Is an untyped key-value map representing a single row.
403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{}Handles PUT /v1/databases/{schema}/tables/{table}/records/{record}
rest.Handler.UpdateRecord
Path parameters
schemastringrequiredtablestringrequiredrecordstringrequiredBody
application/jsonrequiredIs an untyped key-value map representing a single row.
Responses
200 OKOK
Is an untyped key-value map representing a single row.
400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{}{}Handles DELETE /v1/databases/{schema}/tables/{table}/records/{record}
rest.Handler.DeleteRecord
Path parameters
schemastringrequiredtablestringrequiredrecordstringrequiredResponses
No response body.
403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{
"error": "string"
}Handles GET /v1/databases/{schema}/tables/{table}/records/{record}/files/{field}
rest.Handler.DownloadFile
Path parameters
schemastringrequiredtablestringrequiredrecordstringrequiredfieldstringrequiredResponses
200 OKOK
403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
"string"Handles POST /v1/databases/{schema}/tables/{table}/records/{record}/files/{field}
The body is multipart with the bytes in a part named "file"; the blob key the store returns is stamped onto the record's field, so the response is the updated record.
rest.Handler.UploadFile
Path parameters
schemastringrequiredtablestringrequiredrecordstringrequiredfieldstringrequiredResponses
200 OKOK
Is an untyped key-value map representing a single row.
400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequired413 Payload Too Largethe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{}Handles GET /v1/databases/{schema}/tables/{table}/records/{record}/history
Returns all stored versions of the record in ascending version order
rest.Handler.GetRecordHistory
Path parameters
schemastringrequiredtablestringrequiredrecordstringrequiredResponses
200 OKOK
itemsSchema[]Are the records returned for the current page.
itemsSchema[]created_atstring (date-time)requiredIs the UTC timestamp when the schema was first persisted.
namestringrequiredIs the schema identifier and maps to the underlying database name (e.g.
org_idstringrequiredScopes the schema to a tenant.
tablesTable[]Is the ordered list of tables that make up the schema.
tablesTable[]auditedbooleanEnables per-write audit logging for this table.
configunknownIs opaque JSON configuration for the table, persisted in the _schema_tables meta-table.
descriptionstringIs an optional human-readable summary surfaced in generated documentation and GUI tooling.
fieldsField[]Is the ordered list of user-defined columns on the table.
fieldsField[]defaultunknownIs the value applied when a record is inserted (or a form is rendered) without an explicit value for this field.
default_sourcestringDeclares the origin of a dynamic default value when the server has resolved one into Default.
descriptionstringIs a human-readable explanation of the field's purpose.
labelstringIs the UI label for the field.
namestringrequiredIs the column / input name.
option_labelsstring[]Is a parallel array to Options that carries display labels for enum values.
optionsstring[]Is the ordered list of permitted string values for FieldTypeEnum.
related_fieldstringIs the name of the foreign-key field on the related table.
related_tablestringIs the name of the target table for relation fields.
relation_label_fieldstringNames the field on the related record that the UI should show as the dropdown label.
requiredbooleanMarks the field as non-nullable / mandatory.
typeFieldTyperequiredEnumerates the supported field data types.
indexesIndex[]Is the optional list of secondary indexes defined on the table.
indexesIndex[]fieldsstring[]Is the ordered list of field names covered by the index.
namestringrequiredIs the index identifier and must be unique within its table.
uniquebooleanEnforces that no two records share the same value combination for the indexed fields.
namestringrequiredIs the table identifier and must be unique within a Schema.
versionedbooleanAdds the per-record `version` counter and `version_owner_id` columns to this table.
updated_atstring (date-time)requiredIs the UTC timestamp of the most recent successful migration.
user_idstringrequiredIs the owner identifier, stored in _schema_metadata by SQL backends.
versioninteger (int64)requiredIs the applied migration count.
limitinteger (int64)requiredIs the page size that was applied to the query.
pageinteger (int64)requiredIs the 1-based page number derived from the request's Offset/Limit.
searchListSearchResult[]
searchListSearchResult[]fieldstringrequiredhighlightinteger (int64)[][][[1,6]]
idstringrequiredvaluestringrequiredtotalinteger (int64)requiredIs the total number of records matching the query across all pages (i.e.
403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
{
"items": [
{
"created_at": "2024-01-15T09:30:00Z",
"name": "string",
"org_id": "string",
"tables": [
{
"audited": true,
"config": null,
"description": "string",
"fields": [
{
"default": null,
"default_source": "string",
"description": "string",
"label": "string",
"name": "string",
"option_labels": [
"string"
],
"options": [
"string"
],
"related_field": "string",
"related_table": "string",
"relation_label_field": "string",
"required": true,
"type": "string"
}
],
"indexes": [
{
"fields": [
"string"
],
"name": "string",
"unique": true
}
],
"name": "string",
"versioned": true
}
],
"updated_at": "2024-01-15T09:30:00Z",
"user_id": "string",
"version": 0
}
],
"limit": 0,
"page": 0,
"search": [
{
"field": "string",
"highlight": [
[
0
]
],
"id": "string",
"value": "string"
}
],
"total": 0
}