The REST and gRPC methods use the same request and response messages. Select gRPC (protobuf) in the SigningRequest field explorer for protobuf names, types and field numbers.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"mpcvault","colors":{"primary":"#3f51eb","light":"#3F51EB","dark":"#3147FF"},"logo":{"light":"https://mintcdn.com/mpcvault-47/O0MaqmNIX1uMKej9/logo/logo-text-light.svg?fit=max\u0026auto=format\u0026n=O0MaqmNIX1uMKej9\u0026q=85\u0026s=7e59277598745fdd45140dfa7d033789","dark":"https://mintcdn.com/mpcvault-47/O0MaqmNIX1uMKej9/logo/logo-text-dark.svg?fit=max\u0026auto=format\u0026n=O0MaqmNIX1uMKej9\u0026q=85\u0026s=26ede2dec2e297eb11f2c30e051b319f"},"favicon":"https://mintcdn.com/mpcvault-47/Vocr8Xt6F-GGbaxm/favicon.svg?fit=max\u0026auto=format\u0026n=Vocr8Xt6F-GGbaxm\u0026q=85\u0026s=9c33f99c7b5cbb1a38425c3fc7897628","appearance":{"default":"system"},"background":{"decoration":"gradient"},"navbar":{"primary":{"type":"button","label":"Open Console","href":"https://console.mpcvault.com"}},"footer":{"socials":{"x":"https://x.com/mpcvault","github":"https://github.com/mpcvault","linkedin":"https://linkedin.com/company/mpcvault"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Website","icon":"globe","href":"https://mpcvault.com"},{"anchor":"Twitter","icon":"x-twitter","href":"https://x.com/mpcvault"},{"anchor":"Status","icon":"heart-pulse","href":"https://status.mpcvault.com/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"mpcvault-47","hasAudioNarration":false,"actualSubdomain":"mpcvault-47","customDomains":["docs.mpcvault.com"],"gitSource":{"type":"github","owner":"metaloop-world","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aed9750bae2df4334f4a0ff","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API Reference","count":39},{"language":"default","tag":"Documentation","count":39},{"language":"default","tag":"Getting Started","count":21},{"language":"default","tag":"DeFi \u0026 Networks","count":11},{"language":"default","tag":"Signing Requests","count":10},{"language":"default","tag":"Supported Networks","count":9},{"language":"default","tag":"Wallets","count":7},{"language":"default","tag":"Introduction","count":7},{"language":"default","tag":"Transfers \u0026 Transactions","count":7},{"language":"default","tag":"Deposit \u0026 Sweep","count":4}]},"assistantConfig":{"deflection":{"enabled":true,"email":"support@mpcvault.com"}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","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":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","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":"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":"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":"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":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","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":"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":"workos-sso-scim","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},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","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}],"googleFontsInlined":false},"customCss":[{"filePath":"styles/custom.css","content":".nav-logo{height:20px}.supported-networks-table th:nth-child(2),.supported-networks-table td:nth-child(2),.supported-networks-table td:nth-child(2) code{white-space:nowrap;overflow-wrap:normal;word-break:normal}.compact-code-table table td{min-width:0}.compact-code-table table :is(th,td):not(:first-child,:last-child){padding-inline:0.375rem}.compact-code-table table td code{white-space:nowrap}.stellar-memos-table table :is(th,td):first-child{white-space:nowrap}img[src$=\"/images/banner.jpg\"]{clip-path:inset(0 round 2% / 8%)}#sidebar-content a[href=\"/api-reference/rest/get-pending-signing-requests\"]{padding-inline-end:0.25rem}"}],"page":{"pagePath":"api-reference/grpc","slug":"/api-reference/grpc","pageMetadata":{"title":"gRPC vs REST","description":"Choose the right protocol for your integration.","href":"/api-reference/grpc"},"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: \"Choose the right protocol for your integration.\"\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`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`MPCVault supports both gRPC and REST with identical functionality.`}),`\n`,_jsx(Heading,{level:`2`,id:`comparison`,children:`Comparison`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{}),_jsx(_components.th,{children:`gRPC`}),_jsx(_components.th,{children:`REST`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Endpoint`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`api.mpcvault.com:443`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`https://api.mpcvault.com/v1`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Performance`}),_jsx(_components.td,{children:`Faster (binary protocol)`}),_jsx(_components.td,{children:`Standard HTTP/JSON`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Client libraries`}),_jsx(_components.td,{children:`Auto-generated from Protobuf`}),_jsx(_components.td,{children:`Use any HTTP client`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Best for`}),_jsx(_components.td,{children:`High-frequency operations`}),_jsx(_components.td,{children:`Simple integrations`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`rest-example`,children:`REST Example`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,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:`4`,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://api.mpcvault.com/v1/getWalletList`}),_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:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-mtoken: YOUR_API_TOKEN\"`}),_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:` '{\"vaultUuid\": \"your-vault-uuid\",\"page\":\"0\",\"limit\":\"10\"}'`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`grpc-example`,children:`gRPC Example`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`18`,language:`python`,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:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`18`,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:` grpc`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` mpcvault.platform.v1 `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` api_pb2, api_pb2_grpc`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Create secure channel`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`channel `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` grpc.secure_channel(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'api.mpcvault.com:443'`}),_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:` grpc.ssl_channel_credentials()`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Create stub`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`stub `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` api_pb2_grpc.PlatformAPIStub(channel)`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Make request with metadata`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`metadata `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'x-mtoken'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'YOUR_API_TOKEN'`}),_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:`response `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` stub.GetWalletList(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` api_pb2.GetWalletListRequest(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`vault_uuid`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"your-vault-uuid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`),`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` metadata`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`metadata`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`protobuf-definitions`,children:`Protobuf Definitions`}),`\n`,_jsx(_components.p,{children:`Full Protobuf definitions and examples are available at:`}),`\n`,_jsx(_components.p,{children:_jsx(_components.a,{href:`https://github.com/mpcvault/mpcvaultapis/`,children:`github.com/mpcvault/mpcvaultapis`})}),`\n`,_jsx(Heading,{level:`2`,id:`method-reference`,children:`Method reference`}),`\n`,_jsxs(_components.p,{children:[`The REST and gRPC methods use the same request and response messages. Select gRPC (protobuf) in the `,_jsx(_components.a,{href:`/api-reference/signing-request#fields`,children:`SigningRequest field explorer`}),` for protobuf names, types and field numbers.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Method`}),_jsx(_components.th,{children:`gRPC reference`}),_jsx(_components.th,{children:`REST reference`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`CreateSigningRequest`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/create-signing-request`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/create-signing-request`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`RejectSigningRequest`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/reject-signing-request`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/reject-signing-request`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`RejectSigningRequests`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/reject-signing-requests`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/reject-signing-requests`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ApproveSigningRequest`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/approve-signing-request`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/approve-signing-request`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GetSigningRequestDetails`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/get-signing-request-details`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/get-signing-request-details`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`CreateBatchPayment`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/create-batch-payment`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/create-batch-payment`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GetBatchPaymentDetails`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/get-batch-payment-details`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/get-batch-payment-details`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`CreateWallet`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/create-wallet`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/create-wallet`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ExecuteSigningRequests`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/execute-signing-requests`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/execute-signing-requests`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GetBalance`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/get-balance`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/get-balance`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GetWalletInfo`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/get-wallet-info`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/get-wallet-info`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GetWalletList`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/get-wallet-list`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/get-wallet-list`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GetSigningRequestList`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/get-signing-request-list`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/get-signing-request-list`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GetPendingSigningRequests`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/get-pending-signing-requests`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/get-pending-signing-requests`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`Resimulation`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/resimulation`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/resimulation`,children:`Endpoint`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`UpdateWallet`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/grpc/update-wallet`,children:`Request and response`})}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/api-reference/rest/update-wallet`,children:`Endpoint`})})]})]})]})]})}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":"gRPC vs REST","description":"Choose the right protocol for your integration.","href":"/api-reference/grpc"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Comparison","slug":"comparison","depth":2,"children":[]},{"title":"REST Example","slug":"rest-example","depth":2,"children":[]},{"title":"gRPC Example","slug":"grpc-example","depth":2,"children":[]},{"title":"Protobuf Definitions","slug":"protobuf-definitions","depth":2,"children":[]},{"title":"Method reference","slug":"method-reference","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/mpcvault-47/7f858ae2670255ff/guides/_meta.js"],"subdomain":"mpcvault-47","siteName":"mpcvault","title":"gRPC vs REST - mpcvault","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-05T04:16:14.232Z","originalFileLocation":"api-reference/grpc.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=\"Choose the right protocol for your integration.\">\u003cmeta data-mint-head name=\"application-name\" content=\"mpcvault\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/mpcvault-47/XYPGmQpCswaFxalu/_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/mpcvault-47/XYPGmQpCswaFxalu/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/mpcvault-47/XYPGmQpCswaFxalu/_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/mpcvault-47/XYPGmQpCswaFxalu/_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/mpcvault-47/XYPGmQpCswaFxalu/_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/mpcvault-47/XYPGmQpCswaFxalu/_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/mpcvault-47/XYPGmQpCswaFxalu/_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/mpcvault-47/XYPGmQpCswaFxalu/_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/mpcvault-47/XYPGmQpCswaFxalu/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"gRPC vs REST - mpcvault\">\u003cmeta data-mint-head property=\"og:description\" content=\"Choose the right protocol for your integration.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"mpcvault\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.mpcvault.com/api-reference/grpc\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://mpcvault-47.mintlify.site/_mintlify/api/og/v2?division=Getting+Started\u0026amp;title=gRPC+vs+REST\u0026amp;description=Choose+the+right+protocol+for+your+integration.\u0026amp;theme=b5d9b01be42f4aa80950ba44\u0026amp;signature=6c71c403ecfa016367c206a0613cef528608cd242a1c5d2a006460372fa6530f\">\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=\"gRPC vs REST - mpcvault\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Choose the right protocol for your integration.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://mpcvault-47.mintlify.site/_mintlify/api/og/v2?division=Getting+Started\u0026amp;title=gRPC+vs+REST\u0026amp;description=Choose+the+right+protocol+for+your+integration.\u0026amp;theme=b5d9b01be42f4aa80950ba44\u0026amp;signature=6c71c403ecfa016367c206a0613cef528608cd242a1c5d2a006460372fa6530f\">\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/mpcvault-47/XYPGmQpCswaFxalu/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"mpcvault\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3f51eb\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.mpcvault.com/api-reference/grpc\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/grpc.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.mpcvault.com/#organization\",\"name\":\"mpcvault\",\"url\":\"https://docs.mpcvault.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/mpcvault-47/O0MaqmNIX1uMKej9/logo/logo-text-light.svg?fit=max\u0026auto=format\u0026n=O0MaqmNIX1uMKej9\u0026q=85\u0026s=7e59277598745fdd45140dfa7d033789\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.mpcvault.com#website\",\"name\":\"mpcvault\",\"url\":\"https://docs.mpcvault.com\",\"publisher\":{\"@id\":\"https://docs.mpcvault.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.mpcvault.com/api-reference/grpc#webpage\",\"url\":\"https://docs.mpcvault.com/api-reference/grpc\",\"name\":\"gRPC vs REST\",\"description\":\"Choose the right protocol for your integration.\",\"dateModified\":\"2026-11-05T04:16:14.232Z\",\"isPartOf\":{\"@id\":\"https://docs.mpcvault.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.mpcvault.com/api-reference/grpc#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.mpcvault.com/api-reference/grpc#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Getting Started\",\"item\":\"https://docs.mpcvault.com/api-reference/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"gRPC vs REST\",\"item\":\"https://docs.mpcvault.com/api-reference/grpc\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.mpcvault.com/api-reference/grpc#article\",\"headline\":\"gRPC vs REST\",\"name\":\"gRPC vs REST\",\"description\":\"Choose the right protocol for your integration.\",\"url\":\"https://docs.mpcvault.com/api-reference/grpc\",\"mainEntityOfPage\":{\"@id\":\"https://docs.mpcvault.com/api-reference/grpc#webpage\"},\"dateModified\":\"2026-11-05T04:16:14.232Z\",\"publisher\":{\"@id\":\"https://docs.mpcvault.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.mpcvault.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"mpcvault\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"mpcvault\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/grpc.md","siteName":"mpcvault","nav":{"global":{"anchors":[{"anchor":"Website","icon":"globe","href":"https://mpcvault.com"},{"anchor":"Twitter","icon":"x-twitter","href":"https://x.com/mpcvault"},{"anchor":"Status","icon":"heart-pulse","href":"https://status.mpcvault.com/"}]},"tabs":[{"tab":"Documentation","icon":"book","pages":[{"title":"Documentation","href":""}]},{"tab":"API Reference","icon":"code","groups":[{"group":"Getting Started","icon":"rocket","pages":[{"title":"Introduction","href":"/api-reference/overview"},{"group":"Supported Networks","root":{"title":"Supported Networks","href":"/api-reference/supported-networks"},"pages":[{"title":"EVM","href":"/api-reference/evm/quickstart"},{"title":"Bitcoin","href":"/api-reference/bitcoin/quickstart"},{"title":"Solana","href":"/api-reference/solana/quickstart"},{"group":"Stellar","root":{"title":"Stellar","href":"/api-reference/stellar/quickstart"},"pages":[{"title":"Classic Transactions","sidebarTitle":"Classic","href":"/api-reference/stellar/classic-transactions"},{"title":"Soroban Interactions","sidebarTitle":"Soroban","href":"/api-reference/stellar/soroban-interactions"}]},{"title":"Sui","href":"/api-reference/sui/quickstart"},{"title":"TON","href":"/api-reference/ton/quickstart"},{"title":"Aptos","href":"/api-reference/aptos/quickstart"},{"title":"TRON","description":"Transfer TRX, TRC-10 and TRC-20 tokens with the MPCVault API.","href":"/api-reference/tron/quickstart"}]},{"title":"gRPC vs REST","href":"/api-reference/grpc"},{"group":"API Setup","pages":[{"title":"API Setup Guide","description":"Complete guide to setting up API access and programmatic signing with MPCVault.","href":"/guides/18-how-to-enable-api/index"},{"title":"Client Signer Setup","href":"/guides/18-how-to-enable-api/client-signer"}]},{"title":"Authentication","href":"/api-reference/authentication"},{"title":"Data types and encodings","href":"/api-reference/data-types"},{"title":"Idempotency","href":"/api-reference/idempotency"},{"title":"API Errors","href":"/api-reference/errors"}]},{"group":"Wallets","icon":"wallet","pages":[{"title":"CreateWallet","openapi":"openapi.json POST /v1/createWallet","href":"/api-reference/rest/create-wallet"},{"title":"GetWalletList","openapi":"openapi.json POST /v1/getWalletList","href":"/api-reference/rest/get-wallet-list"},{"title":"GetWalletInfo","openapi":"openapi.json POST /v1/getWalletInfo","href":"/api-reference/rest/get-wallet-info"},{"title":"UpdateWallet","openapi":"openapi.json POST /v1/updateWallet","href":"/api-reference/rest/update-wallet"},{"title":"GetBalance","openapi":"openapi.json POST /v1/getBalance","href":"/api-reference/rest/get-balance"}]},{"group":"Signing Requests","icon":"signature","pages":[{"title":"SigningRequest object","mode":"wide","href":"/api-reference/signing-request"},{"title":"CreateSigningRequest","openapi":"openapi.json POST /v1/createSigningRequest","href":"/api-reference/rest/create-signing-request"},{"title":"ExecuteSigningRequests","openapi":"openapi.json POST /v1/executeSigningRequests","href":"/api-reference/rest/execute-signing-requests"},{"title":"GetSigningRequestDetails","openapi":"openapi.json POST /v1/getSigningRequestDetails","href":"/api-reference/rest/get-signing-request-details"},{"title":"GetSigningRequestList","openapi":"openapi.json POST /v1/getSigningRequestList","href":"/api-reference/rest/get-signing-request-list"},{"title":"GetPendingSigningRequests","openapi":"openapi.json POST /v1/getPendingSigningRequests","href":"/api-reference/rest/get-pending-signing-requests"},{"title":"ApproveSigningRequest","openapi":"openapi.json POST /v1/approveSigningRequest","href":"/api-reference/rest/approve-signing-request"},{"title":"RejectSigningRequest","openapi":"openapi.json POST /v1/rejectSigningRequest","href":"/api-reference/rest/reject-signing-request"},{"title":"RejectSigningRequests","openapi":"openapi.json POST /v1/rejectSigningRequests","href":"/api-reference/rest/reject-signing-requests"},{"title":"Resimulation","openapi":"openapi.json POST /v1/resimulation","href":"/api-reference/rest/resimulation"}]},{"group":"Batch Payments","icon":"money-bill-transfer","pages":[{"title":"CreateBatchPayment","openapi":"openapi.json POST /v1/createBatchPayment","href":"/api-reference/rest/create-batch-payment"},{"title":"GetBatchPaymentDetails","openapi":"openapi.json POST /v1/getBatchPaymentDetails","href":"/api-reference/rest/get-batch-payment-details"}]},{"group":"Deposit \u0026 Sweep","icon":"arrow-down-to-bracket","pages":[{"title":"Sweep Overview","href":"/api-reference/sweep/overview"},{"title":"CreateDepositWallet","openapi":"openapi.json POST /v1/sweep/wallets","href":"/api-reference/sweep/create-deposit-wallet"},{"title":"Sweep Webhooks","href":"/api-reference/sweep/webhooks"}]},{"group":"TRON Watch Address","icon":"eye","pages":[{"title":"TRON Watch Address","href":"/api-reference/sweep/tron-watch-address"},{"title":"AddWatchAddress","openapi":"openapi.json POST /v1/sweep/addWatchAddress","href":"/api-reference/sweep/add-watch-address"}]}]}]},"basePath":"","title":"gRPC vs REST - mpcvault","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}