npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@raytio/types

v8.3.2

Published

This module contains typescript definitions for Raytio data structures, such as `Schema` and `ProfileObject`.

Readme

@raytio/types

This module contains typescript definitions for Raytio data structures, such as Schema and ProfileObject.

Usage

Install the package:

npm i -D @raytio/types

Import definitions:

import type { Schema } from "@raytio/types";

Hovering over the type in VSCode will display documentation and available properties.

Versioning

⚠️ This package does not strictly follow semver, since every change to the type definitions is a breaking change.

Documentation

Table of contents

Enumerations

Type Aliases

Type Aliases

AA

Ƭ AA: Object

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | a_id | AId | - | | aa_help? | string | markdown or string help information including [phoneNumber || email] | | aa_introduction? | string | If a user signs up while completing this form, this message will be sent in the sign up email. | | active? | boolean | - | | auth_list_enabled? | boolean | if true, only specific email addresses can submit the form | | callback_uri? | string[] | - | | client_challenge_type? | "turnstile" | null | Bot protection challenge type. If set, users must complete a challenge before accessing the wizard. | | customer_id | CId | - | | description? | string | - | | end_date? | Date | - | | key? | string | - | | logout_uri? | string[] | - | | merchant_id? | MId | the id of the associated merchant (replaces service_provider_n_id) | | metadata? | unknown | - | | name | string | - | | org_id? | OId | the id of the associated organization | | picture? | Urn | Deprecated see !2101 | | picture_url? | string | Easy to use AA logo url for pasting into emails | | ruleset? | unknown | configuration for the submission rules | | scopes? | string[] | - | | secret? | unknown | - | | service_provider_n_id? | NId | Deprecated use merchant_id instead | | start_date? | Date | Currently Unused Attributes | | tags? | AATag[] | - | | theme? | { colors?: Colors ; font?: CustomFonts } | - | | theme.colors? | Colors | - | | theme.font? | CustomFonts | - |


AAObject

Ƭ AAObject: CommonFields<AOId> & { aa_id: AId ; aai_id: IId ; labels: string[] ; properties: Json }


AATag

Ƭ AATag: "type:client_only" | "type:share_with_new_user" | "Merchant"


AINId

Ƭ AINId: StringWithIdentity<"AINId">

A aain_id is the ID of an Instance Node


AINKId

Ƭ AINKId: StringWithIdentity<"AINKId">

A aaink_id is the ID of an Instance Node Key


AId

Ƭ AId: StringWithIdentity<"AId">

An a_id is the ID of an AA


AOId

Ƭ AOId: StringWithIdentity<"AOId">

An ao_id is the ID of an AAObject


AuthzObjectType

Ƭ AuthzObjectType: "dsm_node" | "dsm_access_application" | "dsm_access_application_instance" | "dsm_link" | "dsm_public_profile" | "far_customer" | "group"


AuthzRelation

Ƭ AuthzRelation: "viewer" | "editor" | "admin" | "owner" | "member"

Relation types used by the new authz tuple system


AuthzSubjectType

Ƭ AuthzSubjectType: "user" | "group"


BId

Ƭ BId: StringWithIdentity<"BId">

A b_id is the ID of a badge definition


CId

Ƭ CId: StringWithIdentity<"CId">

A c_id is the ID of a Customer, (will eventually replace org_id)


Colors

Ƭ Colors: Object

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | altColoursBgLight | string | - | | altColoursBgMedium | string | - | | blank | string | - | | climaterolText | string | - | | climaterolUi | string | - | | elevatedSurface | string | - | | errorRed | string | - | | feelingHugged | string | - | | fillNeutral | string | - | | loadingYellow | string | - | | poolblueText | string | - | | poolblueUi | string | - | | raytioOrangeHover | string | - | | raytioOrangeShade | string | ✨ | | raytioOrangeText | string | - | | raytioOrangeUi | string | - | | sariShade | string | - | | silverShell | string | - | | sirPinklyText | string | - | | sirPinklyUi | string | - | | successGreen | string | - | | textFull | string | - | | textLight | string | - | | textMedium | string | - | | violaPerpetuoText | string | - | | violaPerpetuoUi | string | - |


CommonFields

Ƭ CommonFields<IdType, Metadata>: Object

Every object in the new database has these fields. In the interest of type-safety, the id should be one of the well-known IDs that extend StringWithIdentity (e.g. NId or AId). If the ID is irrelevant, then use CommonFields<never> rather than CommonFields<string>. This will deliberately prevent you from utilising the id field until you define a special type for that ID.

This is especially important with the new API where it is much easier to mix up the different types of IDs.

Type parameters

| Name | Type | | :------ | :------ | | IdType | extends StringWithIdentity<string> | | Metadata | unknown |

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | active | boolean | - | | end_date | string | ISO Date | | id | IdType | - | | metadata | Metadata | undefined | - | | resource_group? | string | - | | resource_name? | string | - | | resource_url? | string | - | | row_version? | number | - | | start_date | string | ISO Date | | tenant_id? | string | - |


CommonSchemaAttributes

Ƭ CommonSchemaAttributes: Object

not exported. Attributes that are identical in both client schema & server schema

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | description | string | - | | description_decorator? | "md" | Deprecated Markdown is now rendered by default for all descriptions. This property is no longer needed. | | display? | { compact_table?: boolean ; expand?: { fields: string[] ; label: string }[] ; filters?: { name: string ; operation: "and" | "or" ; tokens: { operator: string ; propertyKey: string ; value: string }[] }[] ; head_main?: { fields: string[] ; format?: string } ; head_sub?: { fields: string[] ; format?: string } ; kanban?: KanbanBoard | KanbanBoard[] ; tabular?: { fields: string[] } ; views?: { columnPrefs?: { id: string ; visible: boolean }[] ; contentDensity?: "comfortable" | "compact" ; filter?: { operation: "and" | "or" ; tokens: { operator: string ; propertyKey: string ; value: string }[] } ; name: string ; pageSize?: number ; sorting?: { isDescending: boolean ; sortingColumn: string } | null ; stickyColumns?: { first: number ; last: number } ; stripedRows?: boolean ; wrapLines?: boolean }[] } | - | | display.compact_table? | boolean | determines if profile pages should display using compacted 'MiniPO' view or deafult view | | display.expand? | { fields: string[] ; label: string }[] | list of fields that should not be shown by default, unless you expand a collpase section which has a name from the label property. Array because there could be multiple expand groups | | display.filters? | { name: string ; operation: "and" | "or" ; tokens: { operator: string ; propertyKey: string ; value: string }[] }[] | Pre-defined filter presets provided by the schema author. These appear as "Default filters" in the admin table UI and cannot be deleted by users (unlike user-saved filters). Each token's propertyKey must match a key in properties. Valid operators: =, !=, :, !:, >, <, >=, <= | | display.head_main? | { fields: string[] ; format?: string } | list of fields to be considered the header/name of the PO fields joined with a space unless format format string is supplied | | display.head_main.fields | string[] | - | | display.head_main.format? | string | - | | display.head_sub? | { fields: string[] ; format?: string } | list of fields to be considered the subheader of the PO fields joined with a space unless format format string is supplied | | display.head_sub.fields | string[] | - | | display.head_sub.format? | string | - | | display.kanban? | KanbanBoard | KanbanBoard[] | Kanban board configuration for the admin dashboard. Either a single board (legacy form) or an array of named boards. See packages/client/docs/layout-hierarchy-guide.md § Kanban Board Layout. | | display.tabular? | { fields: string[] } | By default, the admin dashboard shows columns for all fields in listed in head_main. In rare cases you can use this property to specify a different set of fields to show to admins by default. | | display.tabular.fields | string[] | - | | display.views? | { columnPrefs?: { id: string ; visible: boolean }[] ; contentDensity?: "comfortable" | "compact" ; filter?: { operation: "and" | "or" ; tokens: { operator: string ; propertyKey: string ; value: string }[] } ; name: string ; pageSize?: number ; sorting?: { isDescending: boolean ; sortingColumn: string } | null ; stickyColumns?: { first: number ; last: number } ; stripedRows?: boolean ; wrapLines?: boolean }[] | Pre-defined view presets provided by the schema author. A view bundles filter, sorting, column visibility/order, and display settings (page size, density, etc.) into a named configuration. These appear as "Default views" in the admin table UI and cannot be deleted by users (unlike user-saved views). Every field except name is optional. When applied, fields the view does not specify leave the user's current preference untouched. This lets a schema author define partial views (e.g. just sorting + columns). | | i18n? | { [locale: string]: { [fieldNameOrGroupName: string]: ServerSchemaField & { title_plural?: string }; $loading_create_sub_obj: { title: string } ; $loading_delete_pending_ver: { title: string } ; $loading_extract: { title: string } ; $loading_link_to_person: { title: string } ; $loading_long_verification_message: { description?: string ; title?: string } ; $loading_pending_ver_resubmit: { title: string } ; $loading_permission: { title: string } ; $loading_save: { title: string } ; $loading_update: { title: string } ; $loading_upload: { title: string } ; $loading_verify: { title: string } ; $schema: { description?: string ; title: string ; title_plural?: string } }; } | - | | onboard_properties? | { [namespace: string]: { [version: string]: { [endpoint: string]: Record<string, unknown>[] | undefined; } | undefined; } | object | string[] | string | undefined; actions?: { [key: string]: any; create_access_application_link?: { properties: Record<string, unknown> ; store_as?: string }[] ; create_organization?: { properties: Json ; store_as?: string }[] } ; db?: { [version: string]: { [endpoint: string]: Record<string, unknown>[] | undefined; } | undefined; v1?: { [endpoint: string]: Record<string, unknown>[] | undefined; dsm_access_applications?: Omit<AA, "org_id" | "a_id"> & { links?: { description: string ; wizardConfig: Omit<WizardConfig, "a_id"> }[] ; org_id?: string }[] ; dsm_node_relationships?: { from: string ; properties?: Record<string, unknown> ; to: string ; type: string }[] ; dsm_nodes?: { labels?: string[] ; properties: Record<string, unknown> ; schema_name?: SchemaName }[] ; xrm_merchants?: Record<string, unknown>[] } ; v2?: { [endpoint: string]: Record<string, unknown>[] | undefined; } } ; execution_order?: string[] ; return_to?: string } | only the schema used for the onboarding wizard have this property | | onboard_properties.actions? | { [key: string]: any; create_access_application_link?: { properties: Record<string, unknown> ; store_as?: string }[] ; create_organization?: { properties: Json ; store_as?: string }[] } | High-level actions for complex workflows. create_organization: Single object for creating one organization create_access_application_link: Array for creating multiple links | | onboard_properties.actions.create_access_application_link? | { properties: Record<string, unknown> ; store_as?: string }[] | Creates access application links (can be multiple) | | onboard_properties.actions.create_organization? | { properties: Json ; store_as?: string }[] | Creates a single organization. Use this instead of legacy 'organizations' array. | | onboard_properties.db? | { [version: string]: { [endpoint: string]: Record<string, unknown>[] | undefined; } | undefined; v1?: { [endpoint: string]: Record<string, unknown>[] | undefined; dsm_access_applications?: Omit<AA, "org_id" | "a_id"> & { links?: { description: string ; wizardConfig: Omit<WizardConfig, "a_id"> }[] ; org_id?: string }[] ; dsm_node_relationships?: { from: string ; properties?: Record<string, unknown> ; to: string ; type: string }[] ; dsm_nodes?: { labels?: string[] ; properties: Record<string, unknown> ; schema_name?: SchemaName }[] ; xrm_merchants?: Record<string, unknown>[] } ; v2?: { [endpoint: string]: Record<string, unknown>[] | undefined; } } | Generic API endpoints organized by namespace and version. Structure: {namespace}.{version}.{endpoint_name}POST /{namespace}/{version}/{endpoint_name} Examples: - db.v1.xrm_merchantsPOST /db/v1/xrm_merchants - db.v2.somethingPOST /db/v2/something - persist.v2.endpointPOST /persist/v2/endpoint Any namespace can be used. The db namespace is shown below as the primary example. | | onboard_properties.db.v1? | { [endpoint: string]: Record<string, unknown>[] | undefined; dsm_access_applications?: Omit<AA, "org_id" | "a_id"> & { links?: { description: string ; wizardConfig: Omit<WizardConfig, "a_id"> }[] ; org_id?: string }[] ; dsm_node_relationships?: { from: string ; properties?: Record<string, unknown> ; to: string ; type: string }[] ; dsm_nodes?: { labels?: string[] ; properties: Record<string, unknown> ; schema_name?: SchemaName }[] ; xrm_merchants?: Record<string, unknown>[] } | - | | onboard_properties.db.v1.dsm_access_applications? | Omit<AA, "org_id" | "a_id"> & { links?: { description: string ; wizardConfig: Omit<WizardConfig, "a_id"> }[] ; org_id?: string }[] | Access Applications - POST /db/v1/dsm_access_applications | | onboard_properties.db.v1.dsm_node_relationships? | { from: string ; properties?: Record<string, unknown> ; to: string ; type: string }[] | Relationships - POST /db/v1/dsm_node_relationships | | onboard_properties.db.v1.dsm_nodes? | { labels?: string[] ; properties: Record<string, unknown> ; schema_name?: SchemaName }[] | Profile objects - POST /db/v1/dsm_nodes | | onboard_properties.db.v1.xrm_merchants? | Record<string, unknown>[] | Merchants - POST /db/v1/xrm_merchants | | onboard_properties.db.v2? | { [endpoint: string]: Record<string, unknown>[] | undefined; } | - | | onboard_properties.execution_order? | string[] | Execution order for entity creation. If not specified, uses default order. Examples: ["actions.create_organization", "db.v1.xrm_merchants", "db.v1.dsm_nodes"] | | onboard_properties.return_to? | string | The relative path in the client to redirect to once finished. May include variables | | relationships? | { anyOf?: SchemaName[] ; direction: "from" ; multiple?: boolean ; oneOf?: (SchemaName | "instance")[] ; properties?: { [fieldName: string]: SchemaField; } ; relationship_name: string ; required?: string[] ; required_relationship?: boolean ; type: string }[] | - | | schema_country_codes? | string[] | Array of 2-character country codes that this schema is available for | | schema_group? | string | string[] | the group that a schema belongs to, such as "passports". This is useful for forms that accept different types of similar documents. Can be a single group (string) or multiple groups (string[]) to allow a schema to appear in multiple lists. | | schema_type? | SchemaType | - | | search_terms? | string[] | Additional search terms to help users find schemas (e.g., ["license", "passport", "drivers license"]) | | suggest_post_create? | SchemaName | if specified, suggests this onboarding scenario after creating a PO of this schema type | | tags? | SchemaTag[] | - | | title | string | these fields will always exist on schema | | title_plural? | string | plural version of the title |


ConditionalTags

Ƭ ConditionalTags: Object

Schema-level conditional tags, evaluated at runtime based on form values

Type declaration

| Name | Type | | :------ | :------ | | if | { [fieldName: string]: (string | number | boolean)[]; } | | tags | string[] |


ConditionallyRequired

Ƭ ConditionallyRequired: Object

should be renamed since this applies to ConditionallyVerifiable

Type declaration

| Name | Type | | :------ | :------ | | field | string | | if | { [fieldName: string]: (string | number | boolean)[]; } |


ContactPoint

Ƭ ContactPoint: CommonFields<PCId> & { contact_point_purpose: string ; contact_point_type: string ; e164: string | null ; e164_suffix: string | null ; e164_type: string | null ; email_address: string ; email_address_preferred_format: string ; party_id: PRid ; url: string | null ; url_type: string | null ; uuid: string | undefined }

A Contact Point for an Organization


ContentUrl

Ƭ ContentUrl: `url:${string}`


CustomFonts

Ƭ CustomFonts: Object

Type declaration

| Name | Type | | :------ | :------ | | body? | string | | header? | string |


Customer

Ƭ Customer: CommonFields<CId> & { customer_code: string ; owner_email: string ; party_description: OId ; party_id: PRid ; permission_type: PermissionType | null ; prm_parties?: Party ; user_email: string ; user_id: UId | null }

An organization/customer, directly returned by the API


CustomerSite

Ƭ CustomerSite: CommonFields<never> & { customer_site_code: string ; customer_site_status_code: string ; org_id: OId ; party_site_id: string }


CustomerSiteUse

Ƭ CustomerSiteUse: CommonFields<never> & { customer_site_id: string ; customer_site_use_name: string ; customer_site_use_purpose_code: string ; freight_term_code: string | null ; org_id: OId ; payment_term_id: string ; price_list_version_id: string | null }


CustomerUser

Ƭ CustomerUser: CommonFields<CId> & { customer_code: string ; group_name: string | null ; owner_email: string ; owner_id: UId ; party_description: OId ; party_id: PRid ; party_name: string ; permission_type: PermissionType | null ; user_email: string | null ; user_id: UId | null }

Organization Customer / User, Returned directly by the API


DataTypes

Ƭ DataTypes: "string" | "number" | "boolean" | "object" | "integer" | "array" | "null"


Encrypted

Ƭ Encrypted<_Data>: Object

Type parameters

| Name | Type | | :------ | :------ | | _Data | string |

Type declaration

| Name | Type | | :------ | :------ | | encrypted_data | { algorithm: AesKeyAlgorithm ; data: string ; iv: string } | | encrypted_data.algorithm | AesKeyAlgorithm | | encrypted_data.data | string | | encrypted_data.iv | string | | encrypted_key | { encrypted_key: string } | | encrypted_key.encrypted_key | string |


FndI18nEntry

Ƭ FndI18nEntry: CommonFields<never> & { category: string ; i18n_key: string ; translations: { [locale: string]: { description?: string ; title: string ; title_plural?: string }; } }

An i18n entry from the fnd_i18n_entries API endpoint


GId

Ƭ GId: StringWithIdentity<"GId">

A g_id is the ID of a group


GPMId

Ƭ GPMId: StringWithIdentity<"GPMId">

A gpm_id is the ID of a Verification Type


GroupName

Ƭ GroupName: StringWithIdentity<"GroupName">

a GroupName is the unique name of a group, often used instead of GId


IId

Ƭ IId: StringWithIdentity<"IId">

An i_id is the ID of an Instance


Instance

Ƭ Instance: InstanceWithoutData & { keys: { [nId2: NId2]: { [fieldName: string]: { data: string }; }; } ; profile_objects: ProfileObject[] ; relationships: Relationship[] }

The API used to store data in this format, but it no longer does :( so @raytio/core reconstructs this object.


InstanceNode

Ƭ InstanceNode: CommonFields<AINId> & { aa_id: AId ; field_list: string[] ; n_id: NId }


InstanceNodeKey

Ƭ InstanceNodeKey: CommonFields<AINKId> & { aa_id: AId ; aai_id: IId ; aain_id: AINId ; field_name: string ; key_data: string }


InstanceWithoutData

Ƭ InstanceWithoutData: CommonFields<IId, { message?: string }> & { aa_id: AId ; aack_id: KId ; confirmation_code: string ; data_provider_email: string ; device_id?: unknown ; instance_version?: unknown ; merchant_id: MId ; platform_footer_html?: unknown ; previous_state?: SubmissionStatus ; reference: string ; related_offers?: unknown ; related_service_types?: unknown ; score?: unknown ; source_ip?: unknown ; state: SubmissionStatus ; sub_merchant_hash: string ; thread: string }


KId

Ƭ KId: StringWithIdentity<"KId">

A k_id (also called a aack_id or a publicKeyId) is the ID of an AA's public key


KanbanBoard

Ƭ KanbanBoard: Object

Configuration for a single named kanban board.

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | card_fields? | string[] | Additional fields displayed on each card. | | column_field? | string | Field that determines which column a card belongs to. | | column_field_sort? | "ascending" | "descending" | Default ordering of the columns themselves, by their distinct column_field values. | | kanban_name? | string | Human-readable board name shown in the board selector; should be unique within the schema. | | title_field? | string | Field displayed as the card title. | | y_field? | string | Name of a numeric record field used to order cards vertically within a column. Optional. See packages/client/docs/layout-hierarchy-guide.md § Kanban Board Layout. |


LId

Ƭ LId: StringWithIdentity<"LId">

An l_id is the ID of any data stored in the KV-Store


LOCId

Ƭ LOCId: StringWithIdentity<"LOCId">

A loc_id is the ID of a location


Link

Ƭ Link: Object

Link used for an Access Application, including all additional information

Type declaration

| Name | Type | | :------ | :------ | | a_id | AId | | code | LId | | details? | AA | | id | NId | | isDefault? | boolean | | name | string | | subtitle | string | | url | string |


Location

Ƭ Location: CommonFields<LOCId> & { address_line_1: string | null ; address_line_2: string | null ; address_line_3: string | null ; address_line_4: string | null ; administrative_area_level_1: string | null ; administrative_area_level_2: string | null ; administrative_area_level_3: string | null ; city: string | null ; country: string | null ; geolocation: string | null ; geolocation_outline: string | null ; locality: string | null ; location_description: string | null ; location_name: string ; postal_code: string ; postal_code_suffix: string | null ; premise: string | null ; region: string | null ; route: string | null ; street_number: string | null ; subpremise: string | null }

An Organization Location


Lookup

Ƭ Lookup: Object

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | children? | Lookup[] | - | | description? | string | - | | display_order? | number | Sort order within a lookup set. NULL = unordered. | | image_src? | string | Icon source in format icon:{AntDesignIconName} (e.g., icon:CameraOutlined) | | key | string | number | - | | label? | string | number | Used in Antd Cascader | | lookup_group? | string | Group heading for dropdown lists (e.g., "APAC", "EMEA"). NULL = ungrouped. Translated client-side via the lookup_group entries in fnd_i18n_entries (see LookupGroupLabel). | | requires_2FA? | boolean | used in AkahuDynamicSection only | | value | string | number | - |


MId

Ƭ MId: StringWithIdentity<"MId">

A m_id is the ID of a Merchant


Merchant

Ƭ Merchant: CommonFields<MId> & { merchant_approval_status_code: MerchantApprovalStatusCode | null ; merchant_class_code: MerchantClassCode | null ; merchant_common_name: string | null ; merchant_common_name_i18n: Json | null ; merchant_description: string | null ; merchant_description_i18n: Json | null ; merchant_image_url_logo: string | null ; merchant_image_url_thumbnail: string | null ; merchant_name: string | null ; merchant_name_i18n: Json | null ; merchant_status_code: MerchantStatusCode | null ; merchant_type_code: MerchantTypeCode | null ; party_id: PRid }


MerchantApprovalStatusCode

Ƭ MerchantApprovalStatusCode: "PENDING" | "APPROVED"


MerchantClassCode

Ƭ MerchantClassCode: "CLASS_1" | "CLASS_2"


MerchantStatusCode

Ƭ MerchantStatusCode: "ACTIVE" | "INACTIVE"


MerchantTypeCode

Ƭ MerchantTypeCode: "TYPE_1" | "TYPE_2"


NId

Ƭ NId: StringWithIdentity<"NId">

An n_id is the ID of a ProfileObject


NId2

Ƭ NId2: StringWithIdentity<"NId2">

⚠️ This ID duplicates the NId and should only be used in exceptional circumstances


OId

Ƭ OId: StringWithIdentity<"OId">

An o_id is the ID of an Organization

NOTE: Will be deprecated soon. Use CId instead.


Organization

Ƭ Organization: Object

An organization. NOTE: this is different to how the schema defines an Organization. The schema is wrong (see #468)

Type declaration

| Name | Type | | :------ | :------ | | address? | unknown | | contact_point? | Pick<ContactPoint, "email_address" | "id"> | | customerUsers | CustomerUser[] | | id | CId | | name | string | | orgId | OId |


PCId

Ƭ PCId: StringWithIdentity<"PCId">

A pc_id is the ID of a Party Contact Point


PId

Ƭ PId: StringWithIdentity<"PId">

A p_id is the ID of a Relationship


PKId

Ƭ PKId: StringWithIdentity<"PKId">

A pk_id is the ID of an AA's private key


PLId

Ƭ PLId: StringWithIdentity<"PLId">

A pl_id is the ID of a PriceList


PLLId

Ƭ PLLId: StringWithIdentity<"PLLId">

A pll_id is the ID of a PriceListLine/Plan


PMId

Ƭ PMId: StringWithIdentity<"PMId">

A pm_id is the ID of a PaymentMethod


PRCId

Ƭ PRCId: StringWithIdentity<"PRCId">

A prc_id is the ID of a Price


PRid

Ƭ PRid: StringWithIdentity<"PRid">

A pr_id is the ID of a Party


PTId

Ƭ PTId: StringWithIdentity<"PTId">

A pt_id is the ID of a PaymentProcessor


Party

Ƭ Party: CommonFields<PRid, PartyMetadata> & { far_customers: CommonFields<CId> & { customer_approval_status_code: string ; customer_class_code: string ; customer_status_code: string ; customer_type_code: string ; far_customers_customer_approval_status_lookup: Lookup ; far_customers_customer_class_lookup: Lookup ; far_customers_customer_status_lookup: Lookup ; far_customers_customer_type_lookup: Lookup ; far_customers_freight_terms_lookup: Lookup ; freight_term_code: string ; price_list_version_id: string | null }[] ; party_description: OId ; party_image_url_logo: string | null ; party_name: string ; party_type: string }


PartyMetadata

Ƭ PartyMetadata: Object

An Organizations credentials

Type declaration

| Name | Type | | :------ | :------ | | centrix_credentials | unknown | | gandalf | unknown | | stripe | { customer: unknown } | | stripe.customer | unknown |


PartySite

Ƭ PartySite: CommonFields<never> & { location_id: number ; party_id: PRid ; party_site_description: string | null ; party_site_name: string ; party_use_primary: string ; party_uses: string[] }

An Organization Site


PaymentMethod

Ƭ PaymentMethod: CommonFields<PMId> & { address_line1_check?: string | null ; address_postal_code_check?: string | null ; card_expiry_month: number ; card_expiry_year: number ; card_fingerprint?: string | null ; card_funding_method: string ; card_last_4_digits: string ; customer_id: CId ; cvc_check?: string | null ; payer_payment_method_type: string ; payment_method_available_networks: string[] | string ; payment_method_country_code: string | null ; payment_method_preferred_network?: string | null ; payment_method_scheme: string ; payment_processor_id: string ; payment_processor_payment_method_id: string ; primary_payment_method: boolean ; three_d_secure_usage?: string | null }


PaymentProcessor

Ƭ PaymentProcessor: CommonFields<PTId> & { party_id: PRid ; payment_processor_name: string ; payment_processor_system: string }


Permission

Ƭ Permission: Object

Type declaration

| Name | Type | | :------ | :------ | | group_name | "ALL" | "Public" | `sharing|${UId}|${UId}` | GId | | group_permission_type | "VIEWS" | "EDITS" | null | | id | NId | | is_owner | boolean | | labels | string[] | | n_id | NId | | permission_id | PId | | properties | { permissions: string ; provider_name: string } | | properties.permissions | string | | properties.provider_name | string | | user_permission_type | string | null |


PermissionType

Ƭ PermissionType: "ADMINS" | "VIEWS" | "EDITS" | "OWNS"


PriceList

Ƭ PriceList: Object

Type declaration

| Name | Type | | :------ | :------ | | id | PLId | | pcm_price_list_versions? | [{ id: string ; pcm_price_list_lines: PriceListLine[] ; price_list_version_name: string }] | | price_list_currency | string | | price_list_description? | string | | price_list_description_i18n? | string | | price_list_name | string | | price_list_name_i18n? | string | | price_list_type | string |


PriceListLine

Ƭ PriceListLine: Object

Type declaration

| Name | Type | | :------ | :------ | | id | PLLId | | pcm_prices | { amount: number ; billing_recurrence: string ; gpm_items: { id: string ; item_description: string ; item_description_i18n: string | null ; item_key: string ; item_name: string ; item_name_i18n: string | null ; primary_uom: string } ; id: PRCId ; price_currency: string ; recurring_billing_interval: string | null ; recurring_billing_interval_count: number ; recurring_billing_scheme: string ; recurring_billing_usage_type: string } | | pcm_prices.amount | number | | pcm_prices.billing_recurrence | string | | pcm_prices.gpm_items | { id: string ; item_description: string ; item_description_i18n: string | null ; item_key: string ; item_name: string ; item_name_i18n: string | null ; primary_uom: string } | | pcm_prices.gpm_items.id | string | | pcm_prices.gpm_items.item_description | string | | pcm_prices.gpm_items.item_description_i18n | string | null | | pcm_prices.gpm_items.item_key | string | | pcm_prices.gpm_items.item_name | string | | pcm_prices.gpm_items.item_name_i18n | string | null | | pcm_prices.gpm_items.primary_uom | string | | pcm_prices.id | PRCId | | pcm_prices.price_currency | string | | pcm_prices.recurring_billing_interval | string | null | | pcm_prices.recurring_billing_interval_count | number | | pcm_prices.recurring_billing_scheme | string | | pcm_prices.recurring_billing_usage_type | string |


ProfileObject

Ƭ ProfileObject<Properties>: Partial<CommonFields<NId2>> & { labels: string[] ; n_id: NId ; properties: Properties }

You can supply an option type argument if you know exactly what the properties will be

Type parameters

| Name | Type | | :------ | :------ | | Properties | Json |


RealVer

Ƭ RealVer: Object

This is what @raytio/core exposes, which is more useable than Verification

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | belongsToNId? | NId | nId of the PO that the verification belongs to. Could be undefined | | expired | Date | false | If the verification has expired, it's the date that it expired on. Otherwise it's false | | fieldName | string | - | | metadata? | VerificationPayload<false>["metadata"] | arbitary metadata returned by the verifier | | nID | NId | nId of the verification | | provider | VerificationProvider | - | | signature | string | - | | value | unknown | - | | verified | boolean | whether the fieldName/value pair is verified, as confirmed by the API. This should be the single source of truth. | | xId | string | this will be a unique id to group verifications from the same PO. Doesn't work yet |


Relationship

Ƭ Relationship: Object

Type declaration

| Name | Type | | :------ | :------ | | active? | boolean | | end | Urn | | end_date? | string | | p_id | PId | | properties? | { [fieldName: string]: unknown; name?: string ; p_id: PId } | | properties.name? | string | | properties.p_id | PId | | start | Urn | | start_date? | string | | type | string |


SId

Ƭ SId: StringWithIdentity<"SId">

A s_id is the ID of a Subscription


SLId

Ƭ SLId: StringWithIdentity<"SLId">

A sl_id is the ID of a SubscriptionLine


Schema

Ƭ Schema: CommonFields<never> & CommonSchemaAttributes & { clientLocale?: string ; conditionalTags?: ConditionalTags[] ; database?: { method?: "POST" | "PATCH" | "DELETE" ; path?: string ; primary_key: string ; query_parameters?: string ; return_to?: SchemaName ; select?: string ; table?: string } ; groupNames?: Record<string, string> ; group_title?: string ; groups?: { order?: string[] } ; isProfileSchema?: boolean ; isSpSchema?: boolean ; merchant_id?: MId ; name: SchemaName ; properties: { [fieldName: string]: SchemaField; } ; required?: (string | ConditionallyRequired)[] ; timing?: Record<"extract" | "live_person" | "verify_pending_delay", number> ; type?: DataTypes ; verified_fields?: (string | ConditionallyRequired)[] ; version: string ; wasExpandedByClient?: boolean }

Raytio's variant of JSON Schema, as used by the client. It is a modified version of what the API returns.


SchemaField

Ƭ SchemaField: Object

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | $id? | string | Deprecated don't use, it's inconsistent | | $ref? | SchemaName | If this field refers to a sub-object | | add_row_btn_label? | string | if this field is a table input, this determines the text to show on the "Add Row" btn | | allOf? | [{ $ref: string }, ServerSchemaField] | - | | content? | string | only checkbox uses this prop | | contentEncoding? | "base64" | - | | contentMediaType? | string | - | | content_source? | string | determines where an image is sourced from | | default? | unknown | the default value | | default_signature_name? | string | used on fields that are a signature file picker, see !849 also used to determine if the MediaPicker should be shown inline | | description? | string | - | | description_decorator? | "md" | Deprecated Markdown is now rendered by default for all descriptions. This property is no longer needed. | | encrypt? | boolean | whether the field should be encrypted | | encrypt_require? | boolean | if true, the user must have encryption enabled to save this data, see #1324 | | enum? | (string | number | boolean)[] | - | | examples? | unknown[] | - | | foreign_key_of? | SchemaName | if this field is a foreign key, i.e. it is a primary key of a different schema, then that other's schema name should be listed here. e.g. json { "name": "ss_AA", "properties": { "org_id": { "foreign_key_of": "ss_Org" } } } | | format? | "date" | "date-time" | "uri" | - | | hash_inputs? | string | the input string for a platform_unique_id | | image_silhouette? | string | If this schema requires a photo of a document, you can specify a URL to a silhouette image which will be overlaid on top of the camera. For best results, the image should have a transparent background + minimal white foreground | | items? | { properties: { [subFieldName: string]: SchemaField; } ; type: DataTypes } | items is used for nested arrays, (while properties is used for nested objects) | | items.properties | { [subFieldName: string]: SchemaField; } | - | | items.type | DataTypes | - | | lookup? | string | URL to a JSON file in the Lookup format | | lookupTransform? | string | { key?: string ; path: string ; value?: string } | Transforms the lookup response into the expected { key, value }[] format. Use when the API returns data in a different structure. Simple format (extract array from path, use values as both key and value): json "lookupTransform": "[0].scopes" Object format (specify key/value mapping): json "lookupTransform": { "path": "[0].items", "key": "id", "value": "name" } | | maxLength? | number | for string inputs, the maximum character length. Also used to determine textarea rendering (maxLength > 30 renders a textarea) | | maximum? | number | for number inputs, the maximum allowed value | | minLength? | number | for string inputs, the minimum character length. Not currently used anywhere in the client | | minimum? | number | for number inputs, the minimum allowed value | | override? | { permissions: { default: string } } | - | | override.permissions | { default: string } | - | | override.permissions.default | string | ideally this could be typed as keyof typeof GROUPS but the schemas aren't consistent and we have to assume it could be invalid. | | pattern? | string | - | | patternMessage? | string | if a pattern is specified, this is the error message | | priority? | number | - | | properties? | { [subFieldName: string]: SchemaField; } | properties is used for nested objects, (while items is used for nested arrays) | | readOnly? | boolean | readOnly means the Wizard won't show this field | | step? | number | for number inputs, the step size used in the input or slider | | table_empty_message? | string | if this field is a table input, this determines the text to show if the table is empty | | tags? | SchemaFieldTag[] | - | | title? | string | - | | title_plural? | string | - | | type? | DataTypes | - |


SchemaFieldTag

Ƭ SchemaFieldTag: "password" | `group:${string}` | `upload-group:${string}` | "display:stars" | "display:no_autofill" | "display:currency" | `display:currency:${string}` | "display:checkbox" | "display:radio" | "display:cascade" | "display:survey" | "display:quoting" | "display:customModal" | "display:mask" | `display:replace:('${string}', '${string}')` | "display:terms_conditions" | `display:main_media:${string}` | "display:markdown" | "display:content-block" | "display:info" | "display:warning" | "display:error" | "date_component:day" | "date_component:month" | "date_component:year" | "action:allow_copy" | "action:allow_unreplace" | "action:allow_password_compromise_check" | "action:client_upload" | "action:hash" | "action:require_webauthn" | "action:generate_pepper:" | `action:timeout:${number}` | `action:server-search:${string}` | "verify:show_if_pending" | "special:hide_select_behind_button" | "type:capture_geolocation" | "type:extract_required"


SchemaName

Ƭ SchemaName: StringWithIdentity<"SchemaName">

A SchemaName is the ID of a Schema


SchemaTag

Ƭ SchemaTag: "action:experimental_pass_object_store_id" | "action:verify" | `action:display_qr_code:${string}:${string}` | `action:display_global_idv_app_qr_code:${string}` | "default_camera:rear" | "default_camera:front" | `oauth2_component:name:${string}` | `oauth2_component:redirect_url:${string}` | `time:${string}:${number}` | `link_to:${string}:${string}` | "display:default_view:edit" | "support_challenge" | "type:merchant" | "type:service_offer" | "type:marketplace" | "type:client_only" | "type:globally_unique_field" | "type:application_object"


SchemaType

Ƭ SchemaType: "ss" | "ps" | "us" | "ms"

Type Classification of a Schema returned by API


ServerSchemaField

Ƭ ServerSchemaField: Omit<SchemaField, "$prop">

the only difference between the client & server's definition is that the client adds $prop


SubmissionStatus

Ƭ SubmissionStatus: "Submitted" | "Processing" | "Rejected" | "Expired" | "Completed" | "DataChanged" | "Received" | "Pending" | "Accepted"


Subscription

Ƭ Subscription: CommonFields<SId> & { billing_cycle_day_of_month: number | null ; billing_cycle_day_of_week: number | null ; billing_cycle_hour: number | null ; billing_cycle_minute: number | null ; billing_cycle_month: number | null ; billing_cycle_second: number | null ; cancellation_effective_date: string | null ; cancellation_final_invoice_action: string ; cancellation_request_date: string | null ; cancellation_request_reason: string | null ; current_billing_period_end: string | null ; current_billing_period_start: string ; subscribed_to_customer_id: string ; subscribed_to_customer_site_id: string | null ; subscribed_to_party_contact_point_id: string ; subscription_name: string ; subscription_name_i18n: string | null ; subscription_timezone_offset_minutes: number | null }


SubscriptionLine

Ƭ SubscriptionLine: CommonFields<SLId> & { billing_subscription_id: SId ; metadata: string | null ; price_id: PRCId ; subscribed_qty: number }


TId

Ƭ TId: StringWithIdentity<"TId">

A t_id is the ID of a transaction


TNTId

Ƭ TNTId: StringWithIdentity<"TNTId">

A tnt_id is the ID of a Tenant


Tenant

Ƭ Tenant: CommonFields<TNTId> & { tenant_description: string | null ; tenant_domain_prefix: string | null ; tenant_name: string }


UId

Ƭ UId: StringWithIdentity<"UId">

A u_id is the ID of a user


Urn

Ƭ Urn: `urn:user:${UId}` | `urn:profile_object:${NId}` | `urn:instance:${IId}` | `urn:temp_object:${LId}` | `urn:schema:${SchemaName}` | `urn:document:${NId}`

e.g. "urn:user:..."


UrnNodeType

Ƭ UrnNodeType: "user" | "profile_object" | "instance" | "schema" | "temp_object" | "document"


Validation

Ƭ Validation: Object

validation data returned by preVerify (part of the extract&map API)

Type declaration

| Name | Type | | :------ | :------ | | breakdown | { [category: string]: { code?: number ; passed: boolean ; reason?: string ; severity?: "low" | "medium" | "high" }; } | | score | number | | warning? | string[] |


Verification

Ƭ Verification<WithValue>: ProfileObject<{ field: string ; n_id: NId ; valid_until?: string ; verifications: [{ data: VerificationPayload<WithValue> ; hashing_algorithm?: "SHA512" ; key_id?: string ; key_urn?: string ; signature: string ; signing_algorithm?: "RSASSA_PSS_SHA_512" }] }>

Different APIs inconsistently include the value prop. If you know it exists, use Verification<true>, otherwise just Verification. Verifications from the DataContext don't have the value.

Type parameters

| Name | Type | | :------ | :------ | | WithValue | extends boolean = false |


VerificationPayload

Ƭ VerificationPayload<WithValue>: { field: string ; hashed_source_n_id?: NId ; metadata?: { [otherAttributes: string]: unknown; pending_details?: { pending_time: "short" | "long" ; pending_type: "time" | "user" } ; safeHarbourScore?: SafeHarbourCode ; status?: "pending" | "approved" ; validation?: { id: string ; url: string } } ; passed: boolean ; request_div: string ; schema?: SchemaName ; source: string ; source_hashed_n_id?: NId ; source_n_id?: NId ; type?: null ; v_id: string ; verification_date: string ; verification_type_id: GPMId ; verifier_div: string ; verifier_id?: MId ; verifier_service_id?: MId ; verifier_source_id?: MId } & WithValue extends true ? { value: string | number } : {}

Type parameters

| Name | Type | | :------ | :------ | | WithValue | extends boolean |


VerificationProvider

Ƭ VerificationProvider: Object

These IDs point to merchants (formerly service provider profile objects)

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | dataSourceNId? | MId | - | | date? | Date | the date which the verification was verified on, or last re-verified on | | serviceProviderNId? | MId | - | | verificationTypeId? | GPMId | - | | verifierNId? | MId | - |


VerificationType

Ƭ VerificationType: CommonFields<GPMId> & { asset: boolean | null ; inventory_organization_number: number | null ; item_description: string ; item_description_i18n: Json | null ; item_dimension_height: number | null ; item_dimension_length: number | null ; item_dimension_uom: string | null ; item_dimension_width: number | null ; item_key: string ; item_key_01: string | null ; item_key_02: string | null ; item_key_03: string | null ; item_mass: number | null ; item_mass_uom: string | null ; item_name: string ; item_name_i18n: Json | null ; item_number: number ; item_type: string | null ; item_volume: number | null ; item_volume_uom: string | null ; org_number: number ; primary_uom: string ; purchased: boolean | null ; returnable: boolean | null ; secondary_uom: string | null ; shipped: boolean | null ; source_organization_number: number | null ; source_type: string | null ; stocked: boolean | null ; transacted: boolean | null }


WId

Ƭ WId: StringWithIdentity<"WId">

A wi_id is the ID of a Webhook


WSId

Ƭ WSId: StringWithIdentity<"WSId">

A ws_id is the ID of a transition


Webhook

Ƭ Webhook: CommonFields<WId> & { aa_id: AId ; date_created?: string ; date_updated?: string ; metadata: unknown ; provider_signature_check_enabled: boolean ; provider_signature_credentials: unknown ; provider_subscription_credentials: unknown ; provider_webhook_id: string ; provider_webhook_subscription_id: string | null ; status: WebhookStatus ; subscribe_log?: { date: string ; response_payload: Json ; response_status_code: number }[] | null ; webhook_action: { webhook_action_type: string }[] | null ; webhook_field_mapping_schema: { [key: string]: string; } | null ; webhook_filter_schema: { field_name: string ; field_value: string ; operator: string } | null ; webhook_filter_source: string | null ; webhook_processing_rules: unknown ; wi_id?: WId }


WebhookStatus

Ƭ WebhookStatus: "PENDING" | "SUBSCRIBED" | "UNSUBSCRIBED" | "UNSUBSCRIBE_FAILED" | "ERROR" | "ARCHIVED"


WizardConfig

Ƭ WizardConfig: Object

when a form link is generated, this is what gets saved on the API. Each value can be overridden in the query parameters. If specified in the query parameters, it needs to be base64 and/or url encoded.

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | a_id | AId | - | | display_sharing_preview? | boolean | If this value is true, the form will display some data sharing information before the form (WizardPreview) | | emails? | string[] | if specified, the email addresses that a submission should be sent to | | expiry_date? | number | number of days in the future | | pages | WizardPage[] | - | | quick_onboard? | boolean | whether the passwordless-signup process should be used if the user visits this form, and they are not logged in. If false, the standard sign-up process will be used | | quick_onboard_require_consent? | boolean | If true, users must explicitly accept privacy terms during quick onboard. If false, the form auto-submits without user intervention. Default ts true | | reference? | string | - | | relationships? | { from: string ; properties?: Record<string, any> ; to: string ; type: string }[] | a list of relationships that should be created after the wizard completes (see #987) | | return_to? | string | the callback url to redirect to once complete. Must be in the AA's list of authorized callback urls | | review_text? | string | the text on the WizardReview page | | sharing_data_message? | string | the loading message to show next to the spinner after the review screen | | signature_schema? | SchemaName | if specified, a Wizard will be shown on the review page with this schema | | skip_share? | boolean | Deprecated added in !244 but never used | | submit_text? | string | the submit button label | | terms_schema? | SchemaName | if specified, a Wizard will be shown on the review page with this schema | | update_reference? | boolean | whether the user can change the reference, if there is one in the QP | | webauthn_type? | ("usb" | "nfc" | "ble" | "internal")[] | if specified, the user must validate their WebAuthN credential before they can submit the form |


WizardPage

Ƭ WizardPage: Object

configuration data for a single wizard page (WizardConfig)

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | allow_upload? | boolean | do not allow uploading in ImageDynamicSection if this is explictly false | | branching_rule_name? | string | If specified, this is is a "Conditional Wizard Page", which is only shown if the rule passed. This field contains the ID (not name) of the rule. | | create_new_text? | string | custom text to display on the Create New button | | description? | string | the fallback description, if there isn't one for the specific situation | | description_create? | string | - | | description_select? | string | - | | description_update? | string | - | | display_field_description? | boolean | whether the field descriptions should be shown | | display_field_title? | boolean | whether the field titles should be shown | | display_mode? | "light" | "dark" | "default" | can you force the colour theme to change for just one page (#1066, #1074). At the moment this on pages that use WebcamImageCapture | | display_schema_description? | boolean | whether the schema description should be shown | | extract_threshold? | number | for ImageDynamicSection, the minimum score to be treated as a pass | | extract_threshold_fail_action? | "capture" | "capture_review" | "recapture_or_next_step" | "review" | "next_step" | for ImageDynamicSection, the action to take if pre-verify fails | | extract_threshold_null_action? | WizardPage["extract_threshold_fail_action"] | for ImageDynamicSection, the action to take if the API returns no validation: {} object | | extract_threshold_pass_action? | "review" | "next_step" | for ImageDynamicSection, the action to take if pre-verify passes | | field_list? | string[] | if supplied, only the fields that are listed should be shared (#520, #1024) | | filter | "oneOf" | "anyOf" | - | | is_terminal? | boolean | If true, user cannot proceed past this page (error/blocking behavior) If false, user can continue to next page (informational) Default ts false | | merchant_link? | boolean | see #463 | | multiple? | boolean | if true mulitple POs can be shared | | name? | string | symbol | if undefined, the schema title will be used | | optional? | boolean | if true this page can be skipped. The PageResult wil be undefined | | optional_fields? | string[] | a list of fields that should not be required, even if the schema says they're required | | page_content? | string | Content to display on message pages. Supports markdown if page_content_decorator is "md" | | page_content_decorator? | "md" | Set to "md" to render page_content as markdown | | page_type? | "form" | "message" | Page type: 'form' for data collection, 'message' for info/error display Default ts "form" | | profile? | boolean | Deprecated - AO/PO classification is now done per-object using schema tags (type:application_object) instead of page-level profile property | | reverify_header? | string | custom text & header that's displayed on reverfication modal for expired PO | | reverify_text? | string | - | | schemas | SchemaName[] | - | | selection_hierarchy_json? | string | a URL to a preset for configuing NestedSchemaSelect. DeepConfig | | share? | "profile" | "verification" | "both" | the information to share. undefined implies both. | | tags? | WizardPageTag[] | - | | terminal_button_label? | string | Label for the exit button on terminal pages Default ts "Home" | | terminal_button_url? | string | URL to redirect to when exit button is clicked on terminal pages Default ts "/" or return_to from WizardConfig | | verify_data? | boolean | if false, ProfileObjects created while completing the form will not be verified. if true, you can only select ProfileObjects that are partially or fully verified. undefined implies true. Default ts true |


WizardPageTag

Ƭ WizardPageTag: "action:require_chip"


WrappedSchema

Ƭ WrappedSchema: Object

This is what's returned by the API

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | active | true | - | | end_date | string | ISO Date. If this tag exists, the schema is deprecated. | | extends_schema_name? | SchemaName | null | Base schema to extend (same tenant). NULL = not an extension. | | extends_schema_version? | string | null | Pin to specific base schema version. NULL = use version_current. | | merchant_id? | MId | The merchant this schema belongs to. Always present for merchant-type (ms) schemas; absent for all other schema types. | | resource_group? | string | CommonFields row metadata — the polymorphic entity this schema maps to. | | resource_name? | string | - | | schema | CommonSchemaAttributes & { $id?: string ; $schema?: string ; allOf?: { $ref?: string ; if?: Partial<WrappedSchema["schema"]> ; then?: Partial<WrappedSchema["schema"]> }[] ; definitions?: Record<string, { $ref: Urn }> ; properties: { [fieldName: string]: ServerSchemaField; } ; required?: string[] ; verified_fields?: string[] } | - | | schema_country_codes? | string[] | Country codes that this schema is available for | | schema_name | SchemaName | Schema Name Type and Version Properties | | schema_type | SchemaType | - | | schema_version | string | - | | start_date | string | ISO Date | | version_current | boolean | whether the version is the latest version |