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.0.0

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[] | - | | customer_id | CId | - | | description? | string | - | | end_date? | Date | - | | key? | string | - | | logout_uri? | string[] | - | | 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 | the n_id of the associated service provider | | start_date? | Date | Currently Unused Attributes | | tags? | AATag[] | - | | theme? | { colors?: Colors ; font?: CustomFonts } | - | | theme.colors? | Colors | - | | theme.font? | CustomFonts | - |


AATag

Ƭ AATag: "type:client_only" | "type:share_with_new_user" | `related_service_provider:n_id:${NId}` | "ServiceProvider"


AId

Ƭ AId: StringWithIdentity<"AId">

An a_id is the ID of an AA


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 | | :------ | :------ | :------ | | blank | string | - | | climaterolText | string | - | | climaterolUi | string | - | | errorRed | string | - | | feelingHugged | 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" | specifies that the description is formatted in markdown | | display? | { compact_table?: boolean ; expand?: { fields: string[] ; label: string }[] ; head_main?: { fields: string[] ; format?: string } ; head_sub?: { fields: string[] ; format?: string } ; tabular?: { fields: string[] } } | - | | 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.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.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[] | - | | 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? | { organizations?: { access_applications?: { links?: { description: string ; wizardConfig: Omit<WizardConfig, "a_id"> }[] ; properties: Omit<AA, "org_id"> }[] ; properties: Organization }[] ; profile_objects?: { properties: Record<string, unknown> ; schema_name: SchemaName }[] ; relationships?: { from: string ; properties?: Record<string, string> ; to: string ; type: string }[] ; return_to?: string } | only the schema used for the onboarding wizard have this property | | onboard_properties.organizations? | { access_applications?: { links?: { description: string ; wizardConfig: Omit<WizardConfig, "a_id"> }[] ; properties: Omit<AA, "org_id"> }[] ; properties: Organization }[] | Organizations that should be created. NOTE: if multiple are specified, when the wizard completes, the first one will be selected | | onboard_properties.profile_objects? | { properties: Record<string, unknown> ; schema_name: SchemaName }[] | Profile Objects that should be created | | onboard_properties.relationships? | { from: string ; properties?: Record<string, string> ; to: string ; type: string }[] | Relationships that should be created | | 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_group? | string | the group that a schema belongs to, such as "passports". This is useful for forms that accept different types of similar documents. | | schema_type? | SchemaType | - | | tags? | SchemaTag[] | - | | title | string | these fields will always exist on schema | | title_plural? | string | plural version of the title |


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 |


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


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.


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 ; platform_footer_html?: unknown ; previous_state?: SubmissionStatus ; reference: string ; related_offers?: unknown ; related_service_types?: unknown ; score?: unknown ; service_provider_n_id: NId ; source_ip?: unknown ; state: SubmissionStatus ; sub_service_provider_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


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 | - | | key | string | number | - | | label? | string | number | Used in Antd Cascader | | 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 }


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: CommonSchemaAttributes & { clientLocale?: string ; database?: { primary_key: string ; table: string } ; end_date?: string ; groupNames?: Record<string, string> ; group_title?: string ; isProfileSchema?: boolean ; isSpSchema?: boolean ; name: SchemaName ; properties: { [fieldName: string]: SchemaField; } ; required?: (string | ConditionallyRequired)[] ; start_date?: string ; 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" | specifies that the description is formatted in markdown | | 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 | | maxLength? | number | Deprecated raytio's usage not documented | | maximum? | number | for number inputs, the maximum allowed value | | minLength? | number | Deprecated raytio's usage not documented | | 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:cascade" | "display:survey" | "display:quoting" | "display:customModal" | "display:mask" | `display:replace:('${string}', '${string}')` | "display:terms_conditions" | `display:main_media:${string}` | "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:" | "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}` | "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" | "type:service_provider" | "type:service_offer" | "type:marketplace" | "type:client_only" | "type:globally_unique_field"


SchemaType

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

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" | "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 }


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


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 ; 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?: NId ; verifier_service_id?: NId ; verifier_source_id?: NId } & WithValue extends true ? { value: string | number } : {}

Type parameters

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


VerificationProvider

Ƭ VerificationProvider: Object

These n_ids point to service provider profile objects

Type declaration

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


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: Object

Type declaration

| Name | Type | Description | | :------ | :------ | :------ | | date_created | string | ISO Date | | date_updated | string | ISO Date | | provider_signature_check_enabled | boolean | - | | provider_signature_credentials | unknown | - | | provider_subscription_credentials | unknown | - | | provider_webhook_id | NId | n_id of "the webhook provider which can be set up against a service provider" | | provider_webhook_subscription_id | NId | not sure what this is | | status | WebhookStatus | - | | subscribe_log? | { date: string ; response_payload: Json ; response_status_code: number }[] | - | | webhook_action | { webhook_action_type: string }[] | - | | webhook_field_mapping_schema | { [key: string]: string; } | - | | webhook_filter_schema | { field_name: string ; field_value: string ; operator: string } | - | | webhook_filter_schema.field_name | string | - | | webhook_filter_schema.field_value | string | - | | webhook_filter_schema.operator | string | - | | webhook_filter_source | string | - | | webhook_processing_rules | unknown | - | | wi_id | WId | - |


WebhookStatus

Ƭ WebhookStatus: "subscribed" | "pending" | "unsubscribe_failed"


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 | | 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" | - | | 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 | | profile? | boolean | if explictly == false, then it's an AO (not a PO), in which case there can only be one schema | | 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 | | service_provider_link? | boolean | see #463 | | share? | "profile" | "verification" | "both" | the information to share. undefined implies both. | | tags? | WizardPageTag[] | - | | 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. | | 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_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 |