The contents of this file was generated by the following command:Documentation Index
Fetch the complete documentation index at: https://cantonfoundation-add-app-development-module-579.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
npx @canton-network/wallet-gateway-remote@latest --config-schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kernel": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"publicUrl": {
"description": "The public base URL of the gateway, if available (e.g. https://wallet.example.com). This determines what browsers will try to use to connect, and is useful when using reverse proxies. If omitted, this will be derived from the server configuration.",
"type": "string"
},
"clientType": {
"anyOf": [
{
"type": "string",
"const": "browser"
},
{
"type": "string",
"const": "desktop"
},
{
"type": "string",
"const": "mobile"
},
{
"type": "string",
"const": "remote"
}
]
}
},
"required": ["id", "clientType"],
"additionalProperties": false
},
"server": {
"type": "object",
"properties": {
"port": {
"default": 3030,
"description": "The port on which the NodeJS service will listen. Defaults to 3030.",
"type": "number"
},
"dappPath": {
"default": "/api/v0/dapp",
"description": "The path serving the dapp API. Defaults /api/v0/dapp",
"type": "string"
},
"userPath": {
"default": "/api/v0/user",
"description": "The path serving the user API. Defaults /api/v0/user",
"type": "string"
},
"allowedOrigins": {
"default": "*",
"description": "Allowed CORS origins, typically corresponding to which external dApps are allowed to connect. Use \"*\" to allow all origins, or set an array of origin strings.",
"anyOf": [
{
"type": "string",
"const": "*"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"host": {
"deprecated": true,
"description": "The host interface the server binds to. Deprecated as the service always binds to the local machine network interface. Will be removed in a future release.",
"type": "string"
},
"tls": {
"deprecated": true,
"description": "Deprecated, this option no longer has any effect. Will be removed in a future release.",
"type": "boolean"
},
"requestSizeLimit": {
"default": "1mb",
"description": "The maximum size of incoming requests. Defaults to 1mb.",
"type": "string"
},
"requestRateLimit": {
"default": 10000,
"description": "The maximum number of requests per minute from a single IP address. Defaults to 10000.",
"type": "number"
},
"trustProxy": {
"default": false,
"description": "Express trust proxy setting used to resolve client IP addresses when running behind reverse proxies/load balancers. Set this correctly in production (for example 1 for a single trusted proxy hop). Defaults to false.",
"anyOf": [
{
"type": "boolean"
},
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "string"
}
]
},
"admin": {
"description": "The JWT claim (e.g. \"sub\") identifying the admin user. If set, requests with a matching claim will be granted admin privileges.",
"type": "string"
}
},
"required": [
"port",
"dappPath",
"userPath",
"allowedOrigins",
"requestSizeLimit",
"requestRateLimit",
"trustProxy"
],
"additionalProperties": false
},
"logging": {
"type": "object",
"properties": {
"level": {
"description": "The log level for the gateway. If omitted, defaults to info.",
"type": "string",
"enum": ["trace", "debug", "info", "warn", "error", "fatal"]
},
"format": {
"description": "The log format for the gateway. If omitted, defaults to pretty.",
"type": "string",
"enum": ["json", "pretty"]
}
},
"additionalProperties": false,
"description": "Optional logging configuration. If omitted, defaults will be used."
},
"store": {
"type": "object",
"properties": {
"connection": {
"oneOf": [
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "memory"
}
},
"required": ["type"],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "sqlite"
},
"database": {
"type": "string"
}
},
"required": ["type", "database"],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "postgres"
},
"host": {
"type": "string"
},
"port": {
"type": "number"
},
"user": {
"type": "string"
},
"password": {
"type": "string"
},
"database": {
"type": "string"
}
},
"required": [
"type",
"host",
"port",
"user",
"password",
"database"
],
"additionalProperties": false
}
]
}
},
"required": ["connection"],
"additionalProperties": false
},
"signingStore": {
"type": "object",
"properties": {
"connection": {
"oneOf": [
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "memory"
}
},
"required": ["type"],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "sqlite"
},
"database": {
"type": "string"
}
},
"required": ["type", "database"],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "postgres"
},
"host": {
"type": "string"
},
"port": {
"type": "number"
},
"user": {
"type": "string"
},
"password": {
"type": "string"
},
"database": {
"type": "string"
}
},
"required": [
"type",
"host",
"port",
"user",
"password",
"database"
],
"additionalProperties": false
}
]
}
},
"required": ["connection"],
"additionalProperties": false
},
"bootstrap": {
"type": "object",
"properties": {
"idps": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"const": "self_signed"
},
"issuer": {
"type": "string"
}
},
"required": ["id", "type", "issuer"],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"const": "oauth"
},
"issuer": {
"type": "string"
},
"configUrl": {
"type": "string",
"format": "uri"
}
},
"required": [
"id",
"type",
"issuer",
"configUrl"
],
"additionalProperties": false
}
]
}
},
"networks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"synchronizerId": {
"type": "string",
"minLength": 10,
"pattern": "::"
},
"identityProviderId": {
"type": "string"
},
"ledgerApi": {
"type": "object",
"properties": {
"baseUrl": {
"type": "string",
"format": "uri"
}
},
"required": ["baseUrl"],
"additionalProperties": false
},
"auth": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "authorization_code"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId"
],
"additionalProperties": false,
"description": "Authorization code flow authentication configuration. This is used for browser-based application login."
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "client_credentials"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecret": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId",
"clientSecret"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "self_signed"
},
"issuer": {
"type": "string"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecret": {
"type": "string"
}
},
"required": [
"method",
"issuer",
"audience",
"scope",
"clientId",
"clientSecret"
],
"additionalProperties": false
}
]
},
{
"oneOf": [
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "authorization_code"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId"
],
"additionalProperties": false,
"description": "Authorization code flow authentication configuration. This is used for browser-based application login."
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "client_credentials"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecretEnv": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId",
"clientSecretEnv"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "self_signed"
},
"issuer": {
"type": "string"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecretEnv": {
"type": "string"
}
},
"required": [
"method",
"issuer",
"audience",
"scope",
"clientId",
"clientSecretEnv"
],
"additionalProperties": false
}
]
}
]
},
"adminAuth": {
"anyOf": [
{
"oneOf": [
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "authorization_code"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId"
],
"additionalProperties": false,
"description": "Authorization code flow authentication configuration. This is used for browser-based application login."
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "client_credentials"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecret": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId",
"clientSecret"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "self_signed"
},
"issuer": {
"type": "string"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecret": {
"type": "string"
}
},
"required": [
"method",
"issuer",
"audience",
"scope",
"clientId",
"clientSecret"
],
"additionalProperties": false
}
]
},
{
"oneOf": [
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "authorization_code"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId"
],
"additionalProperties": false,
"description": "Authorization code flow authentication configuration. This is used for browser-based application login."
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "client_credentials"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecretEnv": {
"type": "string"
}
},
"required": [
"method",
"audience",
"scope",
"clientId",
"clientSecretEnv"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"method": {
"type": "string",
"const": "self_signed"
},
"issuer": {
"type": "string"
},
"audience": {
"type": "string"
},
"scope": {
"type": "string"
},
"clientId": {
"type": "string"
},
"clientSecretEnv": {
"type": "string"
}
},
"required": [
"method",
"issuer",
"audience",
"scope",
"clientId",
"clientSecretEnv"
],
"additionalProperties": false
}
]
}
]
}
},
"required": [
"id",
"name",
"description",
"identityProviderId",
"ledgerApi",
"auth"
],
"additionalProperties": false
}
}
},
"required": ["idps", "networks"],
"additionalProperties": false
}
},
"required": ["kernel", "server", "store", "signingStore", "bootstrap"],
"additionalProperties": false
}