Files
cfw-autumn/shared/drizzle/meta/0008_snapshot.json
2026-06-08 10:14:28 +01:00

7517 lines
194 KiB
JSON

{
"id": "40c5361a-8cff-473f-93c1-4dfbc06b00d7",
"prevId": "9e1bb4b2-1869-4ca9-ba67-8fbcea263c37",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.account": {
"name": "account",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"account_id": {
"name": "account_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"provider_id": {
"name": "provider_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"access_token": {
"name": "access_token",
"type": "text",
"primaryKey": false,
"notNull": false
},
"refresh_token": {
"name": "refresh_token",
"type": "text",
"primaryKey": false,
"notNull": false
},
"id_token": {
"name": "id_token",
"type": "text",
"primaryKey": false,
"notNull": false
},
"access_token_expires_at": {
"name": "access_token_expires_at",
"type": "timestamp",
"primaryKey": false,
"notNull": false
},
"refresh_token_expires_at": {
"name": "refresh_token_expires_at",
"type": "timestamp",
"primaryKey": false,
"notNull": false
},
"scope": {
"name": "scope",
"type": "text",
"primaryKey": false,
"notNull": false
},
"password": {
"name": "password",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"account_userId_idx": {
"name": "account_userId_idx",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"account_user_id_user_id_fk": {
"name": "account_user_id_user_id_fk",
"tableFrom": "account",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.actions": {
"name": "actions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"request_id": {
"name": "request_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"org_slug": {
"name": "org_slug",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"customer_id": {
"name": "customer_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"entity_id": {
"name": "entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"internal_entity_id": {
"name": "internal_entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"auth_type": {
"name": "auth_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"method": {
"name": "method",
"type": "text",
"primaryKey": false,
"notNull": true
},
"path": {
"name": "path",
"type": "text",
"primaryKey": false,
"notNull": true
},
"timestamp": {
"name": "timestamp",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true,
"default": "now()"
},
"properties": {
"name": "properties",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_actions_on_internal_entity_id": {
"name": "idx_actions_on_internal_entity_id",
"columns": [
{
"expression": "internal_entity_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"actions_org_id_fkey": {
"name": "actions_org_id_fkey",
"tableFrom": "actions",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
},
"actions_customer_id_fkey": {
"name": "actions_customer_id_fkey",
"tableFrom": "actions",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "set null",
"onUpdate": "no action"
},
"actions_entity_id_fkey": {
"name": "actions_entity_id_fkey",
"tableFrom": "actions",
"tableTo": "entities",
"columnsFrom": [
"internal_entity_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "set null",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.api_keys": {
"name": "api_keys",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"prefix": {
"name": "prefix",
"type": "text",
"primaryKey": false,
"notNull": false
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": false
},
"hashed_key": {
"name": "hashed_key",
"type": "text",
"primaryKey": false,
"notNull": false
},
"meta": {
"name": "meta",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"scopes": {
"name": "scopes",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"api_keys_org_id_fkey": {
"name": "api_keys_org_id_fkey",
"tableFrom": "api_keys",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"api_keys_hashed_key_key": {
"name": "api_keys_hashed_key_key",
"nullsNotDistinct": false,
"columns": [
"hashed_key"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.auto_topup_limit_states": {
"name": "auto_topup_limit_states",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"customer_id": {
"name": "customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"feature_id": {
"name": "feature_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"purchase_window_ends_at": {
"name": "purchase_window_ends_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"purchase_count": {
"name": "purchase_count",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"attempt_window_ends_at": {
"name": "attempt_window_ends_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"attempt_count": {
"name": "attempt_count",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"failed_attempt_window_ends_at": {
"name": "failed_attempt_window_ends_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"failed_attempt_count": {
"name": "failed_attempt_count",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"last_attempt_at": {
"name": "last_attempt_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"last_failed_attempt_at": {
"name": "last_failed_attempt_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
}
},
"indexes": {
"auto_topup_limits_org_env_internal_customer_feature_unique": {
"name": "auto_topup_limits_org_env_internal_customer_feature_unique",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "feature_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"auto_topup_limits_org_id_fkey": {
"name": "auto_topup_limits_org_id_fkey",
"tableFrom": "auto_topup_limit_states",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"auto_topup_limits_internal_customer_id_fkey": {
"name": "auto_topup_limits_internal_customer_id_fkey",
"tableFrom": "auto_topup_limit_states",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.chat_approvals": {
"name": "chat_approvals",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"provider": {
"name": "provider",
"type": "text",
"primaryKey": false,
"notNull": true
},
"workspace_id": {
"name": "workspace_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"channel_id": {
"name": "channel_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"message_ts": {
"name": "message_ts",
"type": "text",
"primaryKey": false,
"notNull": false
},
"provider_user_id": {
"name": "provider_user_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"run_id": {
"name": "run_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"tool_call_id": {
"name": "tool_call_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"tool_name": {
"name": "tool_name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"tool_args": {
"name": "tool_args",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"preview": {
"name": "preview",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"expires_at": {
"name": "expires_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"decided_at": {
"name": "decided_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"decided_by_provider_user_id": {
"name": "decided_by_provider_user_id",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"chat_approvals_org_id_fkey": {
"name": "chat_approvals_org_id_fkey",
"tableFrom": "chat_approvals",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.chat_installations": {
"name": "chat_installations",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"provider": {
"name": "provider",
"type": "text",
"primaryKey": false,
"notNull": true
},
"workspace_id": {
"name": "workspace_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"workspace_name": {
"name": "workspace_name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"bot_user_id": {
"name": "bot_user_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"bot_access_token": {
"name": "bot_access_token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"scopes": {
"name": "scopes",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"default_env": {
"name": "default_env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"sandbox_api_key_id": {
"name": "sandbox_api_key_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"sandbox_api_key": {
"name": "sandbox_api_key",
"type": "text",
"primaryKey": false,
"notNull": false
},
"live_api_key_id": {
"name": "live_api_key_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"live_api_key": {
"name": "live_api_key",
"type": "text",
"primaryKey": false,
"notNull": false
},
"installed_by_user_id": {
"name": "installed_by_user_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"installed_by_provider_user_id": {
"name": "installed_by_provider_user_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
}
},
"indexes": {},
"foreignKeys": {
"chat_installations_org_id_fkey": {
"name": "chat_installations_org_id_fkey",
"tableFrom": "chat_installations",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"chat_installations_org_provider_key": {
"name": "chat_installations_org_provider_key",
"nullsNotDistinct": false,
"columns": [
"org_id",
"provider"
]
},
"chat_installations_provider_workspace_key": {
"name": "chat_installations_provider_workspace_key",
"nullsNotDistinct": false,
"columns": [
"provider",
"workspace_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.chat_oauth_credentials": {
"name": "chat_oauth_credentials",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"chat_installation_id": {
"name": "chat_installation_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"oauth_client_id": {
"name": "oauth_client_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"oauth_consent_id": {
"name": "oauth_consent_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"access_token": {
"name": "access_token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"refresh_token": {
"name": "refresh_token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"access_token_expires_at": {
"name": "access_token_expires_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"scopes": {
"name": "scopes",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
}
},
"indexes": {},
"foreignKeys": {
"chat_oauth_credentials_installation_id_fkey": {
"name": "chat_oauth_credentials_installation_id_fkey",
"tableFrom": "chat_oauth_credentials",
"tableTo": "chat_installations",
"columnsFrom": [
"chat_installation_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"chat_oauth_credentials_org_id_fkey": {
"name": "chat_oauth_credentials_org_id_fkey",
"tableFrom": "chat_oauth_credentials",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"chat_oauth_credentials_installation_env_key": {
"name": "chat_oauth_credentials_installation_env_key",
"nullsNotDistinct": false,
"columns": [
"chat_installation_id",
"env"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.chat_results": {
"name": "chat_results",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"data": {
"name": "data",
"type": "jsonb",
"primaryKey": false,
"notNull": true
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.checkouts": {
"name": "checkouts",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"customer_id": {
"name": "customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"action": {
"name": "action",
"type": "text",
"primaryKey": false,
"notNull": true
},
"params": {
"name": "params",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"params_version": {
"name": "params_version",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"response": {
"name": "response",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"stripe_invoice_id": {
"name": "stripe_invoice_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"expires_at": {
"name": "expires_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"completed_at": {
"name": "completed_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_checkouts_stripe_invoice_id": {
"name": "idx_checkouts_stripe_invoice_id",
"columns": [
{
"expression": "stripe_invoice_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.customer_entitlements": {
"name": "customer_entitlements",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"customer_product_id": {
"name": "customer_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"entitlement_id": {
"name": "entitlement_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text COLLATE \"C\"",
"primaryKey": false,
"notNull": true
},
"internal_entity_id": {
"name": "internal_entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"internal_feature_id": {
"name": "internal_feature_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"unlimited": {
"name": "unlimited",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"balance": {
"name": "balance",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"next_reset_at": {
"name": "next_reset_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"usage_allowed": {
"name": "usage_allowed",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"adjustment": {
"name": "adjustment",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"additional_balance": {
"name": "additional_balance",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"entities": {
"name": "entities",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"expires_at": {
"name": "expires_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"cache_version": {
"name": "cache_version",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"customer_id": {
"name": "customer_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"feature_id": {
"name": "feature_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"external_id": {
"name": "external_id",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_customer_entitlements_product_id": {
"name": "idx_customer_entitlements_product_id",
"columns": [
{
"expression": "customer_product_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_entitlements_internal_customer_id": {
"name": "idx_customer_entitlements_internal_customer_id",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "hash",
"with": {}
},
"idx_customer_entitlements_internal_customer_id_btree": {
"name": "idx_customer_entitlements_internal_customer_id_btree",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_entitlements_entitlement_id": {
"name": "idx_customer_entitlements_entitlement_id",
"columns": [
{
"expression": "entitlement_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_entitlements_internal_entity_id": {
"name": "idx_customer_entitlements_internal_entity_id",
"columns": [
{
"expression": "internal_entity_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "hash",
"with": {}
},
"idx_customer_entitlements_on_next_reset_at": {
"name": "idx_customer_entitlements_on_next_reset_at",
"columns": [
{
"expression": "next_reset_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_entitlements_loose_customer_expires": {
"name": "idx_customer_entitlements_loose_customer_expires",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "expires_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"customer_entitlements\".\"customer_product_id\" IS NULL",
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"entitlements_internal_feature_id_fkey": {
"name": "entitlements_internal_feature_id_fkey",
"tableFrom": "customer_entitlements",
"tableTo": "features",
"columnsFrom": [
"internal_feature_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"customer_entitlements_internal_entity_id_fkey": {
"name": "customer_entitlements_internal_entity_id_fkey",
"tableFrom": "customer_entitlements",
"tableTo": "entities",
"columnsFrom": [
"internal_entity_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"customer_entitlements_customer_product_id_fkey": {
"name": "customer_entitlements_customer_product_id_fkey",
"tableFrom": "customer_entitlements",
"tableTo": "customer_products",
"columnsFrom": [
"customer_product_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "cascade"
},
"customer_entitlements_entitlement_id_fkey": {
"name": "customer_entitlements_entitlement_id_fkey",
"tableFrom": "customer_entitlements",
"tableTo": "entitlements",
"columnsFrom": [
"entitlement_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.customer_prices": {
"name": "customer_prices",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"price_id": {
"name": "price_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"options": {
"name": "options",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"customer_product_id": {
"name": "customer_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_customer_prices_product_id": {
"name": "idx_customer_prices_product_id",
"columns": [
{
"expression": "customer_product_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_prices_price_id": {
"name": "idx_customer_prices_price_id",
"columns": [
{
"expression": "price_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_prices_internal_customer_id": {
"name": "idx_customer_prices_internal_customer_id",
"columns": [
{
"expression": "\"internal_customer_id\" COLLATE \"C\"",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"customer_prices\".\"internal_customer_id\" IS NOT NULL",
"concurrently": true,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"customer_prices_customer_product_id_fkey": {
"name": "customer_prices_customer_product_id_fkey",
"tableFrom": "customer_prices",
"tableTo": "customer_products",
"columnsFrom": [
"customer_product_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"customer_prices_internal_customer_id_fkey": {
"name": "customer_prices_internal_customer_id_fkey",
"tableFrom": "customer_prices",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"customer_prices_price_id_fkey": {
"name": "customer_prices_price_id_fkey",
"tableFrom": "customer_prices",
"tableTo": "prices",
"columnsFrom": [
"price_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.customer_products": {
"name": "customer_products",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_product_id": {
"name": "internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_entity_id": {
"name": "internal_entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": false
},
"processor": {
"name": "processor",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"canceled": {
"name": "canceled",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"canceled_at": {
"name": "canceled_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"ended_at": {
"name": "ended_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"starts_at": {
"name": "starts_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"access_starts_at": {
"name": "access_starts_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"options": {
"name": "options",
"type": "jsonb[]",
"primaryKey": false,
"notNull": false
},
"product_id": {
"name": "product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"free_trial_id": {
"name": "free_trial_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"trial_ends_at": {
"name": "trial_ends_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"billing_cycle_anchor_resets_at": {
"name": "billing_cycle_anchor_resets_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"collection_method": {
"name": "collection_method",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'charge_automatically'"
},
"subscription_ids": {
"name": "subscription_ids",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"scheduled_ids": {
"name": "scheduled_ids",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"quantity": {
"name": "quantity",
"type": "numeric",
"primaryKey": false,
"notNull": false,
"default": 1
},
"is_custom": {
"name": "is_custom",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"customer_id": {
"name": "customer_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"entity_id": {
"name": "entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"billing_version": {
"name": "billing_version",
"type": "text",
"primaryKey": false,
"notNull": false
},
"api_version": {
"name": "api_version",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"api_semver": {
"name": "api_semver",
"type": "text",
"primaryKey": false,
"notNull": false
},
"external_id": {
"name": "external_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_checkout_session_id": {
"name": "stripe_checkout_session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"previous_customer_product_id": {
"name": "previous_customer_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"on_trial_end": {
"name": "on_trial_end",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_customer_products_customer_status": {
"name": "idx_customer_products_customer_status",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_products_on_internal_entity_id": {
"name": "idx_customer_products_on_internal_entity_id",
"columns": [
{
"expression": "internal_entity_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_products_on_internal_product_id": {
"name": "idx_customer_products_on_internal_product_id",
"columns": [
{
"expression": "internal_product_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_products_subscription_ids": {
"name": "idx_customer_products_subscription_ids",
"columns": [
{
"expression": "subscription_ids",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_customer_products_scheduled_ids": {
"name": "idx_customer_products_scheduled_ids",
"columns": [
{
"expression": "scheduled_ids",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_customer_products_stripe_checkout_session_id": {
"name": "idx_customer_products_stripe_checkout_session_id",
"columns": [
{
"expression": "stripe_checkout_session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customer_products_revenuecat_processor": {
"name": "idx_customer_products_revenuecat_processor",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "(\"customer_products\".\"processor\" ->> 'type') = 'revenuecat'",
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"customer_products_free_trial_id_fkey": {
"name": "customer_products_free_trial_id_fkey",
"tableFrom": "customer_products",
"tableTo": "free_trials",
"columnsFrom": [
"free_trial_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
},
"customer_products_internal_customer_id_fkey": {
"name": "customer_products_internal_customer_id_fkey",
"tableFrom": "customer_products",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "cascade"
},
"customer_products_internal_product_id_fkey": {
"name": "customer_products_internal_product_id_fkey",
"tableFrom": "customer_products",
"tableTo": "products",
"columnsFrom": [
"internal_product_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "no action",
"onUpdate": "no action"
},
"customer_products_internal_entity_id_fkey": {
"name": "customer_products_internal_entity_id_fkey",
"tableFrom": "customer_products",
"tableTo": "entities",
"columnsFrom": [
"internal_entity_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "set null",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.customers": {
"name": "customers",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"email": {
"name": "email",
"type": "text",
"primaryKey": false,
"notNull": false
},
"fingerprint": {
"name": "fingerprint",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "null"
},
"metadata": {
"name": "metadata",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"processor": {
"name": "processor",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"processors": {
"name": "processors",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'{}'::jsonb"
},
"send_email_receipts": {
"name": "send_email_receipts",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"auto_topups": {
"name": "auto_topups",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"spend_limits": {
"name": "spend_limits",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"usage_alerts": {
"name": "usage_alerts",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"overage_allowed": {
"name": "overage_allowed",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"config": {
"name": "config",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'{}'::jsonb"
}
},
"indexes": {
"customers_email_null_id_unique": {
"name": "customers_email_null_id_unique",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "lower(\"email\")",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": true,
"where": "\"customers\".\"id\" IS NULL AND \"customers\".\"email\" IS NOT NULL AND \"customers\".\"email\" != ''",
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_org_env_fingerprint": {
"name": "idx_customers_org_env_fingerprint",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "fingerprint",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"customers\".\"fingerprint\" IS NOT NULL",
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_processor_id": {
"name": "idx_customers_processor_id",
"columns": [
{
"expression": "(\"processor\" ->> 'id')",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_composite": {
"name": "idx_customers_composite",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_org_env_internal_id": {
"name": "idx_customers_org_env_internal_id",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"internal_id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_email_trgm": {
"name": "idx_customers_email_trgm",
"columns": [
{
"expression": "\"email\" gin_trgm_ops",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"customers\".\"email\" IS NOT NULL",
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_customers_name_trgm": {
"name": "idx_customers_name_trgm",
"columns": [
{
"expression": "\"name\" gin_trgm_ops",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"customers\".\"name\" IS NOT NULL",
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_customers_id_trgm": {
"name": "idx_customers_id_trgm",
"columns": [
{
"expression": "\"id\" gin_trgm_ops",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"customers\".\"id\" IS NOT NULL",
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_customers_org_id_env_created_at": {
"name": "idx_customers_org_id_env_created_at",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"created_at\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_cursor": {
"name": "idx_customers_cursor",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"created_at\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
},
{
"expression": "\"id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_processors_revenuecat": {
"name": "idx_customers_processors_revenuecat",
"columns": [
{
"expression": "(\"processors\" ->> 'revenuecat')",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_customers_processors_vercel": {
"name": "idx_customers_processors_vercel",
"columns": [
{
"expression": "(\"processors\" ->> 'vercel')",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"customers_org_id_fkey": {
"name": "customers_org_id_fkey",
"tableFrom": "customers",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"cus_id_constraint": {
"name": "cus_id_constraint",
"nullsNotDistinct": false,
"columns": [
"org_id",
"id",
"env"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.entities": {
"name": "entities",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"internal_id": {
"name": "internal_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": false
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"deleted": {
"name": "deleted",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"internal_feature_id": {
"name": "internal_feature_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"spend_limits": {
"name": "spend_limits",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"usage_alerts": {
"name": "usage_alerts",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"overage_allowed": {
"name": "overage_allowed",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"feature_id": {
"name": "feature_id",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_entities_internal_customer_id": {
"name": "idx_entities_internal_customer_id",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_entities_customer_internal_desc": {
"name": "idx_entities_customer_internal_desc",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"internal_id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_entities_org_env_id": {
"name": "idx_entities_org_env_id",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_entities_cursor": {
"name": "idx_entities_cursor",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"created_at\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
},
{
"expression": "\"id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"entities_internal_customer_id_fkey": {
"name": "entities_internal_customer_id_fkey",
"tableFrom": "entities",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"entities_internal_feature_id_fkey": {
"name": "entities_internal_feature_id_fkey",
"tableFrom": "entities",
"tableTo": "features",
"columnsFrom": [
"internal_feature_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"entities_org_id_fkey": {
"name": "entities_org_id_fkey",
"tableFrom": "entities",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"entity_id_constraint": {
"name": "entity_id_constraint",
"nullsNotDistinct": false,
"columns": [
"org_id",
"env",
"internal_customer_id",
"id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.entitlements": {
"name": "entitlements",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"internal_feature_id": {
"name": "internal_feature_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_product_id": {
"name": "internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"internal_reward_id": {
"name": "internal_reward_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"is_custom": {
"name": "is_custom",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"allowance_type": {
"name": "allowance_type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"allowance": {
"name": "allowance",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"interval": {
"name": "interval",
"type": "text",
"primaryKey": false,
"notNull": false
},
"interval_count": {
"name": "interval_count",
"type": "numeric",
"primaryKey": false,
"notNull": false,
"default": 1
},
"carry_from_previous": {
"name": "carry_from_previous",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"entity_feature_id": {
"name": "entity_feature_id",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "null"
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"feature_id": {
"name": "feature_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"usage_limit": {
"name": "usage_limit",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"expiry_duration": {
"name": "expiry_duration",
"type": "text",
"primaryKey": false,
"notNull": false
},
"expiry_length": {
"name": "expiry_length",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"rollover": {
"name": "rollover",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_entitlements_internal_product_id": {
"name": "idx_entitlements_internal_product_id",
"columns": [
{
"expression": "internal_product_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_entitlements_internal_reward_id": {
"name": "idx_entitlements_internal_reward_id",
"columns": [
{
"expression": "internal_reward_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_entitlements_reward_feature": {
"name": "idx_entitlements_reward_feature",
"columns": [
{
"expression": "internal_reward_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "internal_feature_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_entitlements_internal_reward_id_c_partial": {
"name": "idx_entitlements_internal_reward_id_c_partial",
"columns": [
{
"expression": "\"internal_reward_id\" COLLATE \"C\"",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"entitlements\".\"internal_reward_id\" IS NOT NULL",
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"entitlements_internal_feature_id_fkey": {
"name": "entitlements_internal_feature_id_fkey",
"tableFrom": "entitlements",
"tableTo": "features",
"columnsFrom": [
"internal_feature_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"entitlements_internal_product_id_fkey": {
"name": "entitlements_internal_product_id_fkey",
"tableFrom": "entitlements",
"tableTo": "products",
"columnsFrom": [
"internal_product_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "cascade"
},
"entitlements_internal_reward_id_fkey": {
"name": "entitlements_internal_reward_id_fkey",
"tableFrom": "entitlements",
"tableTo": "rewards",
"columnsFrom": [
"internal_reward_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"entitlements_id_key": {
"name": "entitlements_id_key",
"nullsNotDistinct": false,
"columns": [
"id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.events": {
"name": "events",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"org_slug": {
"name": "org_slug",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "bigint",
"primaryKey": false,
"notNull": false
},
"timestamp": {
"name": "timestamp",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"event_name": {
"name": "event_name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"idempotency_key": {
"name": "idempotency_key",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "null"
},
"value": {
"name": "value",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"set_usage": {
"name": "set_usage",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"entity_id": {
"name": "entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"internal_entity_id": {
"name": "internal_entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"internal_product_id": {
"name": "internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"customer_id": {
"name": "customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"properties": {
"name": "properties",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"deductions": {
"name": "deductions",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_events_internal_customer_id": {
"name": "idx_events_internal_customer_id",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_events_internal_entity_id": {
"name": "idx_events_internal_entity_id",
"columns": [
{
"expression": "internal_entity_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_events_customer_non_usage_ts": {
"name": "idx_events_customer_non_usage_ts",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"timestamp\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
},
{
"expression": "\"id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"events\".\"set_usage\" = false",
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"events_internal_customer_id_fkey": {
"name": "events_internal_customer_id_fkey",
"tableFrom": "events",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"unique_event_constraint": {
"name": "unique_event_constraint",
"nullsNotDistinct": false,
"columns": [
"org_id",
"env",
"customer_id",
"event_name",
"idempotency_key"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.features": {
"name": "features",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": false
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"config": {
"name": "config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"display": {
"name": "display",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "null"
},
"archived": {
"name": "archived",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"event_names": {
"name": "event_names",
"type": "text[]",
"primaryKey": false,
"notNull": false,
"default": "'{}'"
}
},
"indexes": {},
"foreignKeys": {
"features_org_id_fkey": {
"name": "features_org_id_fkey",
"tableFrom": "features",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"feature_id_constraint": {
"name": "feature_id_constraint",
"nullsNotDistinct": false,
"columns": [
"org_id",
"id",
"env"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.free_trials": {
"name": "free_trials",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"internal_product_id": {
"name": "internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"duration": {
"name": "duration",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'day'"
},
"length": {
"name": "length",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"unique_fingerprint": {
"name": "unique_fingerprint",
"type": "boolean",
"primaryKey": false,
"notNull": false
},
"is_custom": {
"name": "is_custom",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"card_required": {
"name": "card_required",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"on_end": {
"name": "on_end",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_free_trials_internal_product_id": {
"name": "idx_free_trials_internal_product_id",
"columns": [
{
"expression": "internal_product_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"free_trials_internal_product_id_fkey": {
"name": "free_trials_internal_product_id_fkey",
"tableFrom": "free_trials",
"tableTo": "products",
"columnsFrom": [
"internal_product_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.invitation": {
"name": "invitation",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"organization_id": {
"name": "organization_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"email": {
"name": "email",
"type": "text",
"primaryKey": false,
"notNull": true
},
"role": {
"name": "role",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"inviter_id": {
"name": "inviter_id",
"type": "text",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"invitation_organizationId_idx": {
"name": "invitation_organizationId_idx",
"columns": [
{
"expression": "organization_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"invitation_email_idx": {
"name": "invitation_email_idx",
"columns": [
{
"expression": "email",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"invitation_organization_id_organizations_id_fk": {
"name": "invitation_organization_id_organizations_id_fk",
"tableFrom": "invitation",
"tableTo": "organizations",
"columnsFrom": [
"organization_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"invitation_inviter_id_user_id_fk": {
"name": "invitation_inviter_id_user_id_fk",
"tableFrom": "invitation",
"tableTo": "user",
"columnsFrom": [
"inviter_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.invoice_line_items": {
"name": "invoice_line_items",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"invoice_id": {
"name": "invoice_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_id": {
"name": "stripe_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_invoice_id": {
"name": "stripe_invoice_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_invoice_item_id": {
"name": "stripe_invoice_item_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_subscription_item_id": {
"name": "stripe_subscription_item_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_product_id": {
"name": "stripe_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_price_id": {
"name": "stripe_price_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_discountable": {
"name": "stripe_discountable",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": true
},
"amount": {
"name": "amount",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"amount_after_discounts": {
"name": "amount_after_discounts",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"currency": {
"name": "currency",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'usd'"
},
"stripe_quantity": {
"name": "stripe_quantity",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"total_quantity": {
"name": "total_quantity",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"paid_quantity": {
"name": "paid_quantity",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": true
},
"description_source": {
"name": "description_source",
"type": "text",
"primaryKey": false,
"notNull": false
},
"direction": {
"name": "direction",
"type": "text",
"primaryKey": false,
"notNull": true
},
"billing_timing": {
"name": "billing_timing",
"type": "text",
"primaryKey": false,
"notNull": false
},
"prorated": {
"name": "prorated",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"price_id": {
"name": "price_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"customer_product_ids": {
"name": "customer_product_ids",
"type": "jsonb",
"primaryKey": false,
"notNull": true,
"default": "'[]'::jsonb"
},
"customer_price_ids": {
"name": "customer_price_ids",
"type": "jsonb",
"primaryKey": false,
"notNull": true,
"default": "'[]'::jsonb"
},
"customer_entitlement_ids": {
"name": "customer_entitlement_ids",
"type": "jsonb",
"primaryKey": false,
"notNull": true,
"default": "'[]'::jsonb"
},
"internal_product_id": {
"name": "internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"product_id": {
"name": "product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"internal_feature_id": {
"name": "internal_feature_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"feature_id": {
"name": "feature_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"effective_period_start": {
"name": "effective_period_start",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"effective_period_end": {
"name": "effective_period_end",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"discounts": {
"name": "discounts",
"type": "jsonb[]",
"primaryKey": false,
"notNull": false,
"default": "'{}'"
}
},
"indexes": {
"idx_invoice_line_items_customer_product_ids": {
"name": "idx_invoice_line_items_customer_product_ids",
"columns": [
{
"expression": "customer_product_ids",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "gin",
"with": {}
}
},
"foreignKeys": {
"invoice_line_items_invoice_id_fkey": {
"name": "invoice_line_items_invoice_id_fkey",
"tableFrom": "invoice_line_items",
"tableTo": "invoices",
"columnsFrom": [
"invoice_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"invoice_line_items_stripe_id_unique": {
"name": "invoice_line_items_stripe_id_unique",
"nullsNotDistinct": false,
"columns": [
"stripe_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.invoice_templates": {
"name": "invoice_templates",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"footer": {
"name": "footer",
"type": "text",
"primaryKey": false,
"notNull": false
},
"memo": {
"name": "memo",
"type": "text",
"primaryKey": false,
"notNull": false
},
"net_terms_days": {
"name": "net_terms_days",
"type": "integer",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_invoice_templates_org_id": {
"name": "idx_invoice_templates_org_id",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"invoice_templates_org_id_fkey": {
"name": "invoice_templates_org_id_fkey",
"tableFrom": "invoice_templates",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"invoice_templates_id_unique": {
"name": "invoice_templates_id_unique",
"nullsNotDistinct": false,
"columns": [
"id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.invoices": {
"name": "invoices",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"product_ids": {
"name": "product_ids",
"type": "text[]",
"primaryKey": false,
"notNull": false,
"default": "'{}'"
},
"internal_product_ids": {
"name": "internal_product_ids",
"type": "text[]",
"primaryKey": false,
"notNull": false,
"default": "'{}'"
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_entity_id": {
"name": "internal_entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_id": {
"name": "stripe_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"processor_type": {
"name": "processor_type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'draft'"
},
"hosted_invoice_url": {
"name": "hosted_invoice_url",
"type": "text",
"primaryKey": false,
"notNull": false
},
"total": {
"name": "total",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"amount_paid": {
"name": "amount_paid",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"refunded_amount": {
"name": "refunded_amount",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"currency": {
"name": "currency",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'usd'"
},
"discounts": {
"name": "discounts",
"type": "jsonb[]",
"primaryKey": false,
"notNull": false,
"default": "'{}'"
},
"items": {
"name": "items",
"type": "jsonb[]",
"primaryKey": false,
"notNull": false,
"default": "'{}'"
}
},
"indexes": {
"idx_invoices_customer_created": {
"name": "idx_invoices_customer_created",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"created_at\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
},
{
"expression": "\"id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_invoices_internal_entity_id": {
"name": "idx_invoices_internal_entity_id",
"columns": [
{
"expression": "internal_entity_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"invoices\".\"internal_entity_id\" IS NOT NULL",
"concurrently": true,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"invoices_internal_customer_id_fkey": {
"name": "invoices_internal_customer_id_fkey",
"tableFrom": "invoices",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"invoices_internal_entity_id_fkey": {
"name": "invoices_internal_entity_id_fkey",
"tableFrom": "invoices",
"tableTo": "entities",
"columnsFrom": [
"internal_entity_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"invoices_stripe_id_key": {
"name": "invoices_stripe_id_key",
"nullsNotDistinct": false,
"columns": [
"stripe_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.jwks": {
"name": "jwks",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"public_key": {
"name": "public_key",
"type": "text",
"primaryKey": false,
"notNull": true
},
"private_key": {
"name": "private_key",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.member": {
"name": "member",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"organization_id": {
"name": "organization_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"role": {
"name": "role",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'member'"
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"member_organizationId_idx": {
"name": "member_organizationId_idx",
"columns": [
{
"expression": "organization_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"member_userId_idx": {
"name": "member_userId_idx",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"member_organization_id_organizations_id_fk": {
"name": "member_organization_id_organizations_id_fk",
"tableFrom": "member",
"tableTo": "organizations",
"columnsFrom": [
"organization_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"member_user_id_user_id_fk": {
"name": "member_user_id_user_id_fk",
"tableFrom": "member",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.metadata": {
"name": "metadata",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"expires_at": {
"name": "expires_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"data": {
"name": "data",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_invoice_id": {
"name": "stripe_invoice_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_checkout_session_id": {
"name": "stripe_checkout_session_id",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.migration_errors": {
"name": "migration_errors",
"schema": "",
"columns": {
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"migration_job_id": {
"name": "migration_job_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"data": {
"name": "data",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"message": {
"name": "message",
"type": "text",
"primaryKey": false,
"notNull": false
},
"code": {
"name": "code",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"migration_customers_internal_customer_id_fkey": {
"name": "migration_customers_internal_customer_id_fkey",
"tableFrom": "migration_errors",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"migration_customers_migration_job_id_fkey": {
"name": "migration_customers_migration_job_id_fkey",
"tableFrom": "migration_errors",
"tableTo": "migration_jobs",
"columnsFrom": [
"migration_job_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {
"migration_errors_pkey": {
"name": "migration_errors_pkey",
"columns": [
"internal_customer_id",
"migration_job_id"
]
}
},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.migration_item_runs": {
"name": "migration_item_runs",
"schema": "",
"columns": {
"migration_item_run_id": {
"name": "migration_item_run_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"migration_internal_id": {
"name": "migration_internal_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"migration_run_id": {
"name": "migration_run_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"dry_run": {
"name": "dry_run",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"item_kind": {
"name": "item_kind",
"type": "text",
"primaryKey": false,
"notNull": true
},
"item_id": {
"name": "item_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true
},
"timestamp": {
"name": "timestamp",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true,
"default": "now()"
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"migration_item_runs_live_unique": {
"name": "migration_item_runs_live_unique",
"columns": [
{
"expression": "migration_internal_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "item_kind",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "item_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"where": "\"migration_item_runs\".\"dry_run\" = false",
"concurrently": false,
"method": "btree",
"with": {}
},
"migration_item_runs_dry_run_unique": {
"name": "migration_item_runs_dry_run_unique",
"columns": [
{
"expression": "migration_internal_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "migration_run_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "item_kind",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "item_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"where": "\"migration_item_runs\".\"dry_run\" = true",
"concurrently": false,
"method": "btree",
"with": {}
},
"migration_item_runs_customer_recent_idx": {
"name": "migration_item_runs_customer_recent_idx",
"columns": [
{
"expression": "item_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "\"updated_at\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"migration_item_runs\".\"item_kind\" = 'customer'",
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.migration_jobs": {
"name": "migration_jobs",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"current_step": {
"name": "current_step",
"type": "text",
"primaryKey": false,
"notNull": false
},
"from_internal_product_id": {
"name": "from_internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"to_internal_product_id": {
"name": "to_internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"step_details": {
"name": "step_details",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"migration_jobs_from_internal_product_id_fkey": {
"name": "migration_jobs_from_internal_product_id_fkey",
"tableFrom": "migration_jobs",
"tableTo": "products",
"columnsFrom": [
"from_internal_product_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"migration_jobs_org_id_fkey": {
"name": "migration_jobs_org_id_fkey",
"tableFrom": "migration_jobs",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"migration_jobs_to_internal_product_id_fkey": {
"name": "migration_jobs_to_internal_product_id_fkey",
"tableFrom": "migration_jobs",
"tableTo": "products",
"columnsFrom": [
"to_internal_product_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.migration_runs": {
"name": "migration_runs",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"migration_internal_id": {
"name": "migration_internal_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true
},
"dry_run": {
"name": "dry_run",
"type": "boolean",
"primaryKey": false,
"notNull": true
},
"lazy_run": {
"name": "lazy_run",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"trigger_run_id": {
"name": "trigger_run_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"error_message": {
"name": "error_message",
"type": "text",
"primaryKey": false,
"notNull": false
},
"only_ids": {
"name": "only_ids",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"target_limit": {
"name": "target_limit",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"started_at": {
"name": "started_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"finished_at": {
"name": "finished_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"migration_runs_active_per_migration_unique": {
"name": "migration_runs_active_per_migration_unique",
"columns": [
{
"expression": "migration_internal_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"where": "\"migration_runs\".\"status\" IN ('queued', 'running')",
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"migration_runs_migration_internal_id_fkey": {
"name": "migration_runs_migration_internal_id_fkey",
"tableFrom": "migration_runs",
"tableTo": "migrations",
"columnsFrom": [
"migration_internal_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"migration_runs_org_id_fkey": {
"name": "migration_runs_org_id_fkey",
"tableFrom": "migration_runs",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.migrations": {
"name": "migrations",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"filter": {
"name": "filter",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"operations": {
"name": "operations",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"prepared_state": {
"name": "prepared_state",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"no_billing_changes": {
"name": "no_billing_changes",
"type": "boolean",
"primaryKey": false,
"notNull": false
},
"retry_failed": {
"name": "retry_failed",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"migrations_org_env_id_unique": {
"name": "migrations_org_env_id_unique",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"migrations_org_id_fkey": {
"name": "migrations_org_id_fkey",
"tableFrom": "migrations",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.oauth_access_token": {
"name": "oauth_access_token",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"token": {
"name": "token",
"type": "text",
"primaryKey": false,
"notNull": false
},
"client_id": {
"name": "client_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"reference_id": {
"name": "reference_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"refresh_id": {
"name": "refresh_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"scopes": {
"name": "scopes",
"type": "text[]",
"primaryKey": false,
"notNull": true
}
},
"indexes": {},
"foreignKeys": {
"oauth_access_token_client_id_oauth_client_client_id_fk": {
"name": "oauth_access_token_client_id_oauth_client_client_id_fk",
"tableFrom": "oauth_access_token",
"tableTo": "oauth_client",
"columnsFrom": [
"client_id"
],
"columnsTo": [
"client_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"oauth_access_token_session_id_session_id_fk": {
"name": "oauth_access_token_session_id_session_id_fk",
"tableFrom": "oauth_access_token",
"tableTo": "session",
"columnsFrom": [
"session_id"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
},
"oauth_access_token_user_id_user_id_fk": {
"name": "oauth_access_token_user_id_user_id_fk",
"tableFrom": "oauth_access_token",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"oauth_access_token_refresh_id_oauth_refresh_token_id_fk": {
"name": "oauth_access_token_refresh_id_oauth_refresh_token_id_fk",
"tableFrom": "oauth_access_token",
"tableTo": "oauth_refresh_token",
"columnsFrom": [
"refresh_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"oauth_access_token_token_unique": {
"name": "oauth_access_token_token_unique",
"nullsNotDistinct": false,
"columns": [
"token"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.oauth_client": {
"name": "oauth_client",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"client_id": {
"name": "client_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"client_secret": {
"name": "client_secret",
"type": "text",
"primaryKey": false,
"notNull": false
},
"disabled": {
"name": "disabled",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"skip_consent": {
"name": "skip_consent",
"type": "boolean",
"primaryKey": false,
"notNull": false
},
"enable_end_session": {
"name": "enable_end_session",
"type": "boolean",
"primaryKey": false,
"notNull": false
},
"scopes": {
"name": "scopes",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"uri": {
"name": "uri",
"type": "text",
"primaryKey": false,
"notNull": false
},
"icon": {
"name": "icon",
"type": "text",
"primaryKey": false,
"notNull": false
},
"contacts": {
"name": "contacts",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"tos": {
"name": "tos",
"type": "text",
"primaryKey": false,
"notNull": false
},
"policy": {
"name": "policy",
"type": "text",
"primaryKey": false,
"notNull": false
},
"software_id": {
"name": "software_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"software_version": {
"name": "software_version",
"type": "text",
"primaryKey": false,
"notNull": false
},
"software_statement": {
"name": "software_statement",
"type": "text",
"primaryKey": false,
"notNull": false
},
"redirect_uris": {
"name": "redirect_uris",
"type": "text[]",
"primaryKey": false,
"notNull": true
},
"post_logout_redirect_uris": {
"name": "post_logout_redirect_uris",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"token_endpoint_auth_method": {
"name": "token_endpoint_auth_method",
"type": "text",
"primaryKey": false,
"notNull": false
},
"grant_types": {
"name": "grant_types",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"response_types": {
"name": "response_types",
"type": "text[]",
"primaryKey": false,
"notNull": false
},
"public": {
"name": "public",
"type": "boolean",
"primaryKey": false,
"notNull": false
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"reference_id": {
"name": "reference_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"metadata": {
"name": "metadata",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"oauth_client_user_id_user_id_fk": {
"name": "oauth_client_user_id_user_id_fk",
"tableFrom": "oauth_client",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"oauth_client_client_id_unique": {
"name": "oauth_client_client_id_unique",
"nullsNotDistinct": false,
"columns": [
"client_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.oauth_consent": {
"name": "oauth_consent",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"client_id": {
"name": "client_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"reference_id": {
"name": "reference_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"scopes": {
"name": "scopes",
"type": "text[]",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": false
},
"redirect_uri": {
"name": "redirect_uri",
"type": "text",
"primaryKey": false,
"notNull": false
},
"oauth_api_key_id": {
"name": "oauth_api_key_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"oauth_consent_client_id_oauth_client_client_id_fk": {
"name": "oauth_consent_client_id_oauth_client_client_id_fk",
"tableFrom": "oauth_consent",
"tableTo": "oauth_client",
"columnsFrom": [
"client_id"
],
"columnsTo": [
"client_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"oauth_consent_user_id_user_id_fk": {
"name": "oauth_consent_user_id_user_id_fk",
"tableFrom": "oauth_consent",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.oauth_refresh_token": {
"name": "oauth_refresh_token",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"token": {
"name": "token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"client_id": {
"name": "client_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"reference_id": {
"name": "reference_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"revoked": {
"name": "revoked",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"auth_time": {
"name": "auth_time",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"scopes": {
"name": "scopes",
"type": "text[]",
"primaryKey": false,
"notNull": true
}
},
"indexes": {},
"foreignKeys": {
"oauth_refresh_token_client_id_oauth_client_client_id_fk": {
"name": "oauth_refresh_token_client_id_oauth_client_client_id_fk",
"tableFrom": "oauth_refresh_token",
"tableTo": "oauth_client",
"columnsFrom": [
"client_id"
],
"columnsTo": [
"client_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"oauth_refresh_token_session_id_session_id_fk": {
"name": "oauth_refresh_token_session_id_session_id_fk",
"tableFrom": "oauth_refresh_token",
"tableTo": "session",
"columnsFrom": [
"session_id"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
},
"oauth_refresh_token_user_id_user_id_fk": {
"name": "oauth_refresh_token_user_id_user_id_fk",
"tableFrom": "oauth_refresh_token",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.organizations": {
"name": "organizations",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"slug": {
"name": "slug",
"type": "text",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"logo": {
"name": "logo",
"type": "text",
"primaryKey": false,
"notNull": false
},
"createdAt": {
"name": "createdAt",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"metadata": {
"name": "metadata",
"type": "text",
"primaryKey": false,
"notNull": false
},
"default_currency": {
"name": "default_currency",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'usd'"
},
"stripe_connected": {
"name": "stripe_connected",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"stripe_config": {
"name": "stripe_config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"test_stripe_connect": {
"name": "test_stripe_connect",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'{}'::jsonb"
},
"live_stripe_connect": {
"name": "live_stripe_connect",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'{}'::jsonb"
},
"processor_configs": {
"name": "processor_configs",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"test_pkey": {
"name": "test_pkey",
"type": "text",
"primaryKey": false,
"notNull": false
},
"live_pkey": {
"name": "live_pkey",
"type": "text",
"primaryKey": false,
"notNull": false
},
"svix_config": {
"name": "svix_config",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'{}'::jsonb"
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"config": {
"name": "config",
"type": "jsonb",
"primaryKey": false,
"notNull": true,
"default": "'{}'::jsonb"
},
"created_by": {
"name": "created_by",
"type": "text",
"primaryKey": false,
"notNull": false
},
"onboarded": {
"name": "onboarded",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"deployed": {
"name": "deployed",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"redis_config": {
"name": "redis_config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_organizations_name_trgm": {
"name": "idx_organizations_name_trgm",
"columns": [
{
"expression": "\"name\" gin_trgm_ops",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"organizations\".\"name\" IS NOT NULL",
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_organizations_slug_trgm": {
"name": "idx_organizations_slug_trgm",
"columns": [
{
"expression": "\"slug\" gin_trgm_ops",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"organizations\".\"slug\" IS NOT NULL",
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_organizations_created_at_id": {
"name": "idx_organizations_created_at_id",
"columns": [
{
"expression": "\"createdAt\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
},
{
"expression": "\"id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"organizations_slug_unique": {
"name": "organizations_slug_unique",
"nullsNotDistinct": false,
"columns": [
"slug"
]
},
"organizations_test_pkey_key": {
"name": "organizations_test_pkey_key",
"nullsNotDistinct": false,
"columns": [
"test_pkey"
]
},
"organizations_live_pkey_key": {
"name": "organizations_live_pkey_key",
"nullsNotDistinct": false,
"columns": [
"live_pkey"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.passkey": {
"name": "passkey",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"public_key": {
"name": "public_key",
"type": "text",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"credential_id": {
"name": "credential_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"counter": {
"name": "counter",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"device_type": {
"name": "device_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"backed_up": {
"name": "backed_up",
"type": "boolean",
"primaryKey": false,
"notNull": true
},
"transports": {
"name": "transports",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"aaguid": {
"name": "aaguid",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"passkey_userId_idx": {
"name": "passkey_userId_idx",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"passkey_credentialId_idx": {
"name": "passkey_credentialId_idx",
"columns": [
{
"expression": "credential_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"passkey_user_id_user_id_fk": {
"name": "passkey_user_id_user_id_fk",
"tableFrom": "passkey",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"passkey_credential_id_unique": {
"name": "passkey_credential_id_unique",
"nullsNotDistinct": false,
"columns": [
"credential_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.prices": {
"name": "prices",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text COLLATE \"C\"",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_product_id": {
"name": "internal_product_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"config": {
"name": "config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"billing_type": {
"name": "billing_type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"tier_behavior": {
"name": "tier_behavior",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "null"
},
"is_custom": {
"name": "is_custom",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"entitlement_id": {
"name": "entitlement_id",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "null"
},
"proration_config": {
"name": "proration_config",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "null"
}
},
"indexes": {
"idx_prices_internal_product_id": {
"name": "idx_prices_internal_product_id",
"columns": [
{
"expression": "internal_product_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_prices_entitlement_id": {
"name": "idx_prices_entitlement_id",
"columns": [
{
"expression": "entitlement_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"prices_entitlement_id_fkey": {
"name": "prices_entitlement_id_fkey",
"tableFrom": "prices",
"tableTo": "entitlements",
"columnsFrom": [
"entitlement_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
},
"prices_internal_product_id_fkey": {
"name": "prices_internal_product_id_fkey",
"tableFrom": "prices",
"tableTo": "products",
"columnsFrom": [
"internal_product_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"prices_id_key": {
"name": "prices_id_key",
"nullsNotDistinct": false,
"columns": [
"id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.products": {
"name": "products",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"is_add_on": {
"name": "is_add_on",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"is_default": {
"name": "is_default",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"group": {
"name": "group",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "''"
},
"version": {
"name": "version",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 1
},
"processor": {
"name": "processor",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "null"
},
"base_variant_id": {
"name": "base_variant_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"archived": {
"name": "archived",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
},
"config": {
"name": "config",
"type": "jsonb",
"primaryKey": false,
"notNull": true,
"default": "'{}'::jsonb"
}
},
"indexes": {
"idx_products_org_env_id_version": {
"name": "idx_products_org_env_id_version",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "version",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"products_org_id_fkey": {
"name": "products_org_id_fkey",
"tableFrom": "products",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"unique_product": {
"name": "unique_product",
"nullsNotDistinct": false,
"columns": [
"org_id",
"id",
"env",
"version"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.referral_codes": {
"name": "referral_codes",
"schema": "",
"columns": {
"code": {
"name": "code",
"type": "text",
"primaryKey": false,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text COLLATE \"C\"",
"primaryKey": false,
"notNull": false
},
"internal_reward_program_id": {
"name": "internal_reward_program_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_referral_codes_internal_customer_id": {
"name": "idx_referral_codes_internal_customer_id",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"referral_codes_internal_customer_id_fkey": {
"name": "referral_codes_internal_customer_id_fkey",
"tableFrom": "referral_codes",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"referral_codes_internal_reward_program_id_fkey": {
"name": "referral_codes_internal_reward_program_id_fkey",
"tableFrom": "referral_codes",
"tableTo": "reward_programs",
"columnsFrom": [
"internal_reward_program_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"referral_codes_org_id_fkey": {
"name": "referral_codes_org_id_fkey",
"tableFrom": "referral_codes",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {
"referral_codes_pkey": {
"name": "referral_codes_pkey",
"columns": [
"code",
"org_id",
"env"
]
}
},
"uniqueConstraints": {
"referral_codes_id_key": {
"name": "referral_codes_id_key",
"nullsNotDistinct": false,
"columns": [
"id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.replaceables": {
"name": "replaceables",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"cus_ent_id": {
"name": "cus_ent_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "bigint",
"primaryKey": false,
"notNull": true
},
"from_entity_id": {
"name": "from_entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"delete_next_cycle": {
"name": "delete_next_cycle",
"type": "boolean",
"primaryKey": false,
"notNull": true,
"default": false
}
},
"indexes": {
"idx_replaceables_cus_ent_id": {
"name": "idx_replaceables_cus_ent_id",
"columns": [
{
"expression": "cus_ent_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"replaceables_cus_ent_id_fkey": {
"name": "replaceables_cus_ent_id_fkey",
"tableFrom": "replaceables",
"tableTo": "customer_entitlements",
"columnsFrom": [
"cus_ent_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.revenuecat_mappings": {
"name": "revenuecat_mappings",
"schema": "",
"columns": {
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"autumn_product_id": {
"name": "autumn_product_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"revenuecat_product_ids": {
"name": "revenuecat_product_ids",
"type": "text[]",
"primaryKey": false,
"notNull": true,
"default": "'{}'"
}
},
"indexes": {},
"foreignKeys": {
"revenuecat_mappings_org_id_fkey": {
"name": "revenuecat_mappings_org_id_fkey",
"tableFrom": "revenuecat_mappings",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {
"revenuecat_mappings_pkey": {
"name": "revenuecat_mappings_pkey",
"columns": [
"org_id",
"env",
"autumn_product_id"
]
}
},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.reward_programs": {
"name": "reward_programs",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"internal_reward_id": {
"name": "internal_reward_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"max_redemptions": {
"name": "max_redemptions",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"unlimited_redemptions": {
"name": "unlimited_redemptions",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": false
},
"when": {
"name": "when",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'immediately'"
},
"product_ids": {
"name": "product_ids",
"type": "text[]",
"primaryKey": false,
"notNull": false,
"default": "'{\"\"}'"
},
"exclude_trial": {
"name": "exclude_trial",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"received_by": {
"name": "received_by",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"reward_triggers_internal_reward_id_fkey": {
"name": "reward_triggers_internal_reward_id_fkey",
"tableFrom": "reward_programs",
"tableTo": "rewards",
"columnsFrom": [
"internal_reward_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"reward_triggers_org_id_fkey": {
"name": "reward_triggers_org_id_fkey",
"tableFrom": "reward_programs",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.reward_redemptions": {
"name": "reward_redemptions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"updated_at": {
"name": "updated_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text COLLATE \"C\"",
"primaryKey": false,
"notNull": false
},
"triggered": {
"name": "triggered",
"type": "boolean",
"primaryKey": false,
"notNull": false
},
"internal_reward_program_id": {
"name": "internal_reward_program_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"applied": {
"name": "applied",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"redeemer_applied": {
"name": "redeemer_applied",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"referral_code_id": {
"name": "referral_code_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"reward_internal_id": {
"name": "reward_internal_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"promo_code": {
"name": "promo_code",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_reward_redemptions_referral_code_id": {
"name": "idx_reward_redemptions_referral_code_id",
"columns": [
{
"expression": "referral_code_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_reward_redemptions_reward_internal_id": {
"name": "idx_reward_redemptions_reward_internal_id",
"columns": [
{
"expression": "reward_internal_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_reward_redemptions_customer_reward": {
"name": "idx_reward_redemptions_customer_reward",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "reward_internal_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"reward_redemptions_internal_customer_id_fkey": {
"name": "reward_redemptions_internal_customer_id_fkey",
"tableFrom": "reward_redemptions",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"reward_redemptions_internal_reward_program_id_fkey": {
"name": "reward_redemptions_internal_reward_program_id_fkey",
"tableFrom": "reward_redemptions",
"tableTo": "reward_programs",
"columnsFrom": [
"internal_reward_program_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"reward_redemptions_referral_code_id_fkey": {
"name": "reward_redemptions_referral_code_id_fkey",
"tableFrom": "reward_redemptions",
"tableTo": "referral_codes",
"columnsFrom": [
"referral_code_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.rewards": {
"name": "rewards",
"schema": "",
"columns": {
"internal_id": {
"name": "internal_id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"id": {
"name": "id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"discount_config": {
"name": "discount_config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"free_product_config": {
"name": "free_product_config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"free_product_id": {
"name": "free_product_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"promo_codes": {
"name": "promo_codes",
"type": "jsonb[]",
"primaryKey": false,
"notNull": false
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"coupons_org_id_fkey": {
"name": "coupons_org_id_fkey",
"tableFrom": "rewards",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.rollovers": {
"name": "rollovers",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"cus_ent_id": {
"name": "cus_ent_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"balance": {
"name": "balance",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"usage": {
"name": "usage",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": 0
},
"entities": {
"name": "entities",
"type": "jsonb",
"primaryKey": false,
"notNull": true,
"default": "'{}'::jsonb"
}
},
"indexes": {
"idx_rollovers_cus_ent_id": {
"name": "idx_rollovers_cus_ent_id",
"columns": [
{
"expression": "cus_ent_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_rollovers_cus_ent_expires": {
"name": "idx_rollovers_cus_ent_expires",
"columns": [
{
"expression": "cus_ent_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "expires_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"rollover_cus_ent_id_fkey": {
"name": "rollover_cus_ent_id_fkey",
"tableFrom": "rollovers",
"tableTo": "customer_entitlements",
"columnsFrom": [
"cus_ent_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.phases": {
"name": "phases",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"schedule_id": {
"name": "schedule_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"starts_at": {
"name": "starts_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
},
"customer_product_ids": {
"name": "customer_product_ids",
"type": "text[]",
"primaryKey": false,
"notNull": true,
"default": "'{}'"
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
}
},
"indexes": {},
"foreignKeys": {
"phases_schedule_id_fkey": {
"name": "phases_schedule_id_fkey",
"tableFrom": "phases",
"tableTo": "schedules",
"columnsFrom": [
"schedule_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"phases_schedule_id_starts_at_key": {
"name": "phases_schedule_id_starts_at_key",
"nullsNotDistinct": false,
"columns": [
"schedule_id",
"starts_at"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.schedules": {
"name": "schedules",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_customer_id": {
"name": "internal_customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"customer_id": {
"name": "customer_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"internal_entity_id": {
"name": "internal_entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"entity_id": {
"name": "entity_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"schedules_customer_scope_unique": {
"name": "schedules_customer_scope_unique",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"where": "\"schedules\".\"internal_entity_id\" IS NULL",
"concurrently": false,
"method": "btree",
"with": {}
},
"schedules_entity_scope_unique": {
"name": "schedules_entity_scope_unique",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "internal_entity_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"where": "\"schedules\".\"internal_entity_id\" IS NOT NULL",
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_schedules_internal_customer_id": {
"name": "idx_schedules_internal_customer_id",
"columns": [
{
"expression": "internal_customer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_schedules_internal_entity_id": {
"name": "idx_schedules_internal_entity_id",
"columns": [
{
"expression": "internal_entity_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"schedules_org_id_fkey": {
"name": "schedules_org_id_fkey",
"tableFrom": "schedules",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"schedules_internal_customer_id_fkey": {
"name": "schedules_internal_customer_id_fkey",
"tableFrom": "schedules",
"tableTo": "customers",
"columnsFrom": [
"internal_customer_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"schedules_internal_entity_id_fkey": {
"name": "schedules_internal_entity_id_fkey",
"tableFrom": "schedules",
"tableTo": "entities",
"columnsFrom": [
"internal_entity_id"
],
"columnsTo": [
"internal_id"
],
"onDelete": "set null",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.session": {
"name": "session",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"token": {
"name": "token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"ip_address": {
"name": "ip_address",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_agent": {
"name": "user_agent",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"impersonated_by": {
"name": "impersonated_by",
"type": "text",
"primaryKey": false,
"notNull": false
},
"active_organization_id": {
"name": "active_organization_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"city": {
"name": "city",
"type": "text",
"primaryKey": false,
"notNull": false
},
"country": {
"name": "country",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"session_userId_idx": {
"name": "session_userId_idx",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"session_user_id_user_id_fk": {
"name": "session_user_id_user_id_fk",
"tableFrom": "session",
"tableTo": "user",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"session_token_unique": {
"name": "session_token_unique",
"nullsNotDistinct": false,
"columns": [
"token"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
},
"public.subscriptions": {
"name": "subscriptions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"stripe_id": {
"name": "stripe_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"stripe_schedule_id": {
"name": "stripe_schedule_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "numeric",
"primaryKey": false,
"notNull": true,
"default": "ROUND(date_part('epoch', NOW()) * 1000)::BIGINT"
},
"metadata": {
"name": "metadata",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'{}'::jsonb"
},
"usage_features": {
"name": "usage_features",
"type": "text[]",
"primaryKey": false,
"notNull": false,
"default": "'{}'"
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": false
},
"current_period_start": {
"name": "current_period_start",
"type": "numeric",
"primaryKey": false,
"notNull": false
},
"current_period_end": {
"name": "current_period_end",
"type": "numeric",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {
"subscriptions_org_id_fkey": {
"name": "subscriptions_org_id_fkey",
"tableFrom": "subscriptions",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"subscriptions_stripe_id_key": {
"name": "subscriptions_stripe_id_key",
"nullsNotDistinct": false,
"columns": [
"stripe_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user": {
"name": "user",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"email": {
"name": "email",
"type": "text",
"primaryKey": false,
"notNull": true
},
"email_verified": {
"name": "email_verified",
"type": "boolean",
"primaryKey": false,
"notNull": true
},
"image": {
"name": "image",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"role": {
"name": "role",
"type": "text",
"primaryKey": false,
"notNull": false
},
"banned": {
"name": "banned",
"type": "boolean",
"primaryKey": false,
"notNull": false
},
"ban_reason": {
"name": "ban_reason",
"type": "text",
"primaryKey": false,
"notNull": false
},
"ban_expires": {
"name": "ban_expires",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"created_by": {
"name": "created_by",
"type": "text",
"primaryKey": false,
"notNull": false
},
"last_active_at": {
"name": "last_active_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_user_name_trgm": {
"name": "idx_user_name_trgm",
"columns": [
{
"expression": "\"name\" gin_trgm_ops",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"user\".\"name\" IS NOT NULL",
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_user_email_trgm": {
"name": "idx_user_email_trgm",
"columns": [
{
"expression": "\"email\" gin_trgm_ops",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"where": "\"user\".\"email\" IS NOT NULL",
"concurrently": false,
"method": "gin",
"with": {}
},
"idx_user_created_at_id": {
"name": "idx_user_created_at_id",
"columns": [
{
"expression": "\"created_at\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
},
{
"expression": "\"id\" DESC",
"asc": true,
"isExpression": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"user_created_by_fkey": {
"name": "user_created_by_fkey",
"tableFrom": "user",
"tableTo": "organizations",
"columnsFrom": [
"created_by"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"user_email_unique": {
"name": "user_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.vercel_resources": {
"name": "vercel_resources",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"org_id": {
"name": "org_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"env": {
"name": "env",
"type": "text",
"primaryKey": false,
"notNull": true
},
"installation_id": {
"name": "installation_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true
},
"metadata": {
"name": "metadata",
"type": "jsonb",
"primaryKey": false,
"notNull": true,
"default": "'{}'::jsonb"
}
},
"indexes": {
"vercel_resources_installation_name_unique_idx": {
"name": "vercel_resources_installation_name_unique_idx",
"columns": [
{
"expression": "org_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "env",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "installation_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "name",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"where": "status <> 'uninstalled'",
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"vercel_resources_org_id_fkey": {
"name": "vercel_resources_org_id_fkey",
"tableFrom": "vercel_resources",
"tableTo": "organizations",
"columnsFrom": [
"org_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.verification": {
"name": "verification",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"identifier": {
"name": "identifier",
"type": "text",
"primaryKey": false,
"notNull": true
},
"value": {
"name": "value",
"type": "text",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"verification_identifier_idx": {
"name": "verification_identifier_idx",
"columns": [
{
"expression": "identifier",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": true
}
},
"enums": {},
"schemas": {},
"sequences": {},
"roles": {},
"policies": {},
"views": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
}