Send this endpoint a signed message from your user, and you’ll get back a User-Session token. That token is what lets the user’s confidential balances and transaction history (GET /v0/account/balances, GET /v0/account/history) be revealed. It’s separate from your Partner JWT, which authenticates your integration, not an individual user.
This is part of Confidential Intents. How to send the token on later calls is in Authenticating end users.
Have the user’s wallet sign an empty intent, then send it as signedData. "intents": [] is the ownership proof. It does not move tokens. Field layout for each wallet is in Signing Intents.signer_id is the Intents account id for that key:
Wallet
standard
signer_id
NEAR
nep413
NEAR account id. Register the public key on intents.near with add_public_key first. See Account Abstraction.
Ethereum
erc191
The address, lowercase.
Solana
raw_ed25519
Hex of the address bytes (64 hex characters). public_key is ed25519: plus the base58 address.
TRON
tip191
0x plus the 20-byte address. Drop the leading 41 byte from the TRON address.
TON
ton_connect
Ed25519 public key as 64 lowercase hex characters.
Stellar
sep53
Hex of the raw 32-byte public key, without the version byte or checksum.
Passkey
webauthn
P-256: 0x plus the last 20 bytes of keccak256 over the bytes p256 concatenated with the public key. Ed25519: hex of the public key.
The nonce has to be a versioned nonce. intentBuilder().setNonceRandomBytes(VersionedNonceBuilder.createTimestampedNonceBytes(new Date())) writes the current time into the first 8 bytes and loads the salt from intents.near (production salt e110f317). The server rejects a start time more than 5 minutes off with timestamp validation failed. A random 32-byte nonce comes back as invalid nonce.Send signatures as ed25519:<base58> or secp256k1:<base58>. For erc191 and tip191, the recovery byte is 0 or 1. Map wallet values 27 and 28 to 0 and 1 before you encode.
signature verification failed is the response when intents.near rejects the payload in simulate_intents. A signer_id that does not match the signing key, a recovery byte left at 27 or 28, or any difference between the signed string and the string you submit all return that same error.
NEAR
EVM
Solana
TRON
TON
Stellar
Passkey
standard is nep413. The NEP-413 message is the string below. recipient is intents.near.The signMessage callback returns a base64 signature. createIntentSignerNEP413 encodes it as ed25519: plus base58 before signed is sent.
standard is erc191. There is no public_key. The wallet signs payload with personal_sign, and you submit that same string.createIntentSignerViem sets signer_id from the account address and encodes the signature as secp256k1: plus base58 with the recovery byte already normalized.
standard is tip191. Same signature rules as ERC-191, including the recovery byte. signer_id is the 20-byte address with a 0x prefix, not the base58 T... address.
Some TRON wallets reject a short message. The string near.com signs adds message_size_validation and is pretty-printed with a two-space indent. Submit the string the wallet signed.
standard is ton_connect. address, domain, timestamp, and payload come back from the TonConnect sign-data request. payload.text is the intent JSON the wallet signed. signer_id inside that JSON is the 64-character hex public key. public_key is ed25519: plus that same key in base58.
standard is sep53. Sign payload with the Stellar key (SEP-53). signer_id is the hex encoding of the 32-byte public key. public_key is ed25519: plus the base58 encoding of those bytes. The G... address is not signer_id.
standard is webauthn. client_data_json and authenticator_data come from the WebAuthn assertion. See Signing Intents for those two fields. payload is still an empty intent, and nonce is still a versioned nonce.
signedData is the same MultiPayload signed-message format used for Signing Intents, signed here with an empty intents array. It’s used purely as proof of account ownership, not a real swap.
Store refreshToken securely. Anyone holding it can mint new accessTokens for this account until it expires.
Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.
For example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"NEAR Intents","colors":{"primary":"#fb4d01","light":"#ff7043","dark":"#d94300"},"logo":{"light":"https://mintcdn.com/defuselabsltd/H7BXykL_JPKw4xWb/images/logo/light.svg?fit=max\u0026auto=format\u0026n=H7BXykL_JPKw4xWb\u0026q=85\u0026s=e31b086fb76c5f6228ea4020afc8db58","dark":"https://mintcdn.com/defuselabsltd/H7BXykL_JPKw4xWb/images/logo/dark.svg?fit=max\u0026auto=format\u0026n=H7BXykL_JPKw4xWb\u0026q=85\u0026s=24c0664a9d5a23125fbdbafce3213d1f"},"favicon":"https://mintcdn.com/defuselabsltd/H7BXykL_JPKw4xWb/favicon.svg?fit=max\u0026auto=format\u0026n=H7BXykL_JPKw4xWb\u0026q=85\u0026s=9c3bb7fd94f65224cf7dffef252ef62c","navbar":{"links":[{"href":"https://status.near-intents.org/posts/dashboard","label":"System Status"},{"href":"https://explorer.near-intents.org/","label":"Explorer"},{"href":"https://t.me/near_intents","label":"Support"}],"primary":{"type":"button","label":"Partners","href":"https://partners.near-intents.org/"}},"footer":{"socials":{"x":"https://x.com/near_intents","github":"https://github.com/defuse-protocol","telegram":"https://t.me/near_intents"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"defuselabsltd","hasAudioNarration":false,"actualSubdomain":"defuselabsltd","customDomains":["docs.near-intents.org"],"gitSource":{"type":"github","owner":"defuse-protocol","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ad1ded06424cd55cd3f1a54","collectionId":"2d597199-e9ec-459d-b253-eefb1d600ce1","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad1ded06424cd55cd3f1a54"},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ad1ded06424cd55cd3f1a54","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"Swaps","count":43},{"language":"default","tag":"Swap API","count":29},{"language":"default","tag":"Market Makers","count":13},{"language":"default","tag":"Verifier Contract","count":12},{"language":"default","tag":"Resources","count":9},{"language":"default","tag":"Intents","count":7},{"language":"default","tag":"API Reference","count":7},{"language":"default","tag":"Security \u0026 Compliance","count":6},{"language":"default","tag":"Quickstart","count":5},{"language":"default","tag":"Bridges","count":4}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".landing code{max-height:190px;overflow:auto}.primary{color:rgb(var(--primary))}.dark .primary,[data-theme=dark] .primary{color:rgb(var(--primary-light))}.intent-diagram-desktop-only{display:flex}.swap-widget-preview{max-height:260px;width:auto}@media (max-width:640px){.intent-diagram-desktop-only{display:none}}"}],"page":{"pagePath":"api-reference/user-auth/authenticate-user-with-signed-data","slug":"/api-reference/user-auth/authenticate-user-with-signed-data","pageMetadata":{"title":"Authenticate User with Signed Data","description":"Exchange a signed message for a User-Session access token","icon":"key","openapi":"post /v0/auth/authenticate","href":"/api-reference/user-auth/authenticate-user-with-signed-data"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Exchange a signed message for a User-Session access token\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,CodeGroup,Heading,Info,Tab,Table,Tabs,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!CodeGroup)_missingMdxReference(`CodeGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Send this endpoint a signed message from your user, and you’ll get back a `,_jsx(_components.strong,{children:`User-Session`}),` token. That token is what lets the user’s confidential balances and transaction history (`,_jsx(_components.code,{children:`GET /v0/account/balances`}),`, `,_jsx(_components.code,{children:`GET /v0/account/history`}),`) be revealed. It’s separate from your Partner JWT, which authenticates your integration, not an individual user.`]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[`This is part of `,_jsx(_components.strong,{children:`Confidential Intents`}),`. How to send the token on later calls is in `,_jsx(_components.a,{href:`/integration/distribution-channels/1click-api/authentication#authenticating-end-users-confidential-intents`,children:`Authenticating end users`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`request`,children:`Request`}),`\n`,_jsxs(_components.p,{children:[`Have the user’s wallet sign an empty intent, then send it as `,_jsx(_components.code,{children:`signedData`}),`. `,_jsx(_components.code,{children:`\"intents\": []`}),` is the ownership proof. It does not move tokens. Field layout for each wallet is in `,_jsx(_components.a,{href:`/integration/verifier-contract/signing-intents`,children:`Signing Intents`}),`.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`signer_id`}),` is the Intents account id for that key:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Wallet`}),_jsx(_components.th,{children:_jsx(_components.code,{children:`standard`})}),_jsx(_components.th,{children:_jsx(_components.code,{children:`signer_id`})})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`NEAR`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`nep413`})}),_jsxs(_components.td,{children:[`NEAR account id. Register the public key on `,_jsx(_components.code,{children:`intents.near`}),` with `,_jsx(_components.code,{children:`add_public_key`}),` first. See `,_jsx(_components.a,{href:`/integration/verifier-contract/account-abstraction`,children:`Account Abstraction`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Ethereum`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`erc191`})}),_jsx(_components.td,{children:`The address, lowercase.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Solana`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`raw_ed25519`})}),_jsxs(_components.td,{children:[`Hex of the address bytes (64 hex characters). `,_jsx(_components.code,{children:`public_key`}),` is `,_jsx(_components.code,{children:`ed25519:`}),` plus the base58 address.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TRON`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`tip191`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`0x`}),` plus the 20-byte address. Drop the leading `,_jsx(_components.code,{children:`41`}),` byte from the TRON address.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TON`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`ton_connect`})}),_jsx(_components.td,{children:`Ed25519 public key as 64 lowercase hex characters.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Stellar`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`sep53`})}),_jsx(_components.td,{children:`Hex of the raw 32-byte public key, without the version byte or checksum.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Passkey`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`webauthn`})}),_jsxs(_components.td,{children:[`P-256: `,_jsx(_components.code,{children:`0x`}),` plus the last 20 bytes of `,_jsx(_components.code,{children:`keccak256`}),` over the bytes `,_jsx(_components.code,{children:`p256`}),` concatenated with the public key. Ed25519: hex of the public key.`]})]})]})]}),`\n`,_jsxs(_components.p,{children:[`The nonce has to be a versioned nonce. `,_jsx(_components.code,{children:`intentBuilder().setNonceRandomBytes(VersionedNonceBuilder.createTimestampedNonceBytes(new Date()))`}),` writes the current time into the first 8 bytes and loads the salt from `,_jsx(_components.code,{children:`intents.near`}),` (production salt `,_jsx(_components.code,{children:`e110f317`}),`). The server rejects a start time more than 5 minutes off with `,_jsx(_components.code,{children:`timestamp validation failed`}),`. A random 32-byte nonce comes back as `,_jsx(_components.code,{children:`invalid nonce`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Send signatures as `,_jsx(_components.code,{children:`ed25519:\u003cbase58>`}),` or `,_jsx(_components.code,{children:`secp256k1:\u003cbase58>`}),`. For `,_jsx(_components.code,{children:`erc191`}),` and `,_jsx(_components.code,{children:`tip191`}),`, the recovery byte is `,_jsx(_components.code,{children:`0`}),` or `,_jsx(_components.code,{children:`1`}),`. Map wallet values `,_jsx(_components.code,{children:`27`}),` and `,_jsx(_components.code,{children:`28`}),` to `,_jsx(_components.code,{children:`0`}),` and `,_jsx(_components.code,{children:`1`}),` before you encode.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`signature verification failed`}),` is the response when `,_jsx(_components.code,{children:`intents.near`}),` rejects the payload in `,_jsx(_components.code,{children:`simulate_intents`}),`. A `,_jsx(_components.code,{children:`signer_id`}),` that does not match the signing key, a recovery byte left at `,_jsx(_components.code,{children:`27`}),` or `,_jsx(_components.code,{children:`28`}),`, or any difference between the signed string and the string you submit all return that same error.`]})}),`\n`,_jsxs(Tabs,{children:[_jsxs(Tab,{title:`NEAR`,id:`near`,children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`standard`}),` is `,_jsx(_components.code,{children:`nep413`}),`. The NEP-413 `,_jsx(_components.code,{children:`message`}),` is the string below. `,_jsx(_components.code,{children:`recipient`}),` is `,_jsx(_components.code,{children:`intents.near`}),`.`]}),_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`signMessage`}),` callback returns a base64 signature. `,_jsx(_components.code,{children:`createIntentSignerNEP413`}),` encodes it as `,_jsx(_components.code,{children:`ed25519:`}),` plus base58 before `,_jsx(_components.code,{children:`signed`}),` is sent.`]}),_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`14`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`14`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://1click.chaindefuser.com/v0/auth/authenticate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signedData\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"standard\": \"nep413\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"payload\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"recipient\": \"intents.near\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"nonce\": \"YOUR_VERSIONED_NONCE\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"message\": \"{\\\\\"deadline\\\\\":\\\\\"2026-09-30T09:00:00.000Z\\\\\",\\\\\"intents\\\\\":[],\\\\\"signer_id\\\\\":\\\\\"your-account.near\\\\\"}\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"public_key\": \"ed25519:YOUR_PUBLIC_KEY\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signature\": \"ed25519:YOUR_SIGNATURE\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`TypeScript SDK`,numberOfLines:`19`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`19`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`createIntentSignerNEP413`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IntentsSDK`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`VersionedNonceBuilder`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '@defuse-protocol/intents-sdk'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`UserAuthService`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '@defuse-protocol/one-click-sdk-typescript'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` signer`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` createIntentSignerNEP413`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` accountId:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` userAccountId`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` signMessage`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` async`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`_payload`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`hash`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`publicKey`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`signature`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` userWallet`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`signMessage`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`hash`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`publicKey:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` publicKey`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`toString`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(), `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`signature:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` Buffer`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`signature`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`toString`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'base64'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) };`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` sdk`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` IntentsSDK`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`referral:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'your-integration'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`env:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'production'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`signed`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` sdk`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`intentBuilder`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`setDeadline`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`now`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`+`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 5`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` *`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 60_000`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`))`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`setNonceRandomBytes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`VersionedNonceBuilder`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`createTimestampedNonceBytes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()))`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`buildAndSign`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`signer`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` auth`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` UserAuthService`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`authenticate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`signedData:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` signed`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})]}),`\n`]})})})]})]}),_jsxs(Tab,{title:`EVM`,id:`evm`,children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`standard`}),` is `,_jsx(_components.code,{children:`erc191`}),`. There is no `,_jsx(_components.code,{children:`public_key`}),`. The wallet signs `,_jsx(_components.code,{children:`payload`}),` with `,_jsx(_components.code,{children:`personal_sign`}),`, and you submit that same string.`]}),_jsxs(_components.p,{children:[_jsx(_components.code,{children:`createIntentSignerViem`}),` sets `,_jsx(_components.code,{children:`signer_id`}),` from the account address and encodes the signature as `,_jsx(_components.code,{children:`secp256k1:`}),` plus base58 with the recovery byte already normalized.`]}),_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`9`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`9`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://1click.chaindefuser.com/v0/auth/authenticate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signedData\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"standard\": \"erc191\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"payload\": \"{\\\\\"signer_id\\\\\":\\\\\"0xca67c1bb3fd69857e5edaf6aa1c65371bf46a464\\\\\",\\\\\"verifying_contract\\\\\":\\\\\"intents.near\\\\\",\\\\\"deadline\\\\\":\\\\\"2026-09-30T09:00:00.000Z\\\\\",\\\\\"nonce\\\\\":\\\\\"YOUR_VERSIONED_NONCE\\\\\",\\\\\"intents\\\\\":[]}\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signature\": \"secp256k1:YOUR_SIGNATURE\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`TypeScript SDK`,numberOfLines:`16`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`16`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`createIntentSignerViem`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IntentsSDK`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`VersionedNonceBuilder`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '@defuse-protocol/intents-sdk'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`UserAuthService`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '@defuse-protocol/one-click-sdk-typescript'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`privateKeyToAccount`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'viem/accounts'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` signer`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` createIntentSignerViem`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` signer:`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` privateKeyToAccount`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`privateKey`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`),`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` sdk`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` IntentsSDK`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`referral:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'your-integration'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`env:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'production'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`signed`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` sdk`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`intentBuilder`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`setDeadline`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`now`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`+`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 5`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` *`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 60_000`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`))`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`setNonceRandomBytes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`VersionedNonceBuilder`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`createTimestampedNonceBytes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Date`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()))`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` .`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`buildAndSign`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`signer`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` auth`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` UserAuthService`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`authenticate`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`signedData:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` signed`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})]}),`\n`]})})})]})]}),_jsxs(Tab,{title:`Solana`,id:`solana`,children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`standard`}),` is `,_jsx(_components.code,{children:`raw_ed25519`}),`. Sign the UTF-8 bytes of `,_jsx(_components.code,{children:`payload`}),`. `,_jsx(_components.code,{children:`deadline`}),` is an ISO 8601 string.`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`base58`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`hex`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '@scure/base'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` signerId`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` hex`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`encode`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`base58`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`decode`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`solanaAddress`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`));`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:\"// public_key: `ed25519:${solanaAddress}`\"})}),`\n`]})})}),_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://1click.chaindefuser.com/v0/auth/authenticate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signedData\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"standard\": \"raw_ed25519\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"payload\": \"{\\\\\"signer_id\\\\\":\\\\\"YOUR_64_CHAR_HEX_ADDRESS\\\\\",\\\\\"verifying_contract\\\\\":\\\\\"intents.near\\\\\",\\\\\"deadline\\\\\":\\\\\"2026-09-30T09:00:00.000Z\\\\\",\\\\\"nonce\\\\\":\\\\\"YOUR_VERSIONED_NONCE\\\\\",\\\\\"intents\\\\\":[]}\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"public_key\": \"ed25519:YOUR_BASE58_ADDRESS\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signature\": \"ed25519:YOUR_SIGNATURE\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})]}),_jsxs(Tab,{title:`TRON`,id:`tron`,children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`standard`}),` is `,_jsx(_components.code,{children:`tip191`}),`. Same signature rules as ERC-191, including the recovery byte. `,_jsx(_components.code,{children:`signer_id`}),` is the 20-byte address with a `,_jsx(_components.code,{children:`0x`}),` prefix, not the base58 `,_jsx(_components.code,{children:`T...`}),` address.`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`base58`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`hex`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '@scure/base'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` decoded`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` base58`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`decode`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`tronAddress`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` signerId`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '0x'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` +`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` hex`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`encode`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`decoded`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`slice`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`21`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`));`})]}),`\n`]})})}),_jsxs(_components.p,{children:[`Some TRON wallets reject a short message. The string near.com signs adds `,_jsx(_components.code,{children:`message_size_validation`}),` and is pretty-printed with a two-space indent. Submit the string the wallet signed.`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`9`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://1click.chaindefuser.com/v0/auth/authenticate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signedData\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"standard\": \"tip191\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"payload\": \"{\\\\\"signer_id\\\\\":\\\\\"0xYOUR_20_BYTE_ADDRESS\\\\\",\\\\\"verifying_contract\\\\\":\\\\\"intents.near\\\\\",\\\\\"deadline\\\\\":\\\\\"2026-09-30T09:00:00.000Z\\\\\",\\\\\"nonce\\\\\":\\\\\"YOUR_VERSIONED_NONCE\\\\\",\\\\\"intents\\\\\":[]}\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signature\": \"secp256k1:YOUR_SIGNATURE\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})]}),_jsxs(Tab,{title:`TON`,id:`ton`,children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`standard`}),` is `,_jsx(_components.code,{children:`ton_connect`}),`. `,_jsx(_components.code,{children:`address`}),`, `,_jsx(_components.code,{children:`domain`}),`, `,_jsx(_components.code,{children:`timestamp`}),`, and `,_jsx(_components.code,{children:`payload`}),` come back from the TonConnect sign-data request. `,_jsx(_components.code,{children:`payload.text`}),` is the intent JSON the wallet signed. `,_jsx(_components.code,{children:`signer_id`}),` inside that JSON is the 64-character hex public key. `,_jsx(_components.code,{children:`public_key`}),` is `,_jsx(_components.code,{children:`ed25519:`}),` plus that same key in base58.`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`16`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`16`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://1click.chaindefuser.com/v0/auth/authenticate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signedData\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"standard\": \"ton_connect\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"address\": \"YOUR_TON_ADDRESS\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"domain\": \"your-app.com\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"timestamp\": \"2026-09-30T09:00:00.000Z\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"payload\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"type\": \"text\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"text\": \"{\\\\\"signer_id\\\\\":\\\\\"YOUR_64_CHAR_HEX_PUBLIC_KEY\\\\\",\\\\\"verifying_contract\\\\\":\\\\\"intents.near\\\\\",\\\\\"deadline\\\\\":\\\\\"2026-09-30T09:00:00.000Z\\\\\",\\\\\"nonce\\\\\":\\\\\"YOUR_VERSIONED_NONCE\\\\\",\\\\\"intents\\\\\":[]}\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"public_key\": \"ed25519:YOUR_PUBLIC_KEY\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signature\": \"ed25519:YOUR_SIGNATURE\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})]}),_jsxs(Tab,{title:`Stellar`,id:`stellar`,children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`standard`}),` is `,_jsx(_components.code,{children:`sep53`}),`. Sign `,_jsx(_components.code,{children:`payload`}),` with the Stellar key (SEP-53). `,_jsx(_components.code,{children:`signer_id`}),` is the hex encoding of the 32-byte public key. `,_jsx(_components.code,{children:`public_key`}),` is `,_jsx(_components.code,{children:`ed25519:`}),` plus the base58 encoding of those bytes. The `,_jsx(_components.code,{children:`G...`}),` address is not `,_jsx(_components.code,{children:`signer_id`}),`.`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://1click.chaindefuser.com/v0/auth/authenticate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signedData\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"standard\": \"sep53\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"payload\": \"{\\\\\"signer_id\\\\\":\\\\\"YOUR_64_CHAR_HEX_PUBLIC_KEY\\\\\",\\\\\"verifying_contract\\\\\":\\\\\"intents.near\\\\\",\\\\\"deadline\\\\\":\\\\\"2026-09-30T09:00:00.000Z\\\\\",\\\\\"nonce\\\\\":\\\\\"YOUR_VERSIONED_NONCE\\\\\",\\\\\"intents\\\\\":[]}\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"public_key\": \"ed25519:YOUR_PUBLIC_KEY\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signature\": \"ed25519:YOUR_SIGNATURE\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})]}),_jsxs(Tab,{title:`Passkey`,id:`passkey`,children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`standard`}),` is `,_jsx(_components.code,{children:`webauthn`}),`. `,_jsx(_components.code,{children:`client_data_json`}),` and `,_jsx(_components.code,{children:`authenticator_data`}),` come from the WebAuthn assertion. See `,_jsx(_components.a,{href:`/integration/verifier-contract/signing-intents#webauthn-passkey`,children:`Signing Intents`}),` for those two fields. `,_jsx(_components.code,{children:`payload`}),` is still an empty intent, and `,_jsx(_components.code,{children:`nonce`}),` is still a versioned nonce.`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`12`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`12`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://1click.chaindefuser.com/v0/auth/authenticate`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signedData\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"standard\": \"webauthn\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"payload\": \"{\\\\\"signer_id\\\\\":\\\\\"0xYOUR_INTENTS_ACCOUNT\\\\\",\\\\\"verifying_contract\\\\\":\\\\\"intents.near\\\\\",\\\\\"deadline\\\\\":\\\\\"2026-09-30T09:00:00.000Z\\\\\",\\\\\"nonce\\\\\":\\\\\"YOUR_VERSIONED_NONCE\\\\\",\\\\\"intents\\\\\":[]}\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"public_key\": \"p256:YOUR_PUBLIC_KEY\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"signature\": \"p256:YOUR_SIGNATURE\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"client_data_json\": \"{\\\\\"type\\\\\":\\\\\"webauthn.get\\\\\",\\\\\"challenge\\\\\":\\\\\"YOUR_CHALLENGE\\\\\",\\\\\"origin\\\\\":\\\\\"https://your-app.com\\\\\"}\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"authenticator_data\": \"YOUR_AUTHENTICATOR_DATA\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`example-response`,children:`Example response`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"accessToken\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"refreshToken\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"expiresIn\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`3600`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"refreshExpiresIn\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2592000`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`signedData`}),` is the same `,_jsx(_components.code,{children:`MultiPayload`}),` signed-message format used for `,_jsx(_components.a,{href:`/integration/verifier-contract/signing-intents`,children:`Signing Intents`}),`, signed here with an empty `,_jsx(_components.code,{children:`intents`}),` array. It’s used purely as proof of account ownership, not a real swap.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Store `,_jsx(_components.code,{children:`refreshToken`}),` securely. Anyone holding it can mint new `,_jsx(_components.code,{children:`accessToken`}),`s for this account until it expires.`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Authenticate User with Signed Data","description":"Exchange a signed message for a User-Session access token","icon":"key","openapi":"post /v0/auth/authenticate","href":"/api-reference/user-auth/authenticate-user-with-signed-data"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Request","slug":"request","depth":2,"children":[]},{"title":"Example response","slug":"example-response","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Exchange a signed message for a User-Session access token","operationId":"authenticate","parameters":[],"requestBody":"1050429c-7ab5-4680-a121-e3db133ee411","responses":{"200":"8ab50311-adfe-44f6-ad08-9f2d94f5beb7","400":"d8c8e4d2-5e34-4537-bf55-c34c9e9b8b0f","401":"f3873f4f-5835-46b9-a440-4c033a5230d0"},"summary":"Authenticate user with signed data","tags":["User Auth"],"method":"post","type":"path","servers":["88cc343c-e395-4c66-a241-3f4bb3bd2c7c"],"security":[],"path":"/v0/auth/authenticate","baseUrlOptions":["https://1click.chaindefuser.com"],"title":"Authenticate user with signed data","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"signedData":{"oneOf":[{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["payload","public_key","signature","standard"],"properties":{"payload":{"description":"See [NEP-413](https://github.com/near/NEPs/blob/master/neps/nep-0413.md)","type":"object","required":["message","nonce","recipient"],"properties":{"message":{"type":"string","x-parseJson":{"type":"object","required":["deadline","signer_id"],"properties":{"deadline":{"type":"string"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}}}},"isRequired":true,"uniqueKey":"signedData.oneOf.0.payload.message","typeLabel":"string"},"nonce":{"type":"string","description":"Encoding: base64","isRequired":true,"uniqueKey":"signedData.oneOf.0.payload.nonce","typeLabel":"string"},"recipient":{"type":"string","isRequired":true,"uniqueKey":"signedData.oneOf.0.payload.recipient","typeLabel":"string"},"callbackUrl":{"oneOf":[{"type":"string","uniqueKey":"signedData.oneOf.0.payload.callbackUrl.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"signedData.oneOf.0.payload.callbackUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"signedData.oneOf.0.payload.callbackUrl","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.0.payload","typeLabel":"object"},"public_key":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.0.public_key","typeLabel":"string"},"signature":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.0.signature","typeLabel":"string"},"standard":{"type":"string","enum":["nep413"],"isRequired":true,"uniqueKey":"signedData.oneOf.0.standard","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.0","typeLabel":"object"},{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["payload","signature","standard"],"properties":{"payload":{"description":"See [ERC-191](https://github.com/ethereum/ercs/blob/master/ERCS/erc-191.md)","type":"string","x-parseJson":{"type":"object","required":["deadline","nonce","signer_id","verifying_contract"],"properties":{"deadline":{"type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}},"nonce":{"examples":["AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="],"type":"string","description":"Encoding: base64"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"verifying_contract":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}}},"isRequired":true,"uniqueKey":"signedData.oneOf.1.payload","typeLabel":"string"},"signature":{"description":"There is no public key member because the public key can be recovered via `ecrecover()` knowing the data and the signature. Encoding: base58","type":"string","pattern":"^secp256k1:","isRequired":true,"uniqueKey":"signedData.oneOf.1.signature","typeLabel":"string"},"standard":{"type":"string","enum":["erc191"],"isRequired":true,"uniqueKey":"signedData.oneOf.1.standard","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.1","typeLabel":"object"},{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["payload","signature","standard"],"properties":{"payload":{"description":"See [TIP-191](https://github.com/tronprotocol/tips/blob/master/tip-191.md)","type":"string","x-parseJson":{"type":"object","required":["deadline","nonce","signer_id","verifying_contract"],"properties":{"deadline":{"type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}},"nonce":{"examples":["AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="],"type":"string","description":"Encoding: base64"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"verifying_contract":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}}},"isRequired":true,"uniqueKey":"signedData.oneOf.2.payload","typeLabel":"string"},"signature":{"description":"There is no public key member because the public key can be recovered via `ecrecover()` knowing the data and the signature. Encoding: base58","type":"string","pattern":"^secp256k1:","isRequired":true,"uniqueKey":"signedData.oneOf.2.signature","typeLabel":"string"},"standard":{"type":"string","enum":["tip191"],"isRequired":true,"uniqueKey":"signedData.oneOf.2.standard","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.2","typeLabel":"object"},{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["payload","public_key","signature","standard"],"properties":{"payload":{"type":"string","x-parseJson":{"type":"object","required":["deadline","nonce","signer_id","verifying_contract"],"properties":{"deadline":{"type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}},"nonce":{"examples":["AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="],"type":"string","description":"Encoding: base64"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"verifying_contract":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}}},"isRequired":true,"uniqueKey":"signedData.oneOf.3.payload","typeLabel":"string"},"public_key":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.3.public_key","typeLabel":"string"},"signature":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.3.signature","typeLabel":"string"},"standard":{"type":"string","enum":["raw_ed25519"],"isRequired":true,"uniqueKey":"signedData.oneOf.3.standard","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.3","typeLabel":"object"},{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["authenticator_data","client_data_json","payload","standard","public_key","signature"],"properties":{"authenticator_data":{"description":"Base64Url-encoded [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data). Encoding: base64","type":"string","isRequired":true,"uniqueKey":"signedData.oneOf.4.authenticator_data","typeLabel":"string"},"client_data_json":{"description":"Serialized [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)","type":"string","isRequired":true,"uniqueKey":"signedData.oneOf.4.client_data_json","typeLabel":"string"},"payload":{"type":"string","x-parseJson":{"type":"object","required":["deadline","nonce","signer_id","verifying_contract"],"properties":{"deadline":{"type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}},"nonce":{"examples":["AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="],"type":"string","description":"Encoding: base64"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"verifying_contract":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}}},"isRequired":true,"uniqueKey":"signedData.oneOf.4.payload","typeLabel":"string"},"standard":{"type":"string","enum":["webauthn"],"isRequired":true,"uniqueKey":"signedData.oneOf.4.standard","typeLabel":"enum\u003cstring>"},"public_key":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.4.public_key","typeLabel":"string"},"signature":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.4.signature","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.4","typeLabel":"object"},{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["authenticator_data","client_data_json","payload","standard","public_key","signature"],"properties":{"authenticator_data":{"description":"Base64Url-encoded [authenticatorData](https://w3c.github.io/webauthn/#authenticator-data). Encoding: base64","type":"string","isRequired":true,"uniqueKey":"signedData.oneOf.5.authenticator_data","typeLabel":"string"},"client_data_json":{"description":"Serialized [clientDataJSON](https://w3c.github.io/webauthn/#dom-authenticatorresponse-clientdatajson)","type":"string","isRequired":true,"uniqueKey":"signedData.oneOf.5.client_data_json","typeLabel":"string"},"payload":{"type":"string","x-parseJson":{"type":"object","required":["deadline","nonce","signer_id","verifying_contract"],"properties":{"deadline":{"type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}},"nonce":{"examples":["AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="],"type":"string","description":"Encoding: base64"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"verifying_contract":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}}},"isRequired":true,"uniqueKey":"signedData.oneOf.5.payload","typeLabel":"string"},"standard":{"type":"string","enum":["webauthn"],"isRequired":true,"uniqueKey":"signedData.oneOf.5.standard","typeLabel":"enum\u003cstring>"},"public_key":{"type":"string","pattern":"^p256:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.5.public_key","typeLabel":"string"},"signature":{"type":"string","pattern":"^p256:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.5.signature","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.5","typeLabel":"object"},{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["address","domain","payload","public_key","signature","standard","timestamp"],"properties":{"address":{"type":"string","description":"Wallet address in either [Raw](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#raw-address) representation or [user-friendly](https://docs.ton.org/v3/documentation/smart-contracts/addresses/address-formats#user-friendly-address) format","isRequired":true,"uniqueKey":"signedData.oneOf.6.address","typeLabel":"string"},"domain":{"description":"dApp domain","type":"string","isRequired":true,"uniqueKey":"signedData.oneOf.6.domain","typeLabel":"string"},"payload":{"type":"object","description":"See \u003chttps://docs.tonconsole.com/academy/sign-data#choosing-the-right-format>","required":["text","type"],"properties":{"text":{"type":"string","x-parseJson":{"type":"object","required":["deadline","nonce","signer_id","verifying_contract"],"properties":{"deadline":{"type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}},"nonce":{"examples":["AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="],"type":"string","description":"Encoding: base64"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"verifying_contract":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}}},"isRequired":true,"uniqueKey":"signedData.oneOf.6.payload.text","typeLabel":"string"},"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"signedData.oneOf.6.payload.type","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"signedData.oneOf.6.payload","typeLabel":"object"},"public_key":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.6.public_key","typeLabel":"string"},"signature":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.6.signature","typeLabel":"string"},"standard":{"type":"string","enum":["ton_connect"],"isRequired":true,"uniqueKey":"signedData.oneOf.6.standard","typeLabel":"enum\u003cstring>"},"timestamp":{"oneOf":[{"type":"string","description":"UNIX timestamp (in seconds or RFC3339) at the time of singing","format":"date-time","isRequired":true,"uniqueKey":"signedData.oneOf.6.timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"integer","description":"UNIX timestamp (in seconds or RFC3339) at the time of singing","format":"int64","isRequired":true,"uniqueKey":"signedData.oneOf.6.timestamp.oneOf.1","typeLabel":"integer\u003cint64>"}],"isRequired":true,"uniqueKey":"signedData.oneOf.6.timestamp","typeLabel":"string\u003cdate-time> | integer\u003cint64>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.6","typeLabel":"object"},{"type":"object","description":"Assuming wallets want to interact with Intents protocol, besides preparing the data in a certain form, they have to have the capability to sign raw messages (off-chain signatures) using an algorithm we understand. This enum solves that problem.\n\nFor example, because we support ERC-191 and know how to verify messages with that standard, we can allow wallets, like Metamask, sign messages to perform intents without having to support new cryptographic primitives and signing standards.","required":["payload","public_key","signature","standard"],"properties":{"payload":{"type":"string","x-parseJson":{"type":"object","required":["deadline","nonce","signer_id","verifying_contract"],"properties":{"deadline":{"type":"string"},"intents":{"description":"Sequence of intents to execute in given order. Empty list is also a valid sequence, i.e. it doesn't do anything, but still invalidates the `nonce` for the signer WARNING: Promises created by different intents are executed concurrently and does not rely on the order of the intents in this structure","type":"array","items":{"oneOf":[{"description":"See [`AddPublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["add_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`RemovePublicKey`]","type":"object","required":["intent","public_key"],"properties":{"intent":{"type":"string","enum":["remove_public_key"]},"public_key":{"examples":["ed25519:5TagutioHgKLh7KZ1VEFBYfgRkPtqnKm9LoMnJMJugxm","secp256k1:3aMVMxsoAnHUbweXMtdKaN1uJaNwsfKv7wnc97SDGjXhyK62VyJwhPUPLZefKVthcoUcuWK6cqkSU4M542ipNxS3"],"type":"string","description":"Encoding: base58"}},"additionalProperties":false},{"description":"See [`Transfer`]","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["transfer"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"See [`FtWithdraw`]","type":"object","required":["amount","intent","receiver_id","token"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["ft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `ft_transfer`: minimum: 15TGas, default: 15TGas * `ft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `ft_transfer_call`. Otherwise, `ft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`NftWithdraw`]","type":"object","required":["intent","receiver_id","token","token_id"],"properties":{"intent":{"type":"string","enum":["nft_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed: * `nft_transfer`: minimum: 15TGas, default: 15TGas * `nft_transfer_call`: minimum: 30TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `nft_transfer_call`. Otherwise, `nft_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_id":{"type":"string"}},"additionalProperties":false},{"description":"See [`MtWithdraw`]","type":"object","required":["amounts","intent","receiver_id","token","token_ids"],"properties":{"amounts":{"type":"array","items":{"type":"string"}},"intent":{"type":"string","enum":["mt_withdraw"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Optional minimum required Near gas for created Promise to succeed per token: * `mt_batch_transfer`: minimum: 20TGas, default: 20TGas * `mt_batch_transfer_call`: minimum: 35TGas, default: 50TGas\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_batch_transfer_call`. Otherwise, `mt_batch_transfer` will be used. NOTE: No refund will be made in case of insufficient `storage_deposit` on `token` for `receiver_id`","type":["string","null"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"storage_deposit":{"description":"Optionally make `storage_deposit` for `receiver_id` on `token`. The amount will be subtracted from user's NEP-141 `wNEAR` balance. NOTE: the `wNEAR` will not be refunded in case of fail","type":["string","null"]},"token":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"token_ids":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},{"description":"See [`NativeWithdraw`]","type":"object","required":["amount","intent","receiver_id"],"properties":{"amount":{"type":"string"},"intent":{"type":"string","enum":["native_withdraw"]},"receiver_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false},{"description":"See [`StorageDeposit`]","type":"object","required":["amount","contract_id","deposit_for_account_id","intent"],"properties":{"amount":{"type":"string"},"contract_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"deposit_for_account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"intent":{"type":"string","enum":["storage_deposit"]}},"additionalProperties":false},{"description":"See [`TokenDiff`]","type":"object","required":["diff","intent"],"properties":{"diff":{"type":"object","additionalProperties":{"type":"string"}},"intent":{"type":"string","enum":["token_diff"]},"memo":{"type":["string","null"]},"referral":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":["string","null"]}},"additionalProperties":false},{"description":"See [`SetAuthByPredecessorId`]","type":"object","required":["enabled","intent"],"properties":{"enabled":{"type":"boolean"},"intent":{"type":"string","enum":["set_auth_by_predecessor_id"]}},"additionalProperties":false},{"description":"See [`AuthCall`]","type":"object","required":["contract_id","intent","msg"],"properties":{"attached_deposit":{"description":"Optionally, attach deposit to [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth) call. The amount will be subtracted from user's NEP-141 `wNEAR` balance.\n\nNOTE: the `wNEAR` will not be refunded in case of fail.","type":"string"},"contract_id":{"description":"Callee for [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"intent":{"type":"string","enum":["auth_call"]},"min_gas":{"description":"Optional minimum gas required for created promise to succeed. By default, only [`MIN_GAS_DEFAULT`](AuthCall::MIN_GAS_DEFAULT) is required.\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"`msg` to pass in [`.on_auth`](::defuse_auth_call::AuthCallee::on_auth)","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling [`.on_auth()`](::defuse_auth_call::AuthCallee::on_auth) (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]}},"additionalProperties":false},{"description":"Mint a set of tokens from the signer to a specified account id, within the intents contract.","type":"object","required":["intent","receiver_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_mint"]},"memo":{"type":["string","null"]},"min_gas":{"description":"Minimum gas for `mt_on_transfer()`\n\nRemaining gas will be distributed evenly across all Function Call Promises created during execution of current receipt.","type":["string","null"]},"msg":{"description":"Message to pass to `mt_on_transfer`","type":"string"},"receiver_id":{"description":"Receiver of the minted tokens","type":"string"},"state_init":{"description":"Optionally initialize the receiver's contract (Deterministic AccountId) via [`state_init`](https://github.com/near/NEPs/blob/master/neps/nep-0616.md#stateinit-action) right before calling `mt_on_transfer()` (in the same receipt).","anyOf":[{"oneOf":[{"type":"object","required":["code","data","version"],"properties":{"code":{"oneOf":[{"type":"object","required":["hash"],"properties":{"hash":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["account_id"],"properties":{"account_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}},"additionalProperties":false}]},"data":{"type":"object","additionalProperties":{"type":"string"}},"version":{"type":"string","enum":["v1"]}},"additionalProperties":false}]},{"type":"null"}]},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority (i.e. signer of this intent). The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},{"description":"Burn a set of imt tokens, within the intents contract.","type":"object","required":["intent","minter_id","tokens"],"properties":{"intent":{"type":"string","enum":["imt_burn"]},"memo":{"type":["string","null"]},"minter_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"tokens":{"description":"The token_ids will be wrapped to bind the token ID to the minter authority. The final string representation of the token will be as follows: `imt:\u003cminter_id>:\u003ctoken_id>`","type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false}]}},"nonce":{"examples":["AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="],"type":"string","description":"Encoding: base64"},"signer_id":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"},"verifying_contract":{"description":"NEAR Account Identifier.\n\nThis is a unique, syntactically valid, human-readable account identifier on the NEAR network.\n\n[See the crate-level docs for information about validation.](index.html#account-id-rules)\n\nAlso see [Error kind precedence](AccountId#error-kind-precedence).\n\n## Examples\n\n``` use near_account_id::AccountId;\n\nlet alice: AccountId = \"alice.near\".parse().unwrap();\n\nassert!(\"ƒelicia.near\".parse::\u003cAccountId>().is_err()); // (ƒ is not f) ```","type":"string"}}},"isRequired":true,"uniqueKey":"signedData.oneOf.7.payload","typeLabel":"string"},"public_key":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.7.public_key","typeLabel":"string"},"signature":{"type":"string","pattern":"^ed25519:","description":"Encoding: base58","isRequired":true,"uniqueKey":"signedData.oneOf.7.signature","typeLabel":"string"},"standard":{"type":"string","enum":["sep53"],"isRequired":true,"uniqueKey":"signedData.oneOf.7.standard","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"signedData.oneOf.7","typeLabel":"object"}],"isRequired":true,"uniqueKey":"signedData","typeLabel":"object"}},"required":["signedData"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"signedData":{"payload":{"message":"\u003cstring>","nonce":"\u003cstring>","recipient":"\u003cstring>","callbackUrl":"\u003cstring>"},"public_key":"\u003cstring>","signature":"\u003cstring>","standard":"nep413"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"8ab50311-adfe-44f6-ad08-9f2d94f5beb7":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"accessToken":{"type":"string","description":"JWT access token for API calls","isRequired":true,"uniqueKey":"accessToken","typeLabel":"string"},"refreshToken":{"type":"string","description":"JWT refresh token for getting new access tokens","isRequired":true,"uniqueKey":"refreshToken","typeLabel":"string"},"expiresIn":{"type":"number","description":"Access token expiration time in seconds","isRequired":true,"uniqueKey":"expiresIn","typeLabel":"number"},"refreshExpiresIn":{"type":"number","description":"Refresh token expiration time in seconds","isRequired":true,"uniqueKey":"refreshExpiresIn","typeLabel":"number"}},"required":["accessToken","refreshToken","expiresIn","refreshExpiresIn"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"accessToken":"\u003cstring>","refreshToken":"\u003cstring>","expiresIn":123,"refreshExpiresIn":123}}},"exampleType":"generated"}},"exampleType":"generated"},"d8c8e4d2-5e34-4537-bf55-c34c9e9b8b0f":{"description":"Invalid signed data","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"f3873f4f-5835-46b9-a440-4c033a5230d0":{"description":"Signature verification failed","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{},"servers":{"88cc343c-e395-4c66-a241-3f4bb3bd2c7c":{"url":"https://1click.chaindefuser.com"}}},"originalFileLocation":"https://1click.chaindefuser.com/docs/v0/openapi.yaml"},"subdomain":"defuselabsltd","siteName":"NEAR Intents","title":"Authenticate User with Signed Data - NEAR Intents","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-08T11:55:55.507Z","originalFileLocation":"api-reference/user-auth/authenticate-user-with-signed-data.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Exchange a signed message for a User-Session access token\">\u003cmeta data-mint-head name=\"application-name\" content=\"NEAR Intents\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Authenticate User with Signed Data - NEAR Intents\">\u003cmeta data-mint-head property=\"og:description\" content=\"Exchange a signed message for a User-Session access token\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"NEAR Intents\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://defuselabsltd.mintlify.app/_mintlify/api/og/v2?division=User+Auth\u0026amp;title=Authenticate+User+with+Signed+Data\u0026amp;description=Exchange+a+signed+message+for+a+User-Session+access+token\u0026amp;theme=324d91610157733f3583dc56\u0026amp;signature=cc08bb024f08b1747d46d650d4748e27d81347d8fa3625bde0bea27e06fdc1f4\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Authenticate User with Signed Data - NEAR Intents\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Exchange a signed message for a User-Session access token\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://defuselabsltd.mintlify.app/_mintlify/api/og/v2?division=User+Auth\u0026amp;title=Authenticate+User+with+Signed+Data\u0026amp;description=Exchange+a+signed+message+for+a+User-Session+access+token\u0026amp;theme=324d91610157733f3583dc56\u0026amp;signature=cc08bb024f08b1747d46d650d4748e27d81347d8fa3625bde0bea27e06fdc1f4\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/defuselabsltd/SbiBQ3yArLByQFIh/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"NEAR Intents\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#fb4d01\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/user-auth/authenticate-user-with-signed-data.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.near-intents.org/#organization\",\"name\":\"NEAR Intents\",\"url\":\"https://docs.near-intents.org\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/defuselabsltd/H7BXykL_JPKw4xWb/images/logo/light.svg?fit=max\u0026auto=format\u0026n=H7BXykL_JPKw4xWb\u0026q=85\u0026s=e31b086fb76c5f6228ea4020afc8db58\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.near-intents.org#website\",\"name\":\"NEAR Intents\",\"url\":\"https://docs.near-intents.org\",\"publisher\":{\"@id\":\"https://docs.near-intents.org/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data#webpage\",\"url\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data\",\"name\":\"Authenticate User with Signed Data\",\"description\":\"Exchange a signed message for a User-Session access token\",\"dateModified\":\"2026-10-08T11:55:55.507Z\",\"isPartOf\":{\"@id\":\"https://docs.near-intents.org#website\"},\"breadcrumb\":{\"@id\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Swap API\",\"item\":\"https://docs.near-intents.org/integration/distribution-channels/1click-api/about-1click-api\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Authenticate User with Signed Data\",\"item\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data#apireference\",\"headline\":\"Authenticate User with Signed Data\",\"name\":\"Authenticate User with Signed Data\",\"description\":\"Exchange a signed message for a User-Session access token\",\"url\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data\",\"mainEntityOfPage\":{\"@id\":\"https://docs.near-intents.org/api-reference/user-auth/authenticate-user-with-signed-data#webpage\"},\"dateModified\":\"2026-10-08T11:55:55.507Z\",\"publisher\":{\"@id\":\"https://docs.near-intents.org/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.near-intents.org#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"NEAR Intents\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"NEAR Intents","nav":{"global":null,"tabs":[{"tab":"Swaps","groups":[{"group":"Welcome","hidden":true,"pages":[{"mode":"wide","title":null,"href":"/index"}]},{"group":"Intents","pages":[{"title":"What are Intents?","sidebarTitle":"What are Intents?","icon":"lightbulb","href":"/getting-started/what-are-intents"},{"title":"Supported Chains","icon":"link","href":"/resources/chain-support"},{"title":"Supported Assets","icon":"coins","href":"/resources/asset-support"}]},{"group":"Swap API","pages":[{"title":"1Click Swap API","sidebarTitle":"Overview","icon":"lightbulb","href":"/integration/distribution-channels/1click-api/about-1click-api"},{"group":"Quickstart","icon":"rocket","pages":[{"title":"Quickstart","sidebarTitle":"Introduction","icon":"rocket","href":"/integration/distribution-channels/1click-api/quickstart/introduction"},{"title":"Making a Request","icon":"paper-plane","href":"/integration/distribution-channels/1click-api/quickstart/making-a-request"},{"title":"Confidential Swaps","icon":"user-secret","href":"/integration/distribution-channels/1click-api/quickstart/confidential-swaps"},{"title":"Signed Intent Execution","icon":"signature","href":"/integration/distribution-channels/1click-api/quickstart/signed-intent-execution"},{"title":"Going Live","icon":"flag-checkered","href":"/integration/distribution-channels/1click-api/quickstart/going-live"}]},{"title":"Swap SDK","icon":"window-restore","href":"/integration/distribution-channels/1click-api/sdk"},{"title":"API Keys","icon":"key","href":"/integration/distribution-channels/1click-api/authentication"},{"title":"Verify Quote Signatures","icon":"shield-check","href":"/integration/distribution-channels/1click-api/verify-quote-signature"},{"title":"Swap Types","icon":"right-left","href":"/integration/distribution-channels/1click-api/swap-types"},{"title":"Earn","sidebarTitle":"Earn","icon":"chart-line","href":"/integration/distribution-channels/1click-api/earn"},{"title":"Hyperliquid","sidebarTitle":"Hyperliquid","icon":"chart-simple","href":"/integration/distribution-channels/1click-api/hyperliquid"},{"group":"Limit Orders","icon":"clock","root":{"title":"Limit Orders","sidebarTitle":"Limit Orders","icon":"clock","href":"/integration/distribution-channels/1click-api/orders"},"pages":[{"title":"Create an order","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml post /v0/orders","href":"/api-reference/order/create-an-order"},{"title":"List orders","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml get /v0/orders","href":"/api-reference/order/list-orders"},{"title":"Get an order","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml get /v0/orders/{orderId}","href":"/api-reference/order/get-an-order"},{"title":"Cancel an order","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml post /v0/orders/{orderId}/cancel","href":"/api-reference/order/cancel-an-order"}]},{"title":"Fee Configuration","icon":"wallet","href":"/integration/distribution-channels/1click-api/fee-config"},{"group":"API Reference","icon":"code","pages":[{"title":"Get supported tokens","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml get /v0/tokens","href":"/api-reference/oneclick/get-supported-tokens"},{"title":"Request a swap quote","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml post /v0/quote","href":"/api-reference/oneclick/request-a-swap-quote"},{"title":"Check swap execution status","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml get /v0/status","href":"/api-reference/oneclick/check-swap-execution-status"},{"title":"Get ANY_INPUT withdrawals","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml get /v0/any-input/withdrawals","href":"/api-reference/oneclick/get-any_input-withdrawals"},{"title":"Submit deposit transaction hash","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml post /v0/deposit/submit","href":"/api-reference/oneclick/submit-deposit-transaction-hash"},{"title":"Generate an intent for signing","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml post /v0/generate-intent","href":"/api-reference/oneclick/generate-an-intent-for-signing"},{"title":"Submit a signed intent","description":"Submits a signed intent to execute.\n\n After generating an intent for a quote or limit order via `/generate-intent` and having the user sign it with their wallet, submit the signed intent through this endpoint.\n\n The system validates the signature, processes the intent, and returns the intent hash upon successful submission.\n\n **Request Type Variants:**\n - `swap_transfer`: Submit a signed swap intent (requires signedData object)","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml post /v0/submit-intent","href":"/api-reference/oneclick/submit-a-signed-intent"}]},{"group":"User Auth","icon":"user-lock","pages":[{"title":"Authenticate User with Signed Data","icon":"key","openapi":"post /v0/auth/authenticate","href":"/api-reference/user-auth/authenticate-user-with-signed-data"},{"title":"Refresh Access Token","description":"Exchange a refresh token for a new access token","icon":"rotate","openapi":"post /v0/auth/refresh","href":"/api-reference/user-auth/refresh-access-token"}]},{"group":"Account","icon":"wallet","pages":[{"title":"Get user token balances","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml get /v0/account/balances","href":"/api-reference/account/get-user-token-balances"},{"title":"Get transaction history","deprecated":null,"version":null,"openapi":"https://1click.chaindefuser.com/docs/v0/openapi.yaml get /v0/account/history","href":"/api-reference/account/get-transaction-history"}]},{"group":"Explorer API","icon":"magnifying-glass-chart","root":{"title":"Explorer API","href":"/integration/distribution-channels/1click-api/explorer/introduction"},"pages":[{"title":"Get transactions","deprecated":null,"version":null,"openapi":"https://explorer.near-intents.org/api/v0/openapi.yaml get /api/v0/transactions","href":"/api-reference/get-transactions"}]}]},{"group":"Developer ToolKit","pages":[{"title":"React Widget","icon":"palette","href":"/integration/devkit/react-widget"},{"title":"Intents SDK","icon":"window-restore","href":"/integration/devkit/intents-sdk"},{"title":"Agent Skills","icon":"robot","href":"/integration/devkit/skills"}]},{"group":"Resources","pages":[{"title":"FAQs","icon":"circle-question","href":"/resources/faqs"},{"title":"Fees","icon":"dollar-sign","href":"/resources/fees"},{"group":"Security \u0026 Compliance","icon":"shield-check","pages":[{"title":"SHIELD: Proactive Intents Security","icon":"shield-halved","href":"/security-compliance/proactive-intents-security"},{"title":"Shield Incident API","icon":"paper-plane","href":"/security-compliance/shield-incident-api"},{"title":"Risk \u0026 Compliance","icon":"shield-check","href":"/security-compliance/risk-and-compliance"},{"title":"Security","icon":"lock","href":"/security-compliance/security"},{"title":"Treasury Addresses","icon":"vault","href":"/security-compliance/treasury-addresses"},{"title":"1ClickSwap API Terms of Use","icon":"file-contract","href":"/security-compliance/terms-of-service"}]}]}]},{"tab":"Market Makers","pages":[{"title":"Market Makers","href":"/integration/market-makers/introduction"}]},{"tab":"Bridges","pages":[{"title":"Bridges","href":"/integration/bridging/overview"}]},{"tab":"Verifier Contract","pages":[{"title":"Verifier Contract","href":"/integration/verifier-contract/introduction"}]},{"tab":"Learn","pages":[{"title":"Learn","href":"/learn/omni-bridge/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/overview"}]}]},"title":"Authenticate User with Signed Data - NEAR Intents","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-DKJwRUt2.js","utils-CWD_VS3u.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-oFjciODD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C76WsxC3.js","snippetPresets-DvPMxpX_.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-7TwLLapg.js","ApiExamples-CuNQfndH.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BVFpVUoF.js","shallow-t59Jg5Kr.js","getApiPlaygroundDisplay-C_JZ4amX.js","CodeSnippet-CLRDnx_h.js","CodeSnippets-C2myU4kc.js","getPastedJson-B-JaVXw7.js","icon-BA-iDhH3.js","MethodPill-D4qZABFp.js","DuplicateIcon-THIDKO1O.js","createIcon-CYYJwgFd.js","DynamicMarkdown-UGQuxDKp.js","SectionHeading-jYELb23h.js","axios-vUo_bRtp.js","Markdown-DKsLa3wy.js","clsx-CefdjKz2.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BaREnp3o.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-sgx_0XzF.js"]}