const response = await fetch( 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml?filter=GBT', { method: 'PUT', headers: { 'Authorization': 'Basic dXNlcm5hbWU6cGFzc3dvcmQ=', 'X-PciBooking-carduri': '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]', 'Content-Type': 'text/plain' }, body: fileContent // the file to upload, in the format named by the filter parameter });console.log(response.status);
import requestsresponse = requests.put( 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml', params={'filter': 'GBT'}, headers={ 'Authorization': 'Basic dXNlcm5hbWU6cGFzc3dvcmQ=', 'X-PciBooking-carduri': '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]', 'Content-Type': 'text/plain' }, data=file_content # the file to upload, in the format named by the filter parameter)print(response.status_code)
Empty response body.Authentication failed: the API key, session token or access token is missing or was not accepted.See "Authentication and Permission Failures" on the Error Handling page.
Token Replacement
Token Replacement to sFTP
Replace card tokens in a document and upload the result to an sFTP server.
PUT
/
api
/
sftp
/
{serverAddress}
/
{folderPath}
/
{fileName}
const response = await fetch( 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml?filter=GBT', { method: 'PUT', headers: { 'Authorization': 'Basic dXNlcm5hbWU6cGFzc3dvcmQ=', 'X-PciBooking-carduri': '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]', 'Content-Type': 'text/plain' }, body: fileContent // the file to upload, in the format named by the filter parameter });console.log(response.status);
import requestsresponse = requests.put( 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml', params={'filter': 'GBT'}, headers={ 'Authorization': 'Basic dXNlcm5hbWU6cGFzc3dvcmQ=', 'X-PciBooking-carduri': '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]', 'Content-Type': 'text/plain' }, data=file_content # the file to upload, in the format named by the filter parameter)print(response.status_code)
Empty response body.Authentication failed: the API key, session token or access token is missing or was not accepted.See "Authentication and Permission Failures" on the Error Handling page.
File Transfer Token Replacement Guide
Replace tokens with card data in SFTP file transfers
Performs token replacement on a file and uploads the result directly to an SFTP server. Use this when you need to send batch files containing card data to a payment processor or partner that accepts SFTP delivery. PCI Booking replaces all card tokens in the file body with the real card data before uploading.
Authorization token is missing or invalid. The response body is empty.
-125
400
Invalid host format (e.g. multiple colons in the server address).
-125
400
Invalid or missing Basic Auth credentials in the Authorization header.
-125
400
The requested filter name is not recognized.
-125
400
Token replacement could not be applied to the file content.
-125
400
At least one token in the file does not exist, was deleted, or is not accessible to you (Attempt to access non-existing Tokens). The response does not say which case applies.
Each condition below gives the exact moreInfo text, why it happens and how to resolve it. The full set is on the Error Handling page.
-125 Bad input data - profile not found
HTTP status:400message:Bad input datamoreInfo: the wording depends on which endpoint you called:
Couldn't fetch a valid screening profile:: <profileName>Couldn't fetch a valid pciShield profile:: <profileName>
The first is returned by token replacement in a request (paycard/relay). The second is returned by tokenization on response (paycard/capture). They mean the same thing.Reason. The profileName you passed could not be resolved for the account making the request. In almost every case the profile does exist, but on a different account than the one your credentials belong to. A misspelled profile name produces the same error.How to resolve.A PCI Shield profile belongs to the account, not to the sub-user that calls the API. When a sub-user makes a request, the profile is looked up against that sub-user’s parent account. A profile configured on one account is never visible to a sub-user of a different account, and sandbox and production accounts are separate.To check which profiles your credential can see:
Identify the parent account of the sub-user whose credentials you are using.
Sign in to the PCI Booking portal as that account and open PCI Shield Settings > PCI Shield Profile Settings.
Confirm the profile name appears there, spelled exactly as you send it. Profile names are matched exactly.
If the profile is listed under a different account, switch your request to a sub-user of that account rather than copying the profile.
There is no API endpoint that lists the profiles on your own account. GET /api/booker returns the platform-wide preset tokenization profiles, which are a different set. Your own profiles are visible in the portal only.
-125 Bad input data - card data could not be substituted
HTTP status:400message:Bad input datamoreInfo:
Replacement of content failedCould not apply token replacement onto content
Reason. The body parsed, but the profile’s selectors did not match anything in it, so no card data was substituted. The request was not relayed. This is a mismatch between the profile and the payload, not a problem with the token.How to resolve.
Compare the profile’s selectors against the exact payload you sent. A selector that assumes a different nesting depth or element name matches nothing.
Check the namespaces. For XML and SOAP, a selector written without namespace handling will not match a namespaced document.
Confirm the body is the format the profile was written for. A profile written for XML will not match a JSON body.
Test the profile against a saved copy of a real request before using it in production.
-175 Request timed out - third party did not respond in time
HTTP status:504message:Request timed outmoreInfo: not populated for this condition. The code and the endpoint are the only signal.Reason. PCI Booking relayed your request but the target server did not answer within the timeout. The failure is on the far side, not in PCI Booking. Card data may already have reached the third party, so the operation cannot be assumed not to have happened.How to resolve.
Check how long the third party takes to respond. The complete round trip must finish within 29 seconds, so raising timeout beyond that does not help. If the third party regularly needs longer, contact support@pcibooking.net for an alternative setup.
Confirm the target host is reachable and not rate limiting or blocking the call. PCI Booking calls the third party from its own addresses, which the third party may need to allow.
Do not blind retry a charge. Query the third party for the outcome first. A timeout is an unknown result, not a failure.
Access token or session token. This endpoint does not accept the API key. Generate a token with your API key and pass it as a query parameter. Send one of the two.
The sFTP server address. This can be an IP address or domain name. Add the port number with a colon if required. For example: fsgatewaytest.aexp.com:22 or 10.200.1.10.
Comma-separated token values to insert into the file. Tokens should be listed in the order of their appearance. For tokens appearing multiple times, include the number of occurrences in square brackets. Full token URIs or bare 32-character token IDs are both accepted. If fewer tokens are listed than there are card locations in the file, the last token is repeated for all remaining locations.
The request body contains the raw file content as text, in the format named by the filter parameter. The preset filter determines where card data belongs in that format; PCI Booking inserts the card details of the tokens listed in X-PciBooking-carduri, in order, then uploads the result to the sFTP server.
const response = await fetch( 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml?filter=GBT', { method: 'PUT', headers: { 'Authorization': 'Basic dXNlcm5hbWU6cGFzc3dvcmQ=', 'X-PciBooking-carduri': '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]', 'Content-Type': 'text/plain' }, body: fileContent // the file to upload, in the format named by the filter parameter });console.log(response.status);
import requestsresponse = requests.put( 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml', params={'filter': 'GBT'}, headers={ 'Authorization': 'Basic dXNlcm5hbWU6cGFzc3dvcmQ=', 'X-PciBooking-carduri': '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]', 'Content-Type': 'text/plain' }, data=file_content # the file to upload, in the format named by the filter parameter)print(response.status_code)
Empty response body.Authentication failed: the API key, session token or access token is missing or was not accepted.See "Authentication and Permission Failures" on the Error Handling page.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"PCI Booking","description":"PCI Booking developer documentation","colors":{"primary":"#333333","light":"#fdb913","dark":"#333333"},"logo":{"light":"https://mintcdn.com/pcibooking/pMOWAlxYaLwyZe8N/logo/light.png?fit=max\u0026auto=format\u0026n=pMOWAlxYaLwyZe8N\u0026q=85\u0026s=05d07ed84fd562e4e5546e37f9891791","dark":"https://mintcdn.com/pcibooking/pMOWAlxYaLwyZe8N/logo/dark.png?fit=max\u0026auto=format\u0026n=pMOWAlxYaLwyZe8N\u0026q=85\u0026s=ff2f5c1a9a50078122add6cfe988e7e6"},"favicon":"https://mintcdn.com/pcibooking/pMOWAlxYaLwyZe8N/favicon.png?fit=max\u0026auto=format\u0026n=pMOWAlxYaLwyZe8N\u0026q=85\u0026s=68a2fe8e8c34b1602641223b67d76982","api":{"mdx":{"auth":{"method":"key","name":"Authorization"},"server":"https://service.pcibooking.net"}},"navbar":{"links":[{"href":"https://pcibooking.net","label":"Home"},{"href":"https://pcibooking.net/pci-booking-support/","label":"Support"},{"href":"/reference/glossary","label":"Glossary"}],"primary":{"type":"button","label":"Get a Sandbox","href":"https://pcibooking.net/sandbox/"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/pci-booking"}},"seo":{"indexing":"navigable"},"contextual":{"options":["copy","view","chatgpt","claude","cursor","vscode","mcp"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Support","icon":"envelope","href":"https://pcibooking.net/contact"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"pcibooking","hasAudioNarration":false,"actualSubdomain":"pcibooking","customDomains":["developers.pcibooking.net"],"gitSource":{"type":"github","owner":"pci-booking","repo":"documentation","deployBranch":"migrate-from-readme","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ad97c97a2da3c7e08a20d49","collectionId":"1b853082-5d09-4ac3-b1c0-eb679f681f76","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad97c97a2da3c7e08a20d49"},"entitlements":{},"buildId":"6ad97c97a2da3c7e08a20d49","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"Guides","count":95},{"language":"default","tag":"API Reference","count":87},{"language":"default","tag":"Capture Cards","count":35},{"language":"default","tag":"Manage Tokens","count":29},{"language":"default","tag":"Use Tokens","count":27},{"language":"default","tag":"Additional Functions","count":22},{"language":"default","tag":"Account Configuration","count":21},{"language":"default","tag":"Reference","count":12},{"language":"default","tag":"Query \u0026 Update","count":11},{"language":"default","tag":"Use Cases","count":11}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"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":[],"page":{"pagePath":"api-reference/process-cards/token-replacement-sftp","slug":"/api-reference/process-cards/token-replacement-sftp","pageMetadata":{"title":"Token Replacement to sFTP","description":"Replace card tokens in a document and upload the result to an sFTP server.","api":"PUT https://service.pcibooking.net/api/sftp/{serverAddress}/{folderPath}/{fileName}","href":"/api-reference/process-cards/token-replacement-sftp"},"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: \"Replace card tokens in a document and upload the result to an sFTP server.\"\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`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Card,CodeBlock,Heading,Note,ParamField,Table}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Card)_missingMdxReference(`Card`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(Card,{title:`File Transfer Token Replacement Guide`,icon:`book`,href:`/use-tokens/file-transfer-token-replacement`,children:_jsx(_components.p,{children:`Replace tokens with card data in SFTP file transfers`})}),`\n`,_jsx(_components.p,{children:`Performs token replacement on a file and uploads the result directly to an SFTP server. Use this when you need to send batch files containing card data to a payment processor or partner that accepts SFTP delivery. PCI Booking replaces all card tokens in the file body with the real card data before uploading.`}),`\n`,_jsx(Heading,{level:`2`,id:`error-responses`,children:`Error Responses`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{children:`HTTP Status`}),_jsx(_components.th,{children:`Condition`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`none`}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`401`})}),_jsx(_components.td,{children:`Authorization token is missing or invalid. The response body is empty.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`-125`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`Invalid host format (e.g. multiple colons in the server address).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`-125`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`Invalid or missing Basic Auth credentials in the Authorization header.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`-125`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`The requested filter name is not recognized.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`-125`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsx(_components.td,{children:`Token replacement could not be applied to the file content.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`-125`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`400`})}),_jsxs(_components.td,{children:[`At least one token in the file does not exist, was deleted, or is not accessible to you (`,_jsx(_components.code,{children:`Attempt to access non-existing Tokens`}),`). The response does not say which case applies.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`-1003`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`401`})}),_jsx(_components.td,{children:`SFTP login failed (invalid server credentials).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`-160`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`404`})}),_jsx(_components.td,{children:`File upload failed on the remote server.`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`error-detail`,children:`Error detail`}),`\n`,_jsxs(_components.p,{children:[`Each condition below gives the exact `,_jsx(_components.code,{children:`moreInfo`}),` text, why it happens and how to resolve it. The full set is on the `,_jsx(_components.a,{href:`/reference/error-handling`,children:`Error Handling`}),` page.`]}),`\n`,_jsxs(AccordionGroup,{children:[_jsxs(Accordion,{title:`-125 Bad input data - profile not found`,id:`125-bad-input-data-profile-not-found`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`HTTP status:`}),` `,_jsx(_components.code,{children:`400`})]}),_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`message`}),`:`]}),` `,_jsx(_components.code,{children:`Bad input data`})]}),_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`moreInfo`}),`:`]}),` the wording depends on which endpoint you called:`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`text`,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:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Couldn't fetch a valid screening profile:: \u003cprofileName>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Couldn't fetch a valid pciShield profile:: \u003cprofileName>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsxs(_components.p,{children:[`The first is returned by token replacement in a request (`,_jsx(_components.code,{children:`paycard/relay`}),`). The second is returned by tokenization on response (`,_jsx(_components.code,{children:`paycard/capture`}),`). They mean the same thing.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Reason.`}),` The `,_jsx(_components.code,{children:`profileName`}),` you passed could not be resolved for the account making the request. In almost every case the profile does exist, but on a different account than the one your credentials belong to. A misspelled profile name produces the same error.`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`How to resolve.`})}),_jsxs(_components.p,{children:[`A PCI Shield profile belongs to the `,_jsx(_components.strong,{children:`account`}),`, not to the sub-user that calls the API. When a sub-user makes a request, the profile is looked up against that sub-user’s parent account. A profile configured on one account is never visible to a sub-user of a different account, and sandbox and production accounts are separate.`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`To check which profiles your credential can see:`})}),_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Identify the parent account of the sub-user whose credentials you are using.`}),`\n`,_jsxs(_components.li,{children:[`Sign in to the `,_jsx(_components.a,{href:`https://users.pcibooking.net`,children:`PCI Booking portal`}),` as that account and open `,_jsx(_components.strong,{children:`PCI Shield Settings`}),` > `,_jsx(_components.strong,{children:`PCI Shield Profile Settings`}),`.`]}),`\n`,_jsx(_components.li,{children:`Confirm the profile name appears there, spelled exactly as you send it. Profile names are matched exactly.`}),`\n`,_jsx(_components.li,{children:`If the profile is listed under a different account, switch your request to a sub-user of that account rather than copying the profile.`}),`\n`]}),_jsx(Note,{children:_jsxs(_components.p,{children:[`There is no API endpoint that lists the profiles on your own account. `,_jsx(_components.code,{children:`GET /api/booker`}),` returns the platform-wide preset tokenization profiles, which are a different set. Your own profiles are visible in the portal only.`]})}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`See also:`}),` `,_jsx(_components.a,{href:`/account-setup/content-filters`,children:`Content Filters`}),`, `,_jsx(_components.a,{href:`/account-setup/target-profiles`,children:`Target Profiles`})]})]}),_jsxs(Accordion,{title:`-125 Bad input data - card data could not be substituted`,id:`125-bad-input-data-card-data-could-not-be-substituted`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`HTTP status:`}),` `,_jsx(_components.code,{children:`400`})]}),_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`message`}),`:`]}),` `,_jsx(_components.code,{children:`Bad input data`})]}),_jsx(_components.p,{children:_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`moreInfo`}),`:`]})}),_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`text`,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:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Replacement of content failed`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Could not apply token replacement onto content`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Reason.`}),` The body parsed, but the profile’s selectors did not match anything in it, so no card data was substituted. The request was not relayed. This is a mismatch between the profile and the payload, not a problem with the token.`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`How to resolve.`})}),_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Compare the profile’s selectors against the exact payload you sent. A selector that assumes a different nesting depth or element name matches nothing.`}),`\n`,_jsx(_components.li,{children:`Check the namespaces. For XML and SOAP, a selector written without namespace handling will not match a namespaced document.`}),`\n`,_jsx(_components.li,{children:`Confirm the body is the format the profile was written for. A profile written for XML will not match a JSON body.`}),`\n`,_jsx(_components.li,{children:`Test the profile against a saved copy of a real request before using it in production.`}),`\n`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`See also:`}),` `,_jsx(_components.a,{href:`/account-setup/content-filters`,children:`Content Filters`})]})]}),_jsxs(Accordion,{title:`-175 Request timed out - third party did not respond in time`,id:`175-request-timed-out-third-party-did-not-respond-in-time`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`HTTP status:`}),` `,_jsx(_components.code,{children:`504`})]}),_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`message`}),`:`]}),` `,_jsx(_components.code,{children:`Request timed out`})]}),_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`moreInfo`}),`:`]}),` not populated for this condition. The code and the endpoint are the only signal.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Reason.`}),` PCI Booking relayed your request but the target server did not answer within the timeout. The failure is on the far side, not in PCI Booking. Card data may already have reached the third party, so the operation cannot be assumed not to have happened.`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`How to resolve.`})}),_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Check how long the third party takes to respond. The complete round trip must finish within 29 seconds, so raising `,_jsx(_components.code,{children:`timeout`}),` beyond that does not help. If the third party regularly needs longer, contact `,_jsx(_components.a,{href:`mailto:support@pcibooking.net`,children:`support@pcibooking.net`}),` for an alternative setup.`]}),`\n`,_jsx(_components.li,{children:`Confirm the target host is reachable and not rate limiting or blocking the call. PCI Booking calls the third party from its own addresses, which the third party may need to allow.`}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Do not blind retry a charge.`}),` Query the third party for the outcome first. A timeout is an unknown result, not a failure.`]}),`\n`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`See also:`}),` `,_jsx(_components.a,{href:`/reference/outbound-ips`,children:`Outbound IPs`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`parameter-constraints`,children:`Parameter Constraints`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`serverAddress`}),`: Format is `,_jsx(_components.code,{children:`hostname`}),` or `,_jsx(_components.code,{children:`hostname:port`}),`. Only one colon is allowed. Default port is 22.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`filter`}),`: Must be one of: `,_jsx(_components.code,{children:`GBT`}),`, `,_jsx(_components.code,{children:`SIMPLECSV`}),`, `,_jsx(_components.code,{children:`SIMPLEJSON`}),`, `,_jsx(_components.code,{children:`AIR`}),`, `,_jsx(_components.code,{children:`IUR`}),`, `,_jsx(_components.code,{children:`TADC`}),`, `,_jsx(_components.code,{children:`CSV`}),`. Case-insensitive.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Authorization header`}),`: Must contain valid Basic Auth credentials (`,_jsx(_components.code,{children:`username:password`}),`) for the SFTP server.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`parameters`,children:`Parameters`}),`\n`,_jsx(Heading,{level:`3`,id:`authentication`,children:`Authentication`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Access token or session token.`}),` This endpoint does not accept the API key. Generate a token with your API key and pass it as a query parameter. Send one of the two.`]}),`\n`,_jsx(ParamField,{query:`accessToken`,type:`string`,id:`param-access-token`,children:_jsxs(_components.p,{children:[`Generated on your side. Single use, and valid for up to 72 hours. `,_jsx(_components.a,{href:`/getting-started/authentication#access-token`,children:`How to generate`}),`.`]})}),`\n`,_jsx(ParamField,{query:`sessionToken`,type:`string`,id:`param-session-token`,children:_jsxs(_components.p,{children:[`Returned by an API call. Valid for 5 minutes, and can be used more than once within that time. `,_jsx(_components.a,{href:`/api-reference/general/start-temporary-session`,children:`How to generate`}),`.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`path-parameters`,children:`Path Parameters`}),`\n`,_jsx(ParamField,{path:`serverAddress`,type:`string`,required:true,id:`param-server-address`,children:_jsxs(_components.p,{children:[`The sFTP server address. This can be an IP address or domain name. Add the port number with a colon if required. For example: `,_jsx(_components.code,{children:`fsgatewaytest.aexp.com:22`}),` or `,_jsx(_components.code,{children:`10.200.1.10`}),`.`]})}),`\n`,_jsx(ParamField,{path:`folderPath`,type:`string`,required:true,id:`param-folder-path`,children:_jsx(_components.p,{children:`The folder path where the file should be uploaded to. This can be an individual folder or a full path.`})}),`\n`,_jsx(ParamField,{path:`fileName`,type:`string`,required:true,id:`param-file-name`,children:_jsxs(_components.p,{children:[`The file name for the content being uploaded, including extension. For example: `,_jsx(_components.code,{children:`PCIBTST.xml`}),`.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`query-string`,children:`Query String`}),`\n`,_jsx(ParamField,{query:`filter`,type:`string`,required:true,id:`param-filter`,children:_jsxs(_components.p,{children:[`Indicates the format of the file being sent. Read more on `,_jsx(_components.a,{href:`/reference/api-conventions`,children:`Supported Formats`}),`.`]})}),`\n`,_jsx(ParamField,{query:`timeout`,type:`string`,id:`param-timeout`,children:_jsx(_components.p,{children:`The timeout, in seconds, for the sFTP server to respond.`})}),`\n`,_jsx(Heading,{level:`3`,id:`headers`,children:`Headers`}),`\n`,_jsx(ParamField,{header:`X-PciBooking-carduri`,type:`string`,required:true,id:`param-x-pci-booking-carduri`,children:_jsx(_components.p,{children:`Comma-separated token values to insert into the file. Tokens should be listed in the order of their appearance. For tokens appearing multiple times, include the number of occurrences in square brackets. Full token URIs or bare 32-character token IDs are both accepted. If fewer tokens are listed than there are card locations in the file, the last token is repeated for all remaining locations.`})}),`\n`,_jsx(ParamField,{header:`Authorization`,type:`string`,required:true,id:`param-authorization`,children:_jsx(_components.p,{children:`The authorization parameter used to authenticate to the sFTP server.`})}),`\n`,_jsx(ParamField,{header:`Content-Encoding`,type:`string`,id:`param-content-encoding`,children:_jsxs(_components.p,{children:[`Supported compression formats: `,_jsx(_components.code,{children:`gzip`}),` and `,_jsx(_components.code,{children:`deflate`}),`. Omit this header if no compression is needed.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`request-body`,children:`Request Body`}),`\n`,_jsxs(_components.p,{children:[`The request body contains the raw file content as text, in the format named by the `,_jsx(_components.code,{children:`filter`}),` parameter. The preset filter determines where card data belongs in that format; PCI Booking inserts the card details of the tokens listed in `,_jsx(_components.code,{children:`X-PciBooking-carduri`}),`, in order, then uploads the result to the sFTP server.`]}),`\n`,`\n`,_jsx(Heading,{level:`2`,id:`response`,children:`Response`})]})}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":"Token Replacement to sFTP","description":"Replace card tokens in a document and upload the result to an sFTP server.","api":"PUT https://service.pcibooking.net/api/sftp/{serverAddress}/{folderPath}/{fileName}","href":"/api-reference/process-cards/token-replacement-sftp"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[429,438,"RequestExample,ResponseExample,Table}=_c"],[811,823,"RequestExample)_missingMdxReference(`RequestExample`,true);if(!ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!Table)_missi"],[18611,19102,"_jsxs(RequestExample,{children:[_jsx(CodeBlock,{filename:`Node.js`,numberOfLines:`14`,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:`14`,children:[_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:` response`}),_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:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` fetch`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml?filter=GBT'`}),_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`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` method:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'PUT'`}),_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:` headers:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Authorization'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Basic dXNlcm5hbWU6cGFzc3dvcmQ='`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'X-PciBooking-carduri'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Content-Type'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'text/plain'`})]}),`\n`,_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:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` body:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` fileContent`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // the file to upload, in the format named by the filter parameter`})]}),`\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:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`response`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`status`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`Python`,numberOfLines:`14`,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:`14`,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:` requests`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\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:` requests.put(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml'`}),_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:` params`}),_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:`'filter'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'GBT'`}),_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:` headers`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Authorization'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'Basic dXNlcm5hbWU6cGFzc3dvcmQ='`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'X-PciBooking-carduri'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Content-Type'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'text/plain'`})]}),`\n`,_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:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` data`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`file_content `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# the file to upload, in the format named by the filter parameter`})]}),`\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:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(response.status_code)`})]}),`\n`]})})})]}),`\n`,_jsx(Heading,{level:`2`,id:`response`,children:`Response`}),`\n`,_jsxs(ResponseExample,{children:[_jsx(CodeBlock,{filename:`204`,numberOfLines:`2`,language:`text`,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:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`File uploaded successfully. No content returned.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(CodeBlock,{filename:`400`,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:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`-125`}),_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:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Bad input data\"`}),_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:` \"moreInfo\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},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:` \"errorList\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`401`,numberOfLines:`4`,language:`text`,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:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Empty response body.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Authentication failed: the API key, session token or access token is missing or was not accepted.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`See \"Authentication and Permission Failures\" on the Error Handling page.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]})]})}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.\")}"]]},"mdxExtracts":{"tableOfContents":[{"title":"Error Responses","slug":"error-responses","depth":2,"children":[{"title":"Error detail","slug":"error-detail","depth":3,"children":[]}]},{"title":"Parameter Constraints","slug":"parameter-constraints","depth":2,"children":[]},{"title":"Parameters","slug":"parameters","depth":2,"children":[{"title":"Authentication","slug":"authentication","depth":3,"children":[]},{"title":"Path Parameters","slug":"path-parameters","depth":3,"children":[]},{"title":"Query String","slug":"query-string","depth":3,"children":[]},{"title":"Headers","slug":"headers","depth":3,"children":[]},{"title":"Request Body","slug":"request-body","depth":3,"children":[]}]},{"title":"Response","slug":"response","depth":2,"children":[]}],"codeExamples":{"request":{"type":"RequestExample","children":[{"filename":"Node.js","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"javascript\">\u003ccode language=\"javascript\" numberOfLines=\"14\">\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#569CD6\">const\u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#4FC1FF\"> response\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\"> =\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\"> await\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\"> fetch\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml?filter=GBT'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> method:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'PUT'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> headers:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Authorization'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Basic dXNlcm5hbWU6cGFzc3dvcmQ='\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'X-PciBooking-carduri'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> '555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Content-Type'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">:\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'text/plain'\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> body:\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\"> fileContent\u003c/span>\u003cspan style=\"color:#6E7781;--shiki-dark:#6A9955\"> // the file to upload, in the format named by the filter parameter\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">);\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">console\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#8250DF;--shiki-dark:#DCDCAA\">log\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">response\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">.\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">status\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">);\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Python","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"python\">\u003ccode language=\"python\" numberOfLines=\"14\">\u003cspan class=\"line\">\u003cspan style=\"color:#CF222E;--shiki-dark:#C586C0\">import\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> requests\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">response \u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> requests.put(\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'https://service.pcibooking.net/api/sftp/sftp.gateway.com:22/uploads/batch/PCIBTST.xml'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\"> params\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">'filter'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">'GBT'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">},\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\"> headers\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Authorization'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">'Basic dXNlcm5hbWU6cGFzc3dvcmQ='\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'X-PciBooking-carduri'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">'555fd7b49f134b42a5dbe4d576b2e527,1d12f1d2b51f489f811d4f4176fde5f2[2]'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> 'Content-Type'\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">'text/plain'\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#9CDCFE\"> data\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D4D4D4\">=\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">file_content \u003c/span>\u003cspan style=\"color:#6E7781;--shiki-dark:#6A9955\"># the file to upload, in the format named by the filter parameter\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">)\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#DCDCAA\">print\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">(response.status_code)\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]},"response":{"type":"ResponseExample","children":[{"filename":"204","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"text\">\u003ccode language=\"text\" numberOfLines=\"2\">\u003cspan class=\"line\">\u003cspan>File uploaded successfully. No content returned.\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan>\u003c/span>\u003c/span>\u003c/code>\u003c/pre>"},{"filename":"400","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"6\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">-125\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"message\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Bad input data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"moreInfo\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"...\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"errorList\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"401","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"text\">\u003ccode language=\"text\" numberOfLines=\"4\">\u003cspan class=\"line\">\u003cspan>Empty response body.\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan>Authentication failed: the API key, session token or access token is missing or was not accepted.\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan>See \"Authentication and Permission Failures\" on the Error Handling page.\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan>\u003c/span>\u003c/span>\u003c/code>\u003c/pre>"}],"attributes":[]}},"endpoint":{"title":"Token Replacement to sFTP","path":"/api/sftp/{serverAddress}/{folderPath}/{fileName}","servers":[{"url":"https://service.pcibooking.net"}],"method":"put","request":{"security":[{"title":"API Key Auth","parameters":{"header":{"Authorization":{"type":"apiKey"}},"query":{},"cookie":{}}}],"parameters":{"query":{"accessToken":{"schema":[{"type":"string","description":"Generated on your side. Single use, and valid for up to 72 hours. How to generate ."}]},"sessionToken":{"schema":[{"type":"string","description":"Returned by an API call. Valid for 5 minutes, and can be used more than once within that time. How to generate ."}]},"filter":{"schema":[{"type":"string","description":"Indicates the format of the file being sent. Read more on Supported Formats .","required":true}]},"timeout":{"schema":[{"type":"string","description":"The timeout, in seconds, for the sFTP server to respond."}]}},"header":{"X-PciBooking-carduri":{"schema":[{"type":"string","description":"Comma-separated token values to insert into the file. Tokens should be listed in the order of their appearance. For tokens appearing multiple times, include the number of occurrences in square brackets. Full token URIs or bare 32-character token IDs are both accepted. If fewer tokens are listed than there are card locations in the file, the last token is repeated for all remaining locations.","required":true}]},"Authorization":{"schema":[{"type":"string","description":"The authorization parameter used to authenticate to the sFTP server.","required":true}]},"Content-Encoding":{"schema":[{"type":"string","description":"Supported compression formats: `gzip` and `deflate` . Omit this header if no compression is needed."}]}},"cookie":{},"path":{"serverAddress":{"schema":[{"type":"string","description":"The sFTP server address. This can be an IP address or domain name. Add the port number with a colon if required. For example: `fsgatewaytest.aexp.com:22` or `10.200.1.10` .","required":true}]},"folderPath":{"schema":[{"type":"string","description":"The folder path where the file should be uploaded to. This can be an individual folder or a full path.","required":true}]},"fileName":{"schema":[{"type":"string","description":"The file name for the content being uploaded, including extension. For example: `PCIBTST.xml` .","required":true}]}}},"body":{}},"response":{},"deprecated":false}},"jsLinks":[],"subdomain":"pcibooking","siteName":"PCI Booking","title":"Token Replacement to sFTP - PCI Booking","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-29T22:34:24.403Z","originalFileLocation":"api-reference/process-cards/token-replacement-sftp.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=\"Replace card tokens in a document and upload the result to an sFTP server.\">\u003cmeta data-mint-head name=\"application-name\" content=\"PCI Booking\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/pcibooking/Vkc1dlug5ZWqlaAq/_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/pcibooking/Vkc1dlug5ZWqlaAq/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pcibooking/Vkc1dlug5ZWqlaAq/_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/pcibooking/Vkc1dlug5ZWqlaAq/_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/pcibooking/Vkc1dlug5ZWqlaAq/_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/pcibooking/Vkc1dlug5ZWqlaAq/_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/pcibooking/Vkc1dlug5ZWqlaAq/_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/pcibooking/Vkc1dlug5ZWqlaAq/_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/pcibooking/Vkc1dlug5ZWqlaAq/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Token Replacement to sFTP - PCI Booking\">\u003cmeta data-mint-head property=\"og:description\" content=\"Replace card tokens in a document and upload the result to an sFTP server.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"PCI Booking\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://pcibooking.mintlify.app/_mintlify/api/og/v2?division=Token+Replacement\u0026amp;title=Token+Replacement+to+sFTP\u0026amp;description=Replace+card+tokens+in+a+document+and+upload+the+result+to+an+sFTP+server.\u0026amp;theme=e6d7a314e297f3571cc8537d\u0026amp;signature=573c2613e4992a400115f0e80f651cbf550fcf51cd739b348876d3a90d68006d\">\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=\"Token Replacement to sFTP - PCI Booking\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Replace card tokens in a document and upload the result to an sFTP server.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://pcibooking.mintlify.app/_mintlify/api/og/v2?division=Token+Replacement\u0026amp;title=Token+Replacement+to+sFTP\u0026amp;description=Replace+card+tokens+in+a+document+and+upload+the+result+to+an+sFTP+server.\u0026amp;theme=e6d7a314e297f3571cc8537d\u0026amp;signature=573c2613e4992a400115f0e80f651cbf550fcf51cd739b348876d3a90d68006d\">\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/pcibooking/Vkc1dlug5ZWqlaAq/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"PCI Booking\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#333333\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/process-cards/token-replacement-sftp.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developers.pcibooking.net/#organization\",\"name\":\"PCI Booking\",\"url\":\"https://developers.pcibooking.net\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/pcibooking/pMOWAlxYaLwyZe8N/logo/light.png?fit=max\u0026auto=format\u0026n=pMOWAlxYaLwyZe8N\u0026q=85\u0026s=05d07ed84fd562e4e5546e37f9891791\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developers.pcibooking.net#website\",\"name\":\"PCI Booking\",\"url\":\"https://developers.pcibooking.net\",\"publisher\":{\"@id\":\"https://developers.pcibooking.net/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp#webpage\",\"url\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp\",\"name\":\"Token Replacement to sFTP\",\"description\":\"Replace card tokens in a document and upload the result to an sFTP server.\",\"dateModified\":\"2026-09-29T22:34:24.403Z\",\"isPartOf\":{\"@id\":\"https://developers.pcibooking.net#website\"},\"breadcrumb\":{\"@id\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Use Tokens\",\"item\":\"https://developers.pcibooking.net/api-reference/process-cards/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Token Replacement\",\"item\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Token Replacement to sFTP\",\"item\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp#apireference\",\"headline\":\"Token Replacement to sFTP\",\"name\":\"Token Replacement to sFTP\",\"description\":\"Replace card tokens in a document and upload the result to an sFTP server.\",\"url\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp\",\"mainEntityOfPage\":{\"@id\":\"https://developers.pcibooking.net/api-reference/process-cards/token-replacement-sftp#webpage\"},\"dateModified\":\"2026-09-29T22:34:24.403Z\",\"publisher\":{\"@id\":\"https://developers.pcibooking.net/#organization\"},\"isPartOf\":{\"@id\":\"https://developers.pcibooking.net#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"PCI Booking\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"PCI Booking","nav":{"global":{"anchors":[{"anchor":"Support","icon":"envelope","href":"https://pcibooking.net/contact"}]},"tabs":[{"tab":"Guides","icon":"book","pages":[{"title":"Guides","href":"/start-here/introduction"}]},{"tab":"Use Cases","icon":"route","pages":[{"title":"Use Cases","href":"/use-cases/how-do-i"}]},{"tab":"API Reference","icon":"code","groups":[{"group":"Start Here","pages":[{"title":"API Reference Overview","sidebarTitle":"Overview","href":"/api-reference/overview"}]},{"group":"Authentication \u0026 General","pages":[{"group":"Authentication","pages":[{"title":"Authenticate API Key","api":"POST https://service.pcibooking.net/api/accounts/authenticate/","href":"/api-reference/general/authenticate"},{"title":"Start a Temporary Session","api":"POST https://service.pcibooking.net/api/payments/paycard/tempsession","href":"/api-reference/general/start-temporary-session"}]},{"title":"Get Supported Credit Cards","api":"GET https://service.pcibooking.net/api/payments/paycard/supportedCards","href":"/api-reference/general/get-supported-cards"},{"group":"CSS Stylesheets","pages":[{"title":"Add or update CSS","api":"PUT https://service.pcibooking.net/api/resources/stylesheet/{ResourceName}","href":"/api-reference/general/add-update-css"},{"title":"List All CSS Records","api":"GET https://service.pcibooking.net/api/resources/stylesheet","href":"/api-reference/general/list-css-records"},{"title":"Retrieve CSS Record","api":"GET https://service.pcibooking.net/api/resources/stylesheet/{ResourceName}","href":"/api-reference/general/retrieve-css-record"},{"title":"Delete CSS Record","api":"DELETE https://service.pcibooking.net/api/resources/stylesheet/{ResourceName}","href":"/api-reference/general/delete-css-record"}]}]},{"group":"Capture Cards","pages":[{"title":"Capture Cards API Reference","href":"/api-reference/tokenize-cards/overview"},{"title":"Request a Card Entry Form","api":"GET https://service.pcibooking.net/api/payments/capturecard","href":"/api-reference/tokenize-cards/request-card-entry-form"},{"group":"Session-Based Card Entry Form","pages":[{"title":"Create Card Entry Form Session","api":"POST https://service.pcibooking.net/api/capturecard","href":"/api-reference/tokenize-cards/create-card-entry-form-session"},{"title":"Retrieve Card Entry Session Details","api":"GET https://service.pcibooking.net/api/capturecard/{RequestID}","href":"/api-reference/tokenize-cards/retrieve-card-entry-session"},{"title":"Delete Card Entry Form","api":"DELETE https://service.pcibooking.net/api/capturecard/{RequestID}","href":"/api-reference/tokenize-cards/delete-card-entry-form"},{"title":"Card Entry Form Webhook","sidebarTitle":"Webhook","href":"/api-reference/tokenize-cards/card-entry-form-callback"}]},{"group":"Card By Link","pages":[{"title":"Send Card Capture Link","sidebarTitle":"Send Card Capture Link","api":"POST https://service.pcibooking.net/api/cardrequest","href":"/api-reference/tokenize-cards/cotp-send-card-form"},{"title":"Send CVV Capture Link","sidebarTitle":"Send CVV Capture Link","api":"POST https://service.pcibooking.net/api/cardrequest/duplicate","href":"/api-reference/tokenize-cards/cotp-send-cvv-form"},{"title":"Retrieve Card By Link Request","sidebarTitle":"Retrieve Request","api":"GET https://service.pcibooking.net/api/cardrequest/{requestID}","href":"/api-reference/tokenize-cards/cotp-retrieve-request"},{"title":"Card By Link Webhook","sidebarTitle":"Webhook","href":"/api-reference/tokenize-cards/cotp-callback"},{"title":"Delete Card By Link Request","sidebarTitle":"Delete Request","api":"DELETE https://service.pcibooking.net/api/cardrequest/{requestID}","href":"/api-reference/tokenize-cards/cotp-delete-request"}]},{"group":"Server-Side Tokenization","pages":[{"title":"Tokenization in Response","api":"POST https://service.pcibooking.net/api/payments/paycard/capture","href":"/api-reference/tokenize-cards/tokenization-in-response"},{"title":"Tokenize on Response Using Preset Profiles","api":"POST https://service.pcibooking.net/api/booker/{ProfileName}/reservation","href":"/api-reference/tokenize-cards/tokenize-on-response-using-preset-profiles"},{"title":"Get Tokenization Profiles","api":"GET https://service.pcibooking.net/api/booker","href":"/api-reference/tokenize-cards/get-tokenization-profiles"},{"title":"Tokenize from sFTP","api":"GET https://service.pcibooking.net/api/sftp/{serverAddress}/{folderPath}/{fileName}","href":"/api-reference/tokenize-cards/tokenize-from-sftp"}]},{"title":"Store Paycard (Card Migration)","api":"POST https://service.pcibooking.net/api/payments/paycard","href":"/api-reference/tokenize-cards/store-paycard"},{"title":"Request a Card Security Code Entry Form","sidebarTitle":"CVV Entry Form","api":"GET https://service.pcibooking.net/api/payments/cvvcapturecard","href":"/api-reference/manage-tokens/request-cvv-entry-form"},{"group":"Virtual Card Issuance","pages":[{"title":"List Virtual Card Providers","api":"GET https://service.pcibooking.net/api/VirtualCard","href":"/api-reference/tokenize-cards/list-virtual-card-providers"},{"title":"Get Virtual Card Provider","api":"GET https://service.pcibooking.net/api/VirtualCard/{name}","href":"/api-reference/tokenize-cards/get-virtual-card-provider"},{"title":"Retrieve VCP Credential Structure","sidebarTitle":"Retrieve Credential Structure","api":"GET https://service.pcibooking.net/api/credentials/virtualCardProvider/{name}","href":"/api-reference/tokenize-cards/retrieve-vcp-credential-structure"},{"title":"Issue Virtual Card","api":"POST https://service.pcibooking.net/api/VirtualCard","href":"/api-reference/tokenize-cards/issue-virtual-card"}]}]},{"group":"Manage Tokens","pages":[{"title":"Manage Tokens API Reference","href":"/api-reference/manage-tokens/overview"},{"group":"Query \u0026 Update","pages":[{"title":"Query Tokens","api":"GET https://service.pcibooking.net/api/payments/paycard/meta","href":"/api-reference/manage-tokens/query-tokens"},{"title":"Retrieve Token Metadata","sidebarTitle":"Retrieve Metadata","api":"GET https://service.pcibooking.net/api/payments/paycard/{cardtoken}/meta","href":"/api-reference/manage-tokens/retrieve-token-metadata"},{"title":"Update Card Expiration Date","sidebarTitle":"Update Expiration","api":"PUT https://service.pcibooking.net/api/payments/paycard/{cardToken}/UpdateExpiration","href":"/api-reference/manage-tokens/update-expiration"},{"title":"Update Creator Reference","api":"PUT https://service.pcibooking.net/api/payments/paycard/{token}/creatorReference/{creatorReference}","href":"/api-reference/manage-tokens/update-creator-reference"},{"title":"Delete Creator Reference","api":"DELETE https://service.pcibooking.net/api/payments/paycard/{token}/creatorReference","href":"/api-reference/manage-tokens/delete-creator-reference"},{"title":"Transfer Ownership","api":"PUT https://service.pcibooking.net/api/payments/paycard/{cardToken}/externalUser/{AltCustomer}","href":"/api-reference/manage-tokens/transfer-ownership"},{"title":"Duplicate Token","api":"POST https://service.pcibooking.net/api/payments/paycard/duplicate","href":"/api-reference/manage-tokens/duplicate-token"},{"title":"Delete Token","api":"DELETE https://service.pcibooking.net/api/payments/paycard/{cardToken}","href":"/api-reference/manage-tokens/delete-token"}]},{"group":"CVV Management","pages":[{"title":"Clear CVV","api":"POST https://service.pcibooking.net/api/payments/paycard/{cardToken}/op/clearcvv","href":"/api-reference/manage-tokens/clear-cvv"},{"title":"Set CVV Retention Policy","api":"PUT https://service.pcibooking.net/api/payments/paycard/{cardToken}/cvv/Restriction","href":"/api-reference/manage-tokens/set-cvv-retention-policy"},{"title":"Get CVV Retention Policy","api":"GET https://service.pcibooking.net/api/payments/paycard/{cardToken}/cvv/Restriction","href":"/api-reference/manage-tokens/get-cvv-retention-policy"},{"title":"Get CVV Retention Policy for Specific Destination","sidebarTitle":"Get Policy (Specific)","api":"GET https://service.pcibooking.net/api/payments/paycard/{cardToken}/cvv/Restriction/{DestinationType}/{DestinationData}","href":"/api-reference/manage-tokens/get-cvv-retention-policy-specific"},{"title":"Delete CVV Retention Policy","api":"DELETE https://service.pcibooking.net/api/payments/paycard/{cardToken}/cvv/Restriction","href":"/api-reference/manage-tokens/delete-cvv-retention-policy"},{"title":"Delete CVV Retention Policy by Destination Type","sidebarTitle":"Delete Policy (Type)","api":"DELETE https://service.pcibooking.net/api/payments/paycard/{cardToken}/cvv/Restriction/{DestinationType}","href":"/api-reference/manage-tokens/delete-cvv-retention-policy-type"},{"title":"Delete CVV Retention Policy by Destination","sidebarTitle":"Delete Policy (Destination)","api":"DELETE https://service.pcibooking.net/api/payments/paycard/{cardToken}/cvv/Restriction/{DestinationType}/{DestinationData}","href":"/api-reference/manage-tokens/delete-cvv-retention-policy-type-data"}]},{"group":"3D Secure","pages":[{"title":"Store 3D Secure Data","api":"PUT https://service.pcibooking.net/api/payments/paycard/{cardToken}/3dToken","href":"/api-reference/manage-tokens/store-3d-token"},{"title":"Retrieve 3D Secure Data","api":"GET https://service.pcibooking.net/api/payments/paycard/{cardToken}/3dToken","href":"/api-reference/manage-tokens/retrieve-3d-token"},{"title":"Delete 3D Secure Data","api":"DELETE https://service.pcibooking.net/api/payments/paycard/{cardToken}/3dToken","href":"/api-reference/manage-tokens/delete-3d-token"}]},{"group":"Third-Party Permissions","pages":[{"title":"Associate with Customer","sidebarTitle":"Associate with Customer","api":"PUT https://service.pcibooking.net/api/payments/paycard/{cardToken}/user/{userID}","href":"/api-reference/manage-tokens/associate-with-customer"},{"title":"Disassociate from Customer","sidebarTitle":"Disassociate from Customer","api":"DELETE https://service.pcibooking.net/api/payments/paycard/{cardToken}/user/{userID}","href":"/api-reference/manage-tokens/disassociate-from-customer"},{"title":"List Customer Associations","sidebarTitle":"List Customer Associations","api":"GET https://service.pcibooking.net/api/payments/paycard/{cardToken}/users","href":"/api-reference/manage-tokens/list-customer-associations"}]}]},{"group":"Use Tokens","pages":[{"title":"Use Tokens API Reference","href":"/api-reference/process-cards/overview"},{"group":"Token Replacement","pages":[{"title":"Token Replacement in Request API","sidebarTitle":"Token Replacement","api":"POST https://service.pcibooking.net/api/payments/paycard/relay","description":"Replace card tokens with real card data and relay the request to a third-party API.","href":"/api-reference/process-cards/token-replacement"},{"title":"Token Replacement to sFTP","api":"PUT https://service.pcibooking.net/api/sftp/{serverAddress}/{folderPath}/{fileName}","href":"/api-reference/process-cards/token-replacement-sftp"},{"title":"Token Replacement to FTPS","description":"Replace card tokens in a document and upload the result to an FTPS server.","api":"PUT https://service.pcibooking.net/api/ftps/{serverAddress}/{folderPath}/{fileName}","href":"/api-reference/process-cards/token-replacement-ftps"},{"title":"Delete File from sFTP or FTPS","sidebarTitle":"Delete File (sFTP/FTPS)","api":"DELETE https://service.pcibooking.net/api/sftp/{serverAddress}/{filePath}","href":"/api-reference/process-cards/delete-file-sftp"}]},{"group":"Payment Gateway","pages":[{"title":"Process Transaction","api":"POST https://service.pcibooking.net/api/paymentGateway","href":"/api-reference/process-cards/process-transaction"},{"title":"Additional Guidance for Specific Payment Gateways","href":"/api-reference/process-cards/gateway-guidance"}]},{"group":"Card Display","pages":[{"title":"Request a Card Display Form","api":"GET https://service.pcibooking.net/api/payments/paycard/{cardtoken}/display","href":"/api-reference/process-cards/request-card-display-form"},{"title":"Initiate Card Display with OTP","sidebarTitle":"Card Display with OTP","api":"POST https://service.pcibooking.net/api/card-view-request/initView","href":"/api-reference/process-cards/card-display-otp"}]},{"title":"Retrieve Card Details","api":"GET https://service.pcibooking.net/api/payments/paycard/{cardToken}","href":"/api-reference/manage-tokens/retrieve-card-details"},{"title":"Risk Assessment API","api":"POST https://service.pcibooking.net/api/payments/paycard/{cardToken}/op/validate","href":"/api-reference/manage-tokens/risk-assessment"}]},{"group":"Additional Functions","pages":[{"title":"Get Payment Gateways","api":"GET https://service.pcibooking.net/api/paymentGateway","href":"/api-reference/process-cards/get-payment-gateways"},{"group":"Gateway Credentials","pages":[{"title":"Retrieve Payment Gateway Credential Structure","api":"GET https://service.pcibooking.net/api/credentials/paymentGateway/{name}","href":"/api-reference/process-cards/retrieve-credential-structure"},{"title":"Store Payment Gateway Credentials","api":"PUT https://service.pcibooking.net/api/credentials/{credentialsId}","href":"/api-reference/process-cards/store-credentials"},{"title":"List Payment Gateway Credentials","api":"GET https://service.pcibooking.net/api/credentials","href":"/api-reference/process-cards/list-credentials"},{"title":"Delete Payment Gateway Credentials","api":"DELETE https://service.pcibooking.net/api/credentials/{credentialsId}","href":"/api-reference/process-cards/delete-credentials"}]},{"group":"Data Blocks","pages":[{"title":"Create Data Block","api":"POST https://service.pcibooking.net/api/dataBlock","href":"/api-reference/additional/create-data-block"},{"title":"Get Data Block Details","api":"GET https://service.pcibooking.net/api/dataBlock/{id}","href":"/api-reference/additional/get-data-block-details"},{"title":"Update Data Block Details","api":"PUT https://service.pcibooking.net/api/dataBlock/{id}","href":"/api-reference/additional/update-data-block-details"},{"title":"Delete Data Block","api":"DELETE https://service.pcibooking.net/api/dataBlock/{id}","href":"/api-reference/additional/delete-data-block"},{"title":"Search Data Blocks","api":"GET https://service.pcibooking.net/api/dataBlock","href":"/api-reference/additional/search-data-blocks"},{"title":"Upload Data Block Content","api":"PUT https://service.pcibooking.net/api/datablock/{id}/data","href":"/api-reference/additional/upload-data-block-content"},{"title":"Download Data Block Content","api":"GET https://service.pcibooking.net/api/datablock/{id}/data","href":"/api-reference/additional/download-data-block-content"}]},{"group":"Contact Verification","pages":[{"title":"Create a Verification","api":"POST https://service.pcibooking.net/api/verify","href":"/api-reference/additional/create-verification"},{"title":"Get Verification Status","api":"GET https://service.pcibooking.net/api/verify/{verificationId}","href":"/api-reference/additional/get-verification-status"},{"title":"Get Verification Results","api":"GET https://service.pcibooking.net/api/verify/{verificationId}/results","href":"/api-reference/additional/get-verification-results"},{"title":"Receive Result Notification","href":"/api-reference/additional/receive-result-notification"}]},{"group":"Network Tokenization","pages":[{"title":"Network Tokenize a Card","api":"POST https://service.pcibooking.net/api/networkToken","href":"/api-reference/additional/network-tokenize-card"},{"title":"Network Tokenize from Existing Token","sidebarTitle":"Network Tokenize from Token","api":"POST https://service.pcibooking.net/api/networkToken/token","href":"/api-reference/additional/network-tokenize-from-token"},{"title":"Delete Network Token","api":"DELETE https://service.pcibooking.net/api/networkToken","href":"/api-reference/additional/delete-network-token"}]}]},{"group":"Payments Library","pages":[{"group":"Library Setup \u0026 Use","pages":[{"title":"Create Payments Library Session","api":"POST https://service.pcibooking.net/api/eWalletOperation","href":"/api-reference/payments-library/create-session"},{"title":"Validate Operation Result","sidebarTitle":"Validate Operation","api":"POST https://service.pcibooking.net/api/eWalletOperation/validateResults","href":"/api-reference/payments-library/validate-operation"}]},{"group":"Library Account Management","pages":[{"title":"Retrieve Digital Wallet Credential Structure","sidebarTitle":"Retrieve Credential Structure","api":"GET https://service.pcibooking.net/api/eWalletOperation","href":"/api-reference/payments-library-accounts/retrieve-credential-structure"},{"title":"Store Digital Wallet Credentials","api":"PUT https://service.pcibooking.net/api/eWalletAccounts/{credentialsId}","href":"/api-reference/payments-library-accounts/store-credentials"},{"title":"List Digital Wallet Credentials","sidebarTitle":"List Credentials","api":"GET https://service.pcibooking.net/api/eWalletAccounts","href":"/api-reference/payments-library-accounts/list-credentials"},{"title":"Delete Digital Wallet Credentials","api":"DELETE https://service.pcibooking.net/api/eWalletAccounts/{credentialsId}","href":"/api-reference/payments-library-accounts/delete-credentials"}]}]}]}]},"title":"Token Replacement to sFTP - PCI Booking","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff"],"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","ApiExamples-CuNQfndH.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BVFpVUoF.js","shallow-t59Jg5Kr.js","getApiPlaygroundDisplay-C_JZ4amX.js","CodeSnippet-CLRDnx_h.js","CodeSnippets-C2myU4kc.js","Page-7TwLLapg.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"]}