Developers · GraphQL
Common GraphQL Objects
Last updated 5 November 2026
Objects are the types that queries and mutations return. Each object has a set of fields that you can ask for in a query. Use this page as a reference for the object types in the Insites GraphQL schema.
ActivityStreamsActivity
Code example:
type ActivityStreamsActivity {
id: ID!
payload: ActivityStreamsPayload
uuid: String!
}Fields
ActivityStreamsFeed
Code example:
type ActivityStreamsFeed {
ids: [ID!]
name: String
}Fields
ActivityStreamsHandler
Code example:
type ActivityStreamsHandler {
filter: ActivityStreamsPayload
id: ID!
name: String
targets: ActivityStreamsPayload
}Fields
Aggregations
Code example:
type Aggregations {
compact: JSONPayload
raw: JSONPayload
}Fields
ApiCallNotification
ApiCall Notification.
type ApiCallNotification {
callback: String
content: String
created_at: JSONDate!
delay_by: String
headers: String
id: ID!
manually_managed: Boolean
metadata: HashObject
name: String!
physical_file_path: String
request_type: String!
to: String!
trigger_condition: String
updated_at: JSONDate!
}Fields
Liquid code which can be used to process the response from the endpoint. You have access to "response" variable.
Liquid code to evaluate to whatever you want to send, for example a JSON.
Liquid code which should evaluate to integer. Delays invoking the job by specified number of minutes. Useful to invoke code at certain point in time, for example 1 hour before something etc. To calculate proper number you can use time_diff filter.
Liquid code to evaluate to valid json of request headers.
When true, insites-cli deploy and sync do not change this object.
Name of the api call, which is used in form_configurations or mutation to trigger it.
Defines the physical path of the file.
Liquid code which should evaluate to valid request type: Get, Post, Put, Patch, Delete, Head or if you want to send binary files: Post_Multipart, Put_Multipart, Patch_Multipart.
Liquid code to evaluate to valid endpoint for the request.
Liquid code which should evaluate to true if the api call should be sent.
ApiCallNotificationCollection
Code example:
type ApiCallNotificationCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [ApiCallNotification!]
total_entries: Int!
total_pages: Int!
}Fields
ApiCallSendPayload
Autogenerated return type of ApiCallSend.
type ApiCallSendPayload {
response: Response
}Fields
Asset
Code example:
type Asset {
content_type: String
created_at: JSONDate!
deleted_at: JSONDate
file_size: Int
id: ID!
manually_managed: Boolean
metadata: HashObject
name: String!
physical_file_path: String
updated_at: JSONDate!
url: String!
}Fields
File content type.
File size.
When true, insites-cli deploy and sync do not change this object.
Name of the asset.
Defines the physical path of the file.
Url to the file.
AssetCollection
Code example:
type AssetCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [Asset!]
total_entries: Int!
total_pages: Int!
}Fields
AssetsCreateMutationPayload
Autogenerated return type of AssetsCreateMutation.
type AssetsCreateMutationPayload {
assets: [Asset!]!
}Fields
AssetsListing
Code example:
type AssetsListing {
created_at: JSONDate!
id: ID
private_assets_url: String
public_assets_url: String
status: String
}Fields
ID of the assets listing object.
AssetsListingIdentifier
Code example:
type AssetsListingIdentifier {
created_at: JSONDate!
id: ID!
}Fields
ID of the assets listing create job which can be queried.
AssetsPresignUrlsMutationPayload
Autogenerated return type of AssetsPresignUrlsMutation.
type AssetsPresignUrlsMutationPayload {
urls: [PresignedUrl!]!
}Fields
Authenticate
Code example:
type Authenticate {
jwt(algorithm: JwtAlgorithm = HS256, token: String!): Boolean!
otp_code(code: String!, drift: Int): Boolean!
password(password: String!): Boolean!
temporary_token(token: String!): Boolean!
}Fields
Returns true if the provided JWT is valid for the given user and has not expired yet.
Validates otp_code.
OTP code sent to user.
Allowed TOTP time drift between client and server.
Plain text password which will be matched against stored encrypted_password. Returns true if password matches.
Returns true if the provided temporary_token is valid for the given user and has not expired yet.
AuthorizationPolicy
Authorization Policy is used to restrict access to pages and forms.
type AuthorizationPolicy {
authorization_policy_associations: [AuthorizationPolicyAssociation!]
content: String!
created_at: JSONDate!
flash_alert: String
http_status: Int
id: ID!
manually_managed: Boolean
metadata: HashObject
name: String!
physical_file_path: String
redirect_to: String
updated_at: JSONDate!
}Fields
Use this status code when authorization fails; usually 404 or 403.
When true, insites-cli deploy and sync do not change this object.
Defines the physical path of the file.
AuthorizationPolicyAssociation
Code example:
type AuthorizationPolicyAssociation {
authorizable_id: ID!
authorizable_type: String!
authorization_policy_id: ID!
created_at: JSONDate!
id: ID!
updated_at: JSONDate!
}Fields
Id of the admin resource.
Type of the admin resource - Page or Form.
Id of the authorization policy.
AuthorizationPolicyCollection
Code example:
type AuthorizationPolicyCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [AuthorizationPolicy!]
total_entries: Int!
total_pages: Int!
}Fields
BackgroundJob
Background Job.
type BackgroundJob {
arguments: JSONPayload
attempts: Int
created_at: JSONDate!
dead_at: JSONDate
error_class: String
error_message: String
failed_at: JSONDate
id: ID!
liquid_body: JSONPayload
partial_name: String
queue: String!
retry_at: JSONDate
run_at: JSONDate
source_name: String
started_at: JSONDate
}Fields
How many times the job was tried to be processed. By default the job is not retried on error.
When job has been considered as dead.
Class of an error which made the job fail.
Error which made the job fail.
When job failed.
Liquid partial name path that will be executed.
Which queue is used to process the job.
When job will retry to run.
When job is scheduled to run.
When job started to be processed.
BackgroundJobCollection
Code example:
type BackgroundJobCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [BackgroundJob!]
total_entries: Int!
total_pages: Int!
}Fields
BackgroundJobsResult
Background Jobs Result.
type BackgroundJobsResult {
results: [BackgroundJob!]!
}Fields
BaseError
Base error message.
type BaseError {
message: String!
}Fields
A description of the error.
DataExport
Code example:
type DataExport {
created_at: JSONDate!
id: ID
status: String
updated_at: JSONDate!
url: String
}Fields
ID of the export task, which can be queried. When it is done, the task includes the URL of the zip file.
DataExportCollection
Code example:
type DataExportCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [DataExport!]
total_entries: Int!
total_pages: Int!
}Fields
Document
Code example:
type Document {
id: ID
properties(select: [PropertiesFieldInput!]): HashObject
property(name: String!): String
property_array(name: String!): [String!]
property_boolean(name: String!): Boolean
property_float(name: String!): Float
property_int(name: String!): Int
property_json(name: String!): JSONPayload
property_object(name: String!): HashObject
}Fields
ID of an object.
List of all properties assigned to the object.
Fetch any property by name and return value as a String; ex: hair_color: property(name: "hair_color").
Fetch any property by name and return value as an Array of Strings. ex: todo_list: property_array(name: "todo_list").
Fetch any property by name and return value as a Boolean; ex: price: property_boolean(name: "enabled").
Fetch any property by name and return value as a Float; ex: price: property_float(name: "price").
Fetch any property by name and return value as an Integer; ex: age: property_int(name: "age").
Fetch any property by name and return value as a JSON string.
Fetch any property by name, parse it as a JSON and return object.
EmailNotification
Email Notification.
type EmailNotification {
attachments: String
bcc: String
cc: String
content: String
created_at: JSONDate!
delay_by: String
from: String
id: ID!
layout: String
manually_managed: Boolean
metadata: HashObject
name: String!
physical_file_path: String
reply_to: String
subject: String
to: String
trigger_condition: String
updated_at: JSONDate!
}Fields
Json of the form { "file_name.jpg": { "url": "http://example.com/file.jpg" } } which defines email attachments. Liquid will be processed.
Comma separated blind carbon copy list. Liquid allowed. For example "[email protected], [email protected]".
Comma separated carbon copy list. Liquid allowed. For example "[email protected], [email protected]".
Liquid code to evaluate to valid form html. If email is triggered via form configuration, You have access to "form" variable, with data specified in the configuration.
Liquid code which should evaluate to integer. Delays invoking the job by specified number of minutes. Useful to invoke code at certain point in time, for example 1 hour before something etc. To calculate proper number you can use time_diff filter.
Email address from which you would like to send the email, for example [email protected].
Name of the liquid layout to which the content should be injected.
When true, insites-cli deploy and sync do not change this object.
Name of the email, which is used in form_configurations or mutation to trigger it.
Defines the physical path of the file.
Email address to which users should reply, for example [email protected].
Liquid code to evaluate to text.
Comma separated recipient list. Liquid allowed. For example: "[email protected], [email protected]".
Liquid code which should evaluate to true if the email should be sent.
EmailNotificationCollection
Code example:
type EmailNotificationCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [EmailNotification!]
total_entries: Int!
total_pages: Int!
}Fields
Embedding
Code example:
type Embedding {
content: String
created_at: JSONDate!
embedding: [Float!]!
id: ID!
metadata: HashObject
token_count: Int
updated_at: JSONDate!
}Fields
Original text that was converted to embedding.
Timestamp of when the record was created, automatically generated by the system.
Vector with 1536 dimensions, compatible with openai embeddings.
Tokens.
Timestamp of when the record was updated, automatically generated by the system.
EmbeddingCollection
Code example:
type EmbeddingCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [Embedding!]
total_entries: Int!
total_pages: Int!
}Fields
EncryptedConstant
Code example:
type EncryptedConstant {
created_at: JSONDate!
deleted_at: JSONDate
name: String!
updated_at: JSONDate!
value: String!
}Fields
Name of the constant.
Decrypted value of a constant.
EncryptedConstantCollection
Code example:
type EncryptedConstantCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [EncryptedConstant!]
total_entries: Int!
total_pages: Int!
}Fields
FormSubmitPayload
Autogenerated return type of FormSubmit.
type FormSubmitPayload {
result: Result
validation_errors: HashObject
}Fields
Includes one of model or user, depending on which form was submitted.
Validation error messages based on form fields.
GeoPointType
Code example:
type GeoPointType {
lat: Float
lon: Float
}Fields
GraphQL
Graphql query or mutation.
type GraphQL {
body: String
created_at: JSONDate!
id: ID!
manually_managed: Boolean
metadata: HashObject
physical_file_path: String
updated_at: JSONDate!
}Fields
Graphql query string.
When true, insites-cli deploy and sync do not change this object.
Defines the physical path of the file.
GraphQuery
Code example:
type GraphQuery {
created_at: JSONDate!
id: ID!
manually_managed: Boolean
metadata: HashObject
name: String!
physical_file_path: String
query_string: String!
updated_at: JSONDate!
}Fields
When true, insites-cli deploy and sync do not change this object.
Name of the graph query.
Defines the physical path of the file.
The query.
GraphQueryCollection
Code example:
type GraphQueryCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [GraphQuery!]
total_entries: Int!
total_pages: Int!
}Fields
ImagePresignedUploadUrl
Code example:
type ImagePresignedUploadUrl {
upload_url: String!
upload_url_payload: HashObject!
}Fields
Direct s3 upload endpoint to which you can upload files. Make sure you include upload_url_payload with the request.
Payload you need to provide for upload_url.
ImportCustomizationsMutationPayload
Autogenerated return type of ImportCustomizationsMutation.
type ImportCustomizationsMutationPayload {
external_ids: [ID!]!
ids: [ID!]!
}Fields
ImportUsersMutationPayload
Autogenerated return type of ImportUsersMutation.
type ImportUsersMutationPayload {
external_ids: [ID!]!
ids: [ID!]!
}Fields
IndexSearchCollection
Code example:
type IndexSearchCollection {
aggregations: Aggregations!
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [Document!]
total_entries: Int!
total_pages: Int!
}Fields
Instance
Returns information about the current instance.
type Instance {
created_at: JSONDate!
feature_flags: HashObject!
id: ID!
name: String!
updated_at: JSONDate!
}Fields
Lists all feature flags defined in app/config.yml.
InstanceMetrics
Code example:
type InstanceMetrics {
activities_total: Int!
addresses_total: Int!
attachments_total: Int!
images_total: Int!
records_total: Int!
transactables_total: Int!
user_profiles_total: Int!
users_total: Int!
}Fields
Number of activities.
Number of addresses.
Number of attachments.
Number of images.
Number of records.
Number of transactables.
Number of user profiles.
Number of users.
LiquidLayout
Liquid Layouts.
type LiquidLayout {
body: String
created_at: JSONDate!
format: PageFormat
id: ID!
manually_managed: Boolean
metadata: HashObject
path: String!
physical_file_path: String
updated_at: JSONDate!
}Fields
Liquid code to evaluate to valid html. To inject content of the resources using the layout use {{ content_for_layout }}.
When true, insites-cli deploy and sync do not change this object.
Defines the the path for layout, must starts with layouts/, for example layouts/my_layout. Please note that the layouts/ prefix must be skipped when setting layout in Page or EmailNotification.
Defines the physical path of the file.
LiquidLayoutCollection
Code example:
type LiquidLayoutCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [LiquidLayout!]
total_entries: Int!
total_pages: Int!
}Fields
LiquidPartial
Liquid Partials.
type LiquidPartial {
body: String
created_at: JSONDate!
format: PageFormat
id: ID!
manually_managed: Boolean
metadata: HashObject
path: String!
physical_file_path: String
updated_at: JSONDate!
}Fields
Liquid code to evaluate to valid html.
When true, insites-cli deploy and sync do not change this object.
Defines the name of the partial to be used with include tag.
Defines the physical path of the file.
LiquidPartialCollection
Code example:
type LiquidPartialCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [LiquidPartial!]
total_entries: Int!
total_pages: Int!
}Fields
NotificationSendEmailPayload
Autogenerated return type of NotificationSendEmail.
type NotificationSendEmailPayload {
is_scheduled_to_send: Boolean!
}Fields
ObjectCount
Code example:
type ObjectCount {
count: Int!
}Fields
ObjectUpload
Code example:
type ObjectUpload {
errors: [String!]
job_id: String
upload_object_id: ID!
upload_object_type: String!
uploads: JSONPayload
}Fields
Otp
Code example:
type Otp {
current_code: String!
secret: String!
secret_as_svg_qr_code(issuer: String, label: String): String!
}Fields
SVG from QRcode.
Page
Page.
type Page {
authorization_policies: [AuthorizationPolicy!]
content: String
content_updated_at: JSONDate!
created_at: JSONDate!
deleted_at: JSONDate
dynamic_cache_expire: Int
dynamic_cache_key: String
dynamic_cache_layout: Boolean
format: PageFormat
handler: PageHandler
html_content: String
id: ID!
layout: String
manually_managed: Boolean
max_deep_level: Int
metadata: HashObject
physical_file_path: String
redirect_code: Int
redirect_to: String
request_method: PageRequestMethod
response_headers: HashObject
searchable: Boolean
slug: String!
static_cache_expire: Int
subdomain: String
updated_at: JSONDate!
}Fields
Associated authorization policies.
Content provider by the develop, can be markdown, can be html with liquid etc.
Specfic timestamp of when the content was updated last time, useful for cache.
The number of seconds for which this page will be cached; set dynamic_cache_layout accordingly to your scenario. Triggers authorization. Use only if cache_key cannot be easily determined (for example for search results page).
Liquid which evaluates to the cache key, for example {{ context.page.slug }}/{{ context.params.slug2 }}for page with slug "abc" will cache separately /abc/1 and /abc/2, however abc/1/1 will return the same value as abc/1/2. If left blank, the full url will be used.
Defines whether layout should be cached as well, or only page. Usually it is not possible to cache layout due to dynamic data in it, like name of a logged in user, hence default is false.
Evaluated html content, especially useful if content was provided as markdown.
When true, insites-cli deploy and sync do not change this object.
Max nesting of the url to be resolved by this slug. For example slug "abc" with max_deep_level 2 will resolve /abc, abc/1, abc/2, but will NOT resolve abc/2/something.
Defines the physical path of the file.
The number of seconds for which this page will be cached as a static html page; works only for not logged in users, skips any authorization.
PageCollection
Code example:
type PageCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [Page!]
total_entries: Int!
total_pages: Int!
}Fields
PresignedUploadUrl
Code example:
type PresignedUploadUrl {
upload_url: String!
upload_url_payload: HashObject!
}Fields
Direct s3 upload endpoint to which you can upload files. Make sure you include upload_url_payload with the request.
Payload you need to provide for upload_url.
PresignedUrl
Code example:
type PresignedUrl {
access_url: String!
path: String!
upload_url: String!
}Fields
URL to CDN with your file. Will be available once you upload file.
Presigned URL where you should upload file.
Profile
A profile.
type Profile {
deleted_at: JSONDate
id: ID
profile_type: String!
properties(select: [PropertiesFieldInput!]): HashObject
property(name: String!): String
property_array(name: String!): [String!]
property_boolean(name: String!): Boolean
property_float(name: String!): Float
property_int(name: String!): Int
property_json(name: String!): JSONPayload
property_object(name: String!): HashObject
property_upload(expires_in: Int, name: String!): PropertyUpload
related_record(
filter: RecordsFilterInput
foreign_property: String = "id"
join_on_property: String!
sort: [RecordsSortInput!]
table: [String]!
): Record
related_records(
filter: RecordsFilterInput
foreign_property: String!
join_on_property: String!
limit: Int
sort: [RecordsSortInput!]
table: [String]!
): [Record!]
related_user(
filter: ModelsFilterInput
foreign_property: String = "id"
join_on_property: String = "user_id"
sort: [UsersSortInput!]
): User
related_users(
filter: ModelsFilterInput
foreign_property: String!
join_on_property: String!
limit: Int
sort: [UsersSortInput!]
): [User!]
remote_records(endpoint: Endpoint!, join_on_property: String!): [Record!]
remote_users(endpoint: Endpoint!, join_on_property: String!): [User!]
}Fields
Timestamp of when the record was soft delete, populated by delete action. It is also possible to manually set it via update. To undelete change it back to empty value, but please note that associated records would need to be manually undeleted as well.
ID of an object.
List of all properties assigned to the object.
Fetch any property by name and return value as a String; ex: hair_color: property(name: "hair_color").
Fetch any property by name and return value as an Array of Strings. ex: todo_list: property_array(name: "todo_list").
Fetch any property by name and return value as a Boolean; ex: price: property_boolean(name: "enabled").
Fetch any property by name and return value as a Float; ex: price: property_float(name: "price").
Fetch any property by name and return value as an Integer; ex: age: property_int(name: "age").
Fetch any property by name and return value as a JSON string.
Fetch any property by name, parse it as a JSON and return object.
Fetch any property by name and returns upload details.
Defines the number of seconds for which the generated url will be accessible. Must be set if acl was set to private.
Defines has-one relation with other record; ex: children: records(table: "child" join_on_property: "parent_id" foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Joins record with record-schema-name == table.
Defines has-many relation with other records; ex: children: related_records(table: "children", join_on_property: "parent_id", foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Define table name which should be used as a source for related records.
Defines relation with other user; ex: invited_by: related_user(join_on_property: "invited_by_id") { id }.
Load resources with foreign_property == join_on_property.
Defines has-many relation with other user; ex: children: users(join_on_property: "parent_id", foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Defines relation object accessible over HTTP in JSON collection identified by its ID.
Endpoint that will return resources for given ids in json format.
Load remote resource with id == join_on_property.
Defines relation object accessible over HTTP in JSON collection identified by its ID.
Endpoint that will return resources for given ids in json format.
Load remote resource with id == join_on_property.
Property
Property definition.
type Property {
attribute_type: PropertyTypeEnum!
belongs_to: String
created_at: JSONDate!
default_value: String
id: ID!
manually_managed: Boolean
metadata: HashObject
name: String!
options: HashObject
physical_file_path: String
target_id: ID!
target_type: String!
updated_at: JSONDate!
}Fields
Type of the property.
Defines a relationship with other model schema or the user schema. Used during importing/exporting data.
Default value for new objects.
When true, insites-cli deploy and sync do not change this object.
Name of the property.
Options, used only by type upload.
Defines the physical path of the file.
Id of the schema to which this property definition belongs.
Type of the schema to which this property definition belongs.
PropertyUpload
Code example:
type PropertyUpload {
extension: String
file_name: String
url: String
versions(names: [String!]): HashObject
}Fields
Extension extracted from the url, downcased; for example jpg, pdf etc.
File name extracted from the url.
Url pointing to the file in CDN.
Hash where key is a version name and value is the url to the cdn; populated if the upload file is an image and versions were specified.
Specified only those versions which you want to be returned.
PropertyUploadPresignedUrl
Code example:
type PropertyUploadPresignedUrl {
upload_url: String
upload_url_payload: HashObject
}Fields
Direct s3 upload endpoint to which you can upload files. Make sure you include upload_url_payload with the request.
Payload you need to provide for upload_url.
Record
Code example:
type Record {
created_at: JSONDate!
deleted_at: JSONDate
external_id: ID
id: ID
properties(select: [PropertiesFieldInput!]): HashObject
property(name: String!): String
property_array(name: String!): [String!]
property_boolean(name: String!): Boolean
property_float(name: String!): Float
property_int(name: String!): Int
property_json(name: String!): JSONPayload
property_object(name: String!): HashObject
property_upload(expires_in: Int, name: String!): PropertyUpload
related_record(
filter: RecordsFilterInput
foreign_property: String = "id"
join_on_property: String!
sort: [RecordsSortInput!]
table: [String]!
): Record
related_records(
filter: RecordsFilterInput
foreign_property: String!
join_on_property: String!
limit: Int
sort: [RecordsSortInput!]
table: [String]!
): [Record!]
related_user(
filter: UsersFilterInput
foreign_property: String = "id"
join_on_property: String = "user_id"
sort: [UsersSortInput!]
): User
related_users(
filter: UsersFilterInput
foreign_property: String!
join_on_property: String!
limit: Int
sort: [UsersSortInput!]
): [User!]
remote_records(endpoint: Endpoint!, join_on_property: String!): [Record!]
remote_users(endpoint: Endpoint!, join_on_property: String!): [User!]
table: String
table_id: ID!
updated_at: JSONDate!
user_id: ID
}Fields
Timestamp of when the record was created, automatically generated by the system.
Timestamp of when the record was soft delete, populated by delete action. It is also possible to manually set it via update. To undelete change it back to empty value, but please note that associated records would need to be manually undeleted as well.
Used mainly for import/export, if you want to use third party service as a source of truth.
ID of an object.
List of all properties assigned to the object.
Fetch any property by name and return value as a String; ex: hair_color: property(name: "hair_color").
Fetch any property by name and return value as an Array of Strings. ex: todo_list: property_array(name: "todo_list").
Fetch any property by name and return value as a Boolean; ex: price: property_boolean(name: "enabled").
Fetch any property by name and return value as a Float; ex: price: property_float(name: "price").
Fetch any property by name and return value as an Integer; ex: age: property_int(name: "age").
Fetch any property by name and return value as a JSON string.
Fetch any property by name, parse it as a JSON and return object.
Fetch any property by name and returns upload details.
Defines the number of seconds for which the generated url will be accessible. Must be set if acl was set to private.
Defines has-one relation with other record; ex: children: records(table: "child" join_on_property: "parent_id" foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Joins record with record-schema-name == table.
Defines has-many relation with other records; ex: children: related_records(table: "children", join_on_property: "parent_id", foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Define table name which should be used as a source for related records.
Defines relation with other user; ex: invited_by: related_user(join_on_property: "invited_by_id") { id }.
Load resources with foreign_property == join_on_property.
Defines has-many relation with other user; ex: children: users(join_on_property: "parent_id", foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Defines relation object accessible over HTTP in JSON collection identified by its ID.
Endpoint that will return resources for given ids in json format.
Load remote resource with id == join_on_property.
Defines relation object accessible over HTTP in JSON collection identified by its ID.
Endpoint that will return resources for given ids in json format.
Load remote resource with id == join_on_property.
Name of the Table to which it belongs.
ID of the Table to which it belongs.
Timestamp of when the record was updated, automatically generated by the system.
Id of the User who created and owns the Record.
RecordCollection
Code example:
type RecordCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [Record!]
total_entries: Int!
total_pages: Int!
}Fields
RecordCreate
Code example:
type RecordCreate {
id: ID!
table: String!
}Fields
Name of the Table to which it belongs.
Response
Code example:
type Response {
body: String
headers: HashObject
status: Int!
}Fields
Hash of headers returned by the server.
Standard HTTP status code.
Result
Code example:
type Result {
changes: HashObject
user: User
}Fields
Hash with calculated difference of what has changed.
Updated user, assuming submited form was for resource User.
SentNotification
Sent Notification(api call, email, sms).
type SentNotification {
content: String
created_at: JSONDate!
id: ID!
notification_id: ID!
notification_type: NotificationTypeEnum!
options: HashObject
updated_at: JSONDate!
}Fields
SentNotificationCollection
Code example:
type SentNotificationCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [SentNotification!]
total_entries: Int!
total_pages: Int!
}Fields
SmsNotification
Sms Notification.
type SmsNotification {
content: String
created_at: JSONDate!
delay_by: String
id: ID!
manually_managed: Boolean
metadata: HashObject
name: String!
physical_file_path: String
to: String!
trigger_condition: String
updated_at: JSONDate!
}Fields
Liquid code to evaluate to valid text. If sms is triggered via form configuration, You have access to "form" variable, with data specified in the configuration.
Liquid code which should evaluate to integer. Delays invoking the job by specified number of minutes. Useful to invoke code at certain point in time, for example 1 hour before something etc. To calculate proper number you can use time_diff filter.
When true, insites-cli deploy and sync do not change this object.
Name of the sms, which is used in form_configurations or mutation to trigger it.
Defines the physical path of the file.
Liquid code to evaluate to valid mobile number with country code, for example +1 541 754 3010. Useful filter to build valid mobile number is "$to_mobile_number".
Liquid code which should evaluate to true if the sms should be sent.
SmsNotificationCollection
Code example:
type SmsNotificationCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [SmsNotification!]
total_entries: Int!
total_pages: Int!
}Fields
SmsSendPayload
Autogenerated return type of SmsSend.
type SmsSendPayload {
is_scheduled_to_send: Boolean!
}Fields
Table
Table definition.
type Table {
created_at: JSONDate!
id: ID!
manually_managed: Boolean
metadata: HashObject
name: String!
parameterized_name: String!
physical_file_path: String
properties: [Property!]!
records_count: Int!
updated_at: JSONDate!
}Fields
When true, insites-cli deploy and sync do not change this object.
Defines the physical path of the file.
List of properties attributes to be included in the results.
TableCollection
Code example:
type TableCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [Table!]
total_entries: Int!
total_pages: Int!
}Fields
ThirdPartyIntegration
Third Party Integration.
type ThirdPartyIntegration {
created_at: JSONDate!
id: ID!
settings: HashObject!
type: String!
updated_at: JSONDate!
}Fields
ThirdPartyIntegrationCollection
Code example:
type ThirdPartyIntegrationCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [ThirdPartyIntegration!]
total_entries: Int!
total_pages: Int!
}Fields
Translation
Translation.
type Translation {
created_at: JSONDate!
id: ID!
key: String!
locale: String!
updated_at: JSONDate!
value: String!
}Fields
TranslationJson
TranslationJson.
type TranslationJson {
deleted_records: Int!
key: String!
locale: String!
strategy: TranslationJsonStrategy!
upserted_records: Int!
value_json: HashObject!
}Fields
UpdateUsersMutationPayload
Autogenerated return type of UpdateUsersMutation.
type UpdateUsersMutationPayload {
ids: [ID!]!
}Fields
User
Code example:
type User {
authenticate: Authenticate!
created_at: JSONDate
deleted_at: JSONDate
email: String!
encrypted_password: String
external_id: String
first_name: String
id: ID
jwt_token(algorithm: JwtAlgorithm = HS256, expires_in: Int): String
language: String
last_name: String
middle_name: String
name: String
otp(otp_name: String): Otp!
otp_tokens: [String!]!
profiles(profile_type: String): [Profile!]!
properties(select: [PropertiesFieldInput!]): HashObject
property(name: String!): String
property_array(name: String!): [String!]
property_boolean(name: String!): Boolean
property_float(name: String!): Float
property_int(name: String!): Int
property_json(name: String!): JSONPayload
property_object(name: String!): HashObject
property_upload(expires_in: Int, name: String!): PropertyUpload
related_record(
filter: RecordsFilterInput
foreign_property: String = "id"
join_on_property: String!
sort: [RecordsSortInput!]
table: [String]!
): Record
related_records(
filter: RecordsFilterInput
foreign_property: String!
join_on_property: String!
limit: Int
sort: [RecordsSortInput!]
table: [String]!
): [Record!]
related_user(
filter: ModelsFilterInput
foreign_property: String = "id"
join_on_property: String = "user_id"
sort: [UsersSortInput!]
): User
related_users(
filter: ModelsFilterInput
foreign_property: String!
join_on_property: String!
limit: Int
sort: [UsersSortInput!]
): [User!]
remote_records(endpoint: Endpoint!, join_on_property: String!): [Record!]
remote_users(endpoint: Endpoint!, join_on_property: String!): [User!]
slug: String!
temporary_token(expires_in: Float = 48.0): String
updated_at: JSONDate
}Fields
Validate user credentials.
Timestamp of when the record was created, automatically generated by the system.
Timestamp of when the record was soft delete, populated by delete action. It is also possible to manually set it via update. To undelete change it back to empty value, but please note that associated records would need to be manually undeleted as well.
Used mainly for import/export, if you want to use third party service as a source of truth.
ID of an object.
JWT token that can be used for authentication.
Number of seconds after which the token expires, clamped to a maximum of one year. When omitted, the token expires after the instance session timeout (same source as the `{% sign_in %}` tag). Expired tokens are rejected on decode.
Used by translations to set the language of currently logged in user.
Two factor authentication with TOTP(time based one time password).
Get custom OTP token names.
Associated user profiles, which can be used as user role or namespace for certain group of user properties.
List of all properties assigned to the object.
Fetch any property by name and return value as a String; ex: hair_color: property(name: "hair_color").
Fetch any property by name and return value as an Array of Strings. ex: todo_list: property_array(name: "todo_list").
Fetch any property by name and return value as a Boolean; ex: price: property_boolean(name: "enabled").
Fetch any property by name and return value as a Float; ex: price: property_float(name: "price").
Fetch any property by name and return value as an Integer; ex: age: property_int(name: "age").
Fetch any property by name and return value as a JSON string.
Fetch any property by name, parse it as a JSON and return object.
Fetch any property by name and returns upload details.
Defines the number of seconds for which the generated url will be accessible. Must be set if acl was set to private.
Defines has-one relation with other record; ex: children: records(table: "child" join_on_property: "parent_id" foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Joins record with record-schema-name == table.
Defines has-many relation with other records; ex: children: related_records(table: "children", join_on_property: "parent_id", foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Define table name which should be used as a source for related records.
Defines relation with other user; ex: invited_by: related_user(join_on_property: "invited_by_id") { id }.
Load resources with foreign_property == join_on_property.
Defines has-many relation with other user; ex: children: users(join_on_property: "parent_id", foreign_property: "parent_id") { id }.
Load resources with foreign_property == join_on_property.
Load resources with foreign_property == join_on_property.
Defines relation object accessible over HTTP in JSON collection identified by its ID.
Endpoint that will return resources for given ids in json format.
Load remote resource with id == join_on_property.
Defines relation object accessible over HTTP in JSON collection identified by its ID.
Endpoint that will return resources for given ids in json format.
Load remote resource with id == join_on_property.
To be used in the url instead of id for SEO purposes. Must be unique. By default generated based on first-name and last-name.
A token valid for desired number of hours, which you can use to authorize the user in third party application. To do it, include it in a header with name UserTemporaryToken. You can also manually verify the token with users{ authenticate { temporary_token(..) } } query. Token will be invalidated on password change.
Number of hours after which the token expire.
Timestamp of when the record was updated, automatically generated by the system.
UserCollection
Code example:
type UserCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [User!]
total_entries: Int!
total_pages: Int!
}Fields
UserOtpDeleteTokenInformation
Code example:
type UserOtpDeleteTokenInformation {
otp_name: String
status: String!
user_id: ID!
}Fields
ID of the user.
UserOtpSecretRefreshInformation
Code example:
type UserOtpSecretRefreshInformation {
otp_name: String
status: String!
user_id: ID!
}Fields
ID of the user.
UserSchema
Schema for user defined in user.yml.
type UserSchema {
properties: [Property!]!
}Fields
List of properties attributes to be included in the results.
Version
Version of object change from the last 7 days.
type Version {
created_at: JSONDate!
event: VersionAction!
id: ID!
item_id: ID!
item_type: VersionItemType!
resource: HashObject
whodunnit: String
}Fields
Timestamp when the event happened.
Id of an object which has been created/updated/deleted.
Type of an object which has been created/updated/deleted.
Json representation of a resource prior to the action; null for create action.
Most of the time ID of a User who performed the event. Can be something else if the action was taken by the Insites support team.
VersionCollection
Code example:
type VersionCollection {
current_page: Int!
has_next_page: Boolean!
has_previous_page: Boolean!
per_page: Int!
results: [Version!]
total_entries: Int!
total_pages: Int!
}Fields