diff --git a/.github/actions/test_build/action.yml b/.github/actions/test_build/action.yml new file mode 100644 index 00000000..44e59998 --- /dev/null +++ b/.github/actions/test_build/action.yml @@ -0,0 +1,19 @@ +name: build +description: Build Docusaurus project +inputs: + NODE_ENV: + description: Node environment + required: false + default: staging + TRACKJS_TOKEN: + description: Trackjs Token + required: false +runs: + using: composite + steps: + - name: Building Docusaurus project + env: + NODE_ENV: ${{ inputs.NODE_ENV }} + TRACKJS_TOKEN: ${{ inputs.TRACKJS_TOKEN }} + run: npm run build -- --locale en + shell: bash diff --git a/.github/workflows/coveralls.yml b/.github/workflows/coveralls.yml index d0f16ffd..4c56e6f3 100755 --- a/.github/workflows/coveralls.yml +++ b/.github/workflows/coveralls.yml @@ -18,7 +18,7 @@ jobs: - name: Install dependencies uses: './.github/actions/npm_install_from_cache' - name: Build - uses: ./.github/actions/build + uses: ./.github/actions/test_build - name: Run Tests run: npm run test -- --collectCoverage - name: Coveralls diff --git a/.github/workflows/translation_download.yml b/.github/workflows/translation_download.yml new file mode 100644 index 00000000..dca1c024 --- /dev/null +++ b/.github/workflows/translation_download.yml @@ -0,0 +1,30 @@ +name: Crowdin Action + +on: + workflow_dispatch: + +permissions: write-all + +jobs: + crowdin: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Synchronize with Crowdin + uses: crowdin/github-action@v1 + with: + upload_sources: false + upload_translations: false + download_translations: true + localization_branch_name: l10n_crowdin_translations + + create_pull_request: true + pull_request_title: 'New Crowdin translations' + pull_request_body: 'New Crowdin pull request with translations' + pull_request_base_branch_name: 'main' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} diff --git a/.github/workflows/translation_upload.yml b/.github/workflows/translation_upload.yml new file mode 100644 index 00000000..1e320fff --- /dev/null +++ b/.github/workflows/translation_upload.yml @@ -0,0 +1,23 @@ +name: Crowdin Action + +on: + push: + paths: ['i18n/**'] + branches: [main] + +jobs: + crowdin-upload: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Crowdin push + uses: crowdin/github-action@v1 + with: + upload_sources: true + upload_translations: true + download_translations: false + env: + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} diff --git a/crowdin.yml b/crowdin.yml new file mode 100644 index 00000000..3140491b --- /dev/null +++ b/crowdin.yml @@ -0,0 +1,23 @@ +project_id_env: 'CROWDIN_PROJECT_ID' +api_token_env: 'CROWDIN_PERSONAL_TOKEN' +base_path: '.' +base_url: 'https://api.crowdin.com' +preserve_hierarchy: true + +files: + # JSON translation files + - source: /i18n/en/**/* + translation: /i18n/%two_letters_code%/**/%original_file_name% + languages_mapping: + two_letters_code: + en: en + es-ES: es_ES + fr-FR: fr_FR + # Docs Markdown files + - source: /docs/**/* + translation: /i18n/%two_letters_code%/docusaurus-plugin-content-docs/current/**/%original_file_name% + languages_mapping: + two_letters_code: + en: en + es-ES: es_ES + fr-FR: fr_FR diff --git a/docs/core-concepts/authorization-authentication/index.md b/docs/core-concepts/authorization-authentication/index.md index a58adf41..ece82ac9 100644 --- a/docs/core-concepts/authorization-authentication/index.md +++ b/docs/core-concepts/authorization-authentication/index.md @@ -26,7 +26,7 @@ Please make sure you have all the requirements mentioned below to continue. 3. Deriv app ID :::note -Please refer to [Setting up a Deriv application](docs/setting-up-a-deriv-application.md) for detailed instructions on how to create a Deriv API token and application. +Please refer to [Setting up a Deriv application](/docs/setting-up-a-deriv-application) for detailed instructions on how to create a Deriv API token and application. ::: ### API token diff --git a/docusaurus.config.js b/docusaurus.config.js index 763a13a7..37d0fe20 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -17,7 +17,7 @@ const config = { organizationName: 'binary-com', // Usually your GitHub org/user name. projectName: 'deriv-api-docs', // Usually your repo name. trailingSlash: false, - + onBrokenLinks: 'ignore', customFields: { trackJsToken: process.env.TRACKJS_TOKEN, }, @@ -27,7 +27,12 @@ const config = { // to replace "en" with "zh-Hans". i18n: { defaultLocale: 'en', - locales: ['en'], + locales: ['en', 'es', 'fr'], + localeConfigs: { + en: { + label: 'English', + }, + }, }, plugins: [ @@ -118,6 +123,10 @@ const config = { type: 'custom-user-navbar-item', position: 'right', }, + { + type: 'localeDropdown', + position: 'right', + }, ], }, prism: { diff --git a/i18n/en/code.json b/i18n/en/code.json new file mode 100644 index 00000000..d4cf2cad --- /dev/null +++ b/i18n/en/code.json @@ -0,0 +1,673 @@ +{ + "theme.docs.paginator.navAriaLabel": { + "message": "Docs pages navigation", + "description": "The ARIA label for the docs pagination" + }, + "theme.docs.paginator.previous": { + "message": "Previous", + "description": "The label used to navigate to the previous doc" + }, + "theme.docs.paginator.next": { + "message": "Next", + "description": "The label used to navigate to the next doc" + }, + "theme.docs.DocCard.categoryDescription": { + "message": "{count} items", + "description": "The default description for a category card in the generated index about how many items this category includes" + }, + "theme.ErrorPageContent.title": { + "message": "This page crashed.", + "description": "The title of the fallback page when the page crashed" + }, + "theme.NotFound.title": { + "message": "Page Not Found", + "description": "The title of the 404 page" + }, + "theme.NotFound.p1": { + "message": "We could not find what you were looking for.", + "description": "The first paragraph of the 404 page" + }, + "theme.NotFound.p2": { + "message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.", + "description": "The 2nd paragraph of the 404 page" + }, + "theme.admonition.note": { + "message": "note", + "description": "The default label used for the Note admonition (:::note)" + }, + "theme.admonition.tip": { + "message": "tip", + "description": "The default label used for the Tip admonition (:::tip)" + }, + "theme.admonition.danger": { + "message": "danger", + "description": "The default label used for the Danger admonition (:::danger)" + }, + "theme.admonition.info": { + "message": "info", + "description": "The default label used for the Info admonition (:::info)" + }, + "theme.admonition.caution": { + "message": "caution", + "description": "The default label used for the Caution admonition (:::caution)" + }, + "theme.blog.archive.title": { + "message": "Archive", + "description": "The page & hero title of the blog archive page" + }, + "theme.blog.archive.description": { + "message": "Archive", + "description": "The page & hero description of the blog archive page" + }, + "theme.BackToTopButton.buttonAriaLabel": { + "message": "Scroll back to top", + "description": "The ARIA label for the back to top button" + }, + "theme.blog.paginator.navAriaLabel": { + "message": "Blog list page navigation", + "description": "The ARIA label for the blog pagination" + }, + "theme.blog.paginator.newerEntries": { + "message": "Newer Entries", + "description": "The label used to navigate to the newer blog posts page (previous page)" + }, + "theme.blog.paginator.olderEntries": { + "message": "Older Entries", + "description": "The label used to navigate to the older blog posts page (next page)" + }, + "theme.blog.post.paginator.navAriaLabel": { + "message": "Blog post page navigation", + "description": "The ARIA label for the blog posts pagination" + }, + "theme.blog.post.paginator.newerPost": { + "message": "Newer Post", + "description": "The blog post button label to navigate to the newer/previous post" + }, + "theme.blog.post.paginator.olderPost": { + "message": "Older Post", + "description": "The blog post button label to navigate to the older/next post" + }, + "theme.blog.post.plurals": { + "message": "One post|{count} posts", + "description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.blog.tagTitle": { + "message": "{nPosts} tagged with \"{tagName}\"", + "description": "The title of the page for a blog tag" + }, + "theme.tags.tagsPageLink": { + "message": "View All Tags", + "description": "The label of the link targeting the tag list page" + }, + "theme.colorToggle.ariaLabel": { + "message": "Switch between dark and light mode (currently {mode})", + "description": "The ARIA label for the navbar color mode toggle" + }, + "theme.colorToggle.ariaLabel.mode.dark": { + "message": "dark mode", + "description": "The name for the dark color mode" + }, + "theme.colorToggle.ariaLabel.mode.light": { + "message": "light mode", + "description": "The name for the light color mode" + }, + "theme.docs.breadcrumbs.navAriaLabel": { + "message": "Breadcrumbs", + "description": "The ARIA label for the breadcrumbs" + }, + "theme.docs.tagDocListPageTitle.nDocsTagged": { + "message": "One doc tagged|{count} docs tagged", + "description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.docs.tagDocListPageTitle": { + "message": "{nDocsTagged} with \"{tagName}\"", + "description": "The title of the page for a docs tag" + }, + "theme.docs.versionBadge.label": { + "message": "Version: {versionLabel}" + }, + "theme.docs.versions.unreleasedVersionLabel": { + "message": "This is unreleased documentation for {siteTitle} {versionLabel} version.", + "description": "The label used to tell the user that he's browsing an unreleased doc version" + }, + "theme.docs.versions.unmaintainedVersionLabel": { + "message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.", + "description": "The label used to tell the user that he's browsing an unmaintained doc version" + }, + "theme.docs.versions.latestVersionSuggestionLabel": { + "message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).", + "description": "The label used to tell the user to check the latest version" + }, + "theme.docs.versions.latestVersionLinkLabel": { + "message": "latest version", + "description": "The label used for the latest version suggestion link label" + }, + "theme.common.editThisPage": { + "message": "Edit this page", + "description": "The link label to edit the current page" + }, + "theme.common.headingLinkTitle": { + "message": "Direct link to {heading}", + "description": "Title for link to heading" + }, + "theme.lastUpdated.atDate": { + "message": " on {date}", + "description": "The words used to describe on which date a page has been last updated" + }, + "theme.lastUpdated.byUser": { + "message": " by {user}", + "description": "The words used to describe by who the page has been last updated" + }, + "theme.lastUpdated.lastUpdatedAtBy": { + "message": "Last updated{atDate}{byUser}", + "description": "The sentence used to display when a page has been last updated, and by who" + }, + "theme.navbar.mobileVersionsDropdown.label": { + "message": "Versions", + "description": "The label for the navbar versions dropdown on mobile view" + }, + "theme.AnnouncementBar.closeButtonAriaLabel": { + "message": "Close", + "description": "The ARIA label for close button of announcement bar" + }, + "theme.tags.tagsListLabel": { + "message": "Tags:", + "description": "The label alongside a tag list" + }, + "theme.blog.sidebar.navAriaLabel": { + "message": "Blog recent posts navigation", + "description": "The ARIA label for recent posts in the blog sidebar" + }, + "theme.CodeBlock.copied": { + "message": "Copied", + "description": "The copied button label on code blocks" + }, + "theme.CodeBlock.copyButtonAriaLabel": { + "message": "Copy code to clipboard", + "description": "The ARIA label for copy code blocks button" + }, + "theme.CodeBlock.copy": { + "message": "Copy", + "description": "The copy button label on code blocks" + }, + "theme.CodeBlock.wordWrapToggle": { + "message": "Toggle word wrap", + "description": "The title attribute for toggle word wrapping button of code block lines" + }, + "theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel": { + "message": "Toggle the collapsible sidebar category '{label}'", + "description": "The ARIA label to toggle the collapsible sidebar category" + }, + "theme.NavBar.navAriaLabel": { + "message": "Main", + "description": "The ARIA label for the main navigation" + }, + "theme.navbar.mobileLanguageDropdown.label": { + "message": "Languages", + "description": "The label for the mobile language switcher dropdown" + }, + "theme.TOCCollapsible.toggleButtonLabel": { + "message": "On this page", + "description": "The label used by the button on the collapsible TOC component" + }, + "theme.blog.post.readMore": { + "message": "Read More", + "description": "The label used in blog post item excerpts to link to full blog posts" + }, + "theme.blog.post.readMoreLabel": { + "message": "Read more about {title}", + "description": "The ARIA label for the link to full blog posts from excerpts" + }, + "theme.blog.post.readingTime.plurals": { + "message": "One min read|{readingTime} min read", + "description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.docs.breadcrumbs.home": { + "message": "Home page", + "description": "The ARIA label for the home page in the breadcrumbs" + }, + "theme.docs.sidebar.collapseButtonTitle": { + "message": "Collapse sidebar", + "description": "The title attribute for collapse button of doc sidebar" + }, + "theme.docs.sidebar.collapseButtonAriaLabel": { + "message": "Collapse sidebar", + "description": "The title attribute for collapse button of doc sidebar" + }, + "theme.docs.sidebar.navAriaLabel": { + "message": "Docs sidebar", + "description": "The ARIA label for the sidebar navigation" + }, + "theme.docs.sidebar.closeSidebarButtonAriaLabel": { + "message": "Close navigation bar", + "description": "The ARIA label for close button of mobile sidebar" + }, + "theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": { + "message": "← Back to main menu", + "description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)" + }, + "theme.docs.sidebar.toggleSidebarButtonAriaLabel": { + "message": "Toggle navigation bar", + "description": "The ARIA label for hamburger menu button of mobile navigation" + }, + "theme.docs.sidebar.expandButtonTitle": { + "message": "Expand sidebar", + "description": "The ARIA label and title attribute for expand button of doc sidebar" + }, + "theme.docs.sidebar.expandButtonAriaLabel": { + "message": "Expand sidebar", + "description": "The ARIA label and title attribute for expand button of doc sidebar" + }, + "theme.Playground.result": { + "message": "Result", + "description": "The result label of the live codeblocks" + }, + "theme.Playground.liveEditor": { + "message": "Live Editor", + "description": "The live editor label of the live codeblocks" + }, + "theme.SearchPage.existingResultsTitle": { + "message": "Search results for \"{query}\"", + "description": "The search page title for non-empty query" + }, + "theme.SearchPage.emptyResultsTitle": { + "message": "Search the documentation", + "description": "The search page title for empty query" + }, + "theme.SearchPage.searchContext.everywhere": { + "message": "everywhere" + }, + "theme.SearchPage.documentsFound.plurals": { + "message": "1 document found|{count} documents found", + "description": "Pluralized label for \"{count} documents found\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.SearchPage.noResultsText": { + "message": "No documents were found", + "description": "The paragraph for empty search result" + }, + "theme.SearchBar.noResultsText": { + "message": "No results" + }, + "theme.SearchBar.seeAll": { + "message": "See all results" + }, + "theme.SearchBar.seeAllOutsideContext": { + "message": "See results outside {context}" + }, + "theme.SearchBar.searchInContext": { + "message": "See all results in {context}" + }, + "theme.SearchBar.label": { + "message": "Search", + "description": "The ARIA label and placeholder for search button" + }, + "theme.ErrorPageContent.tryAgain": { + "message": "Try again", + "description": "The label of the button to try again rendering when the React error boundary captures an error" + }, + "theme.common.skipToMainContent": { + "message": "Skip to main content", + "description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation" + }, + "theme.tags.tagsPageTitle": { + "message": "Tags", + "description": "The title of the tag list page" + }, + "Get connected": { + "message": "Get connected" + }, + "Discuss ideas and share solutions with developers worldwide.": { + "message": "Discuss ideas and share solutions with developers worldwide." + }, + "Join our community": { + "message": "Join our community" + }, + "We're here to help": { + "message": "We're here to help" + }, + "Email us at": { + "message": "Email us at" + }, + "api-support@deriv.com": { + "message": "api-support@deriv.com" + }, + "if you have any questions.": { + "message": "if you have any questions." + }, + "Change API endpoint": { + "message": "Change API endpoint" + }, + "Server is Required": { + "message": "Server is Required" + }, + "Please enter a valid server URL": { + "message": "Please enter a valid server URL" + }, + "Server URL": { + "message": "Server URL" + }, + "App ID is required": { + "message": "App ID is required" + }, + "Please enter a valid app ID": { + "message": "Please enter a valid app ID" + }, + "App ID": { + "message": "App ID" + }, + "Connected to :": { + "message": "Connected to :" + }, + "Submit": { + "message": "Submit" + }, + "Reset to original settings": { + "message": "Reset to original settings" + }, + "This API call must be authorised because it requires access to your account information.": { + "message": "This API call must be authorised because it requires access to your account information." + }, + "Log in to your Deriv account to proceed. If you don’t have a Deriv account, sign up first.": { + "message": "Log in to your Deriv account to proceed. If you don’t have a Deriv account, sign up first." + }, + "Sign up": { + "message": "Sign up" + }, + "Log in": { + "message": "Log in" + }, + "Request JSON": { + "message": "Request JSON" + }, + "Send Request": { + "message": "Send Request" + }, + "Clear": { + "message": "Clear" + }, + "Your JSON object is invalid. Please make sure you provide the correct syntax for your JSON object.": { + "message": "Your JSON object is invalid. Please make sure you provide the correct syntax for your JSON object." + }, + "Log in to your Deriv account to get the API token and start using our API.": { + "message": "Log in to your Deriv account to get the API token and start using our API." + }, + "Log In": { + "message": "Log In" + }, + "Deriv API features": { + "message": "Deriv API features" + }, + "Deriv API gives you full access to all the trading functionalities of DTrader and allows you to build your own comprehensive trading systems and analysis tools.": { + "message": "Deriv API gives you full access to all the trading functionalities of DTrader and allows you to build your own comprehensive trading systems and analysis tools." + }, + "Trade digital options and multipliers": { + "message": "Trade digital options and multipliers" + }, + "Monitor real-time pricing": { + "message": "Monitor real-time pricing" + }, + "Buy/sell contracts": { + "message": "Buy/sell contracts" + }, + "Manage user's accounts": { + "message": "Manage user's accounts" + }, + "Monitor existing contracts": { + "message": "Monitor existing contracts" + }, + "View user's historical transactions": { + "message": "View user's historical transactions" + }, + "See what our clients say": { + "message": "See what our clients say" + }, + "Comprehensive all-in-one": { + "message": "Comprehensive all-in-one" + }, + "client library": { + "message": "client library" + }, + "Simplify your development processes and get your app up and running": { + "message": "Simplify your development processes and get your app up and running" + }, + "faster with the client library of your choice.": { + "message": "faster with the client library of your choice." + }, + "Go to the JavaScript library": { + "message": "Go to the JavaScript library" + }, + "Go to the Python library": { + "message": "Go to the Python library" + }, + "Go to the Flutter library": { + "message": "Go to the Flutter library" + }, + "Get started with our API in 3 simple steps:": { + "message": "Get started with our API in 3 simple steps:" + }, + "1. Learn about our API": { + "message": "1. Learn about our API" + }, + "Understand basic concepts and terminologies": { + "message": "Understand basic concepts and terminologies" + }, + "2. Sign up": { + "message": "2. Sign up" + }, + "Create a free Deriv account to access our API": { + "message": "Create a free Deriv account to access our API" + }, + "3. Register your app": { + "message": "3. Register your app" + }, + "Fill out the registration form to start using Deriv API": { + "message": "Fill out the registration form to start using Deriv API" + }, + "By using our API, you confirm that you have read and agreed to our": { + "message": "By using our API, you confirm that you have read and agreed to our" + }, + "terms and conditions.": { + "message": "terms and conditions." + }, + "Deriv API": { + "message": "Deriv API" + }, + "Use our powerful, flexible, and free API to build a custom trading": { + "message": "Use our powerful, flexible, and free API to build a custom trading" + }, + "platform - for yourself or for your business.": { + "message": "platform - for yourself or for your business." + }, + "Quick Start": { + "message": "Quick Start" + }, + "Ways to earn with Deriv API": { + "message": "Ways to earn with Deriv API" + }, + "Register your app with Deriv, and add a percentage markup to the contract prices to profit from every purchased contract.": { + "message": "Register your app with Deriv, and add a percentage markup to the contract prices to profit from every purchased contract." + }, + "Sign up as an affiliate, build your app, and get commissions on trades completed via your app and the affiliate plan you select.": { + "message": "Sign up as an affiliate, build your app, and get commissions on trades completed via your app and the affiliate plan you select." + }, + "Sign up as a payment agent, build your own custom payment website, and use our API to earn commission on every payment you process for Deriv's clients.": { + "message": "Sign up as a payment agent, build your own custom payment website, and use our API to earn commission on every payment you process for Deriv's clients." + }, + "API Token Manager": { + "message": "API Token Manager" + }, + "Select API Call - Version 3": { + "message": "Select API Call - Version 3" + }, + "ALL CALLS": { + "message": "ALL CALLS" + }, + "Note:": { + "message": "Note:" + }, + "Do not share tokens with the Admin scope with unauthorised parties.": { + "message": "Do not share tokens with the Admin scope with unauthorised parties." + }, + "This scope will allow third-party apps to view your account activity, settings, limits, balance sheets, trade purchase history, and more.": { + "message": "This scope will allow third-party apps to view your account activity, settings, limits, balance sheets, trade purchase history, and more." + }, + "This scope will allow third-party apps to buy and sell contracts for you, renew your expired purchases, and top up your demo accounts.": { + "message": "This scope will allow third-party apps to buy and sell contracts for you, renew your expired purchases, and top up your demo accounts." + }, + "This scope will allow third-party apps to withdraw to payment agents and make inter-account transfers for you.": { + "message": "This scope will allow third-party apps to withdraw to payment agents and make inter-account transfers for you." + }, + "This scope will allow third-party apps to view your trading history.": { + "message": "This scope will allow third-party apps to view your trading history." + }, + "This scope will allow third-party apps to open accounts for you, manage your settings and token usage, and more.": { + "message": "This scope will allow third-party apps to open accounts for you, manage your settings and token usage, and more." + }, + "Select scopes based on the access you need.": { + "message": "Select scopes based on the access you need." + }, + "Copy and paste the token into the app.": { + "message": "Copy and paste the token into the app." + }, + "This account doesn't have API tokens with the admin scope. Choose another account.": { + "message": "This account doesn't have API tokens with the admin scope. Choose another account." + }, + "App information": { + "message": "App information" + }, + "Select your api token ( it should have admin scope )": { + "message": "Select your api token ( it should have admin scope )" + }, + "App name (required)": { + "message": "App name (required)" + }, + "That name is taken. Choose another.": { + "message": "That name is taken. Choose another." + }, + "Markup": { + "message": "Markup" + }, + "You can earn commission by adding a markup to the price of each trade. Enter your markup percentage here.": { + "message": "You can earn commission by adding a markup to the price of each trade. Enter your markup percentage here." + }, + "Note: Markup is only available for real accounts.": { + "message": "Note: Markup is only available for real accounts." + }, + "Markup percentage (optional)": { + "message": "Markup percentage (optional)" + }, + "Enter 0 if you don‘t want to earn a markup. Max markup: 3%": { + "message": "Enter 0 if you don‘t want to earn a markup. Max markup: 3%" + }, + "OAuth details": { + "message": "OAuth details" + }, + "This allows clients to log in to your app using their Deriv accounts without an API token.": { + "message": "This allows clients to log in to your app using their Deriv accounts without an API token." + }, + "Authorisation URL (optional)": { + "message": "Authorisation URL (optional)" + }, + "Please note that this URL will be used as the OAuth redirect URL for the OAuth authorization.": { + "message": "Please note that this URL will be used as the OAuth redirect URL for the OAuth authorization." + }, + "Verification URL (optional)": { + "message": "Verification URL (optional)" + }, + "Scope of authorization": { + "message": "Scope of authorization" + }, + "Select the scope for your app:": { + "message": "Select the scope for your app:" + }, + "Read": { + "message": "Read" + }, + ": You'll have full access to your clients' information.": { + "message": ": You'll have full access to your clients' information." + }, + "Trade": { + "message": "Trade" + }, + ": You'll be able to buy and sell contracts on your clients' behalf.": { + "message": ": You'll be able to buy and sell contracts on your clients' behalf." + }, + "Trading information": { + "message": "Trading information" + }, + ": You‘ll be able to view your clients’ trading information, including their account balance.": { + "message": ": You‘ll be able to view your clients’ trading information, including their account balance." + }, + "Payments": { + "message": "Payments" + }, + ": You‘ll be able to perform deposits and withdrawals on your clients’ behalf.": { + "message": ": You‘ll be able to perform deposits and withdrawals on your clients’ behalf." + }, + "Admin": { + "message": "Admin" + }, + ": Full account access, including the access to manage security tokens.": { + "message": ": Full account access, including the access to manage security tokens." + }, + "By registering your application, you acknowledge that you‘ve read and accepted the Deriv API": { + "message": "By registering your application, you acknowledge that you‘ve read and accepted the Deriv API" + }, + "terms and conditions": { + "message": "terms and conditions" + }, + "Edit application details": { + "message": "Edit application details" + }, + "Delete application": { + "message": "Delete application" + }, + "To see your details reflected, please register your app via the registration form.": { + "message": "To see your details reflected, please register your app via the registration form." + }, + "Register now": { + "message": "Register now" + }, + "Manage tokens": { + "message": "Manage tokens" + }, + "Register application": { + "message": "Register application" + }, + "Manage applications": { + "message": "Manage applications" + }, + "Your apps": { + "message": "Your apps" + }, + "Register your app, get an app ID, and start using the Deriv API": { + "message": "Register your app, get an app ID, and start using the Deriv API" + }, + "Be careful who you share this token with. Anyone with this token can perform the following actions on your account behalf": { + "message": "Be careful who you share this token with. Anyone with this token can perform the following actions on your account behalf" + }, + "Add accounts": { + "message": "Add accounts" + }, + "Create or delete API tokens for trading and withdrawals": { + "message": "Create or delete API tokens for trading and withdrawals" + }, + "Modify account settings": { + "message": "Modify account settings" + }, + "Enter your API token (with the Admin scope) to register your app.": { + "message": "Enter your API token (with the Admin scope) to register your app." + }, + "You have successfully registered your application.": { + "message": "You have successfully registered your application." + }, + "You can now start using Deriv API": { + "message": "You can now start using Deriv API" + }, + "Got it": { + "message": "Got it" + }, + "Cancel": { + "message": "Cancel" + } +} diff --git a/i18n/en/docusaurus-plugin-content-docs/current.json b/i18n/en/docusaurus-plugin-content-docs/current.json new file mode 100644 index 00000000..275cade9 --- /dev/null +++ b/i18n/en/docusaurus-plugin-content-docs/current.json @@ -0,0 +1,66 @@ +{ + "version.label": { + "message": "Next", + "description": "The label for version current" + }, + "sidebar.tutorialSidebar.category.Core concepts": { + "message": "Core concepts", + "description": "The label for category Core concepts in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Core concepts.link.generated-index.description": { + "message": "Learn to use API WebSocket and API calls to create your customised trading app.", + "description": "The generated-index page description for category Core concepts in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Code examples": { + "message": "Code examples", + "description": "The label for category Code examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Code examples.link.generated-index.title": { + "message": "Code examples", + "description": "The generated-index page title for category Code examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Code examples.link.generated-index.description": { + "message": "Find out which API codes are available for you to use to build your trading app. Learn with API examples.", + "description": "The generated-index page description for category Code examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Javascript Examples": { + "message": "Javascript Examples", + "description": "The label for category Javascript Examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Javascript Examples.link.generated-index.title": { + "message": "JavaScript examples", + "description": "The generated-index page title for category Javascript Examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Javascript Examples.link.generated-index.description": { + "message": "Explore JavaScript codes you can use to build your trading app. Learn through JavaScript examples and API examples.", + "description": "The generated-index page description for category Javascript Examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Languages": { + "message": "Languages", + "description": "The label for category Languages in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Languages.link.generated-index.title": { + "message": "Programming languages", + "description": "The generated-index page title for category Languages in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Languages.link.generated-index.description": { + "message": "Select your preferred programming language to create a trading app with the help of our WebSocket API. Start learning with these code examples.", + "description": "The generated-index page description for category Languages in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.JavaScript": { + "message": "JavaScript", + "description": "The label for category JavaScript in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.JavaScript.link.generated-index.description": { + "message": "Start building your trading app with Javascript, HTML, and CSS via our WebSocket API.", + "description": "The generated-index page description for category JavaScript in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Guides": { + "message": "Guides", + "description": "The label for category Guides in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Guides.link.generated-index.description": { + "message": "A guide to the Deriv API, including API examples to create a trading app with comprehensive features similar to Deriv Trader. Get started today!", + "description": "The generated-index page description for category Guides in sidebar tutorialSidebar" + } +} diff --git a/i18n/en/docusaurus-theme-classic/navbar.json b/i18n/en/docusaurus-theme-classic/navbar.json new file mode 100644 index 00000000..f9f5456c --- /dev/null +++ b/i18n/en/docusaurus-theme-classic/navbar.json @@ -0,0 +1,26 @@ +{ + "logo.alt": { + "message": "Deriv API logo", + "description": "The alt text of navbar logo" + }, + "item.label.Documentation": { + "message": "Documentation", + "description": "Navbar item with label Documentation" + }, + "item.label.Dashboard": { + "message": "Dashboard", + "description": "Navbar item with label Dashboard" + }, + "item.label.API Explorer": { + "message": "API Explorer", + "description": "Navbar item with label API Explorer" + }, + "item.label.Blog": { + "message": "Blog", + "description": "Navbar item with label Blog" + }, + "item.label.Bug bounty": { + "message": "Bug bounty", + "description": "Navbar item with label Bug bounty" + } +} diff --git a/i18n/es/code.json b/i18n/es/code.json new file mode 100644 index 00000000..ec2a1797 --- /dev/null +++ b/i18n/es/code.json @@ -0,0 +1,688 @@ +{ + "Get connected": { + "message": "Conéctese" + }, + "Join our community": { + "message": "Únase a nuestra comunidad" + }, + "Telegram": { + "message": "Telegram" + }, + "We're here to help": { + "message": "Estamos aquí para ayudarle" + }, + "Email us at": { + "message": "Envíenos un correo a" + }, + "api-support@deriv.com": { + "message": "api-support@deriv.com" + }, + "if you have any questions.": { + "message": "si tiene alguna pregunta." + }, + "Change API endpoint": { + "message": "Cambiar el API endpoint" + }, + "Server is Required": { + "message": "Se requiere servidor" + }, + "Please enter a valid server URL": { + "message": "Por favor ingrese una URL de servidor válida" + }, + "Server URL": { + "message": "URL del servidor" + }, + "App ID is required": { + "message": "Se requiere el ID de la aplicación" + }, + "Please enter a valid app ID": { + "message": "Por favor, introduzca un ID de aplicación válido" + }, + "App ID": { + "message": "ID de la aplicación" + }, + "Connected to :": { + "message": "Conectado a :" + }, + "Submit": { + "message": "Enviar" + }, + "Reset to original settings": { + "message": "Restablecer los ajustes originales" + }, + "theme.docs.DocCard.categoryDescription": { + "message": "{count} artículos", + "description": "The default description for a category card in the generated index about how many items this category includes" + }, + "This API call must be authorised because it requires access to your account information.": { + "message": "Está llamada API debe ser autorizada porque requiere el acceso a la información de su cuenta." + }, + "Log in to your Deriv account to proceed. If you don’t have a Deriv account, sign up first.": { + "message": "Ingrese a su cuenta Deriv para continuar. Si no tiene una cuenta Deriv, regístrese primero." + }, + "Sign up": { + "message": "Crear cuenta" + }, + "Log in": { + "message": "Iniciar sesión" + }, + "Send Request": { + "message": "Enviar solicitud" + }, + "Clear": { + "message": "Limpiar" + }, + "Your JSON object is invalid. Please make sure you provide the correct syntax for your JSON object.": { + "message": "Su objeto JSON no es válido. Por favor, asegúrese de proporcionar la sintaxis correcta para su objeto JSON." + }, + "Request JSON": { + "message": "Solicitar JSON" + }, + "Log in to your Deriv account to get the API token and start using our API.": { + "message": "Inicie sesión en su cuenta Deriv para obtener el token API y empezar a utilizar nuestra API." + }, + "Log In": { + "message": "Iniciar sesión" + }, + "Deriv API features": { + "message": "Características de la Deriv API" + }, + "Deriv API gives you full access to all the trading functionalities of DTrader and allows you to build your own comprehensive trading systems and analysis tools.": { + "message": "Deriv API le ofrece acceso completo a todas las funcionalidades de operación de DTrader y le permite crear sus propios sistemas de operación y herramientas de análisis completos." + }, + "Trade digital options and multipliers": { + "message": "Operar opciones digitales y multiplicadores" + }, + "Monitor real-time pricing": { + "message": "Supervisar los precios en tiempo real" + }, + "Buy/sell contracts": { + "message": "Comprar/Vender contratos" + }, + "Monitor existing contracts": { + "message": "Supervisar los contratos existentes" + }, + "Benefits of using Deriv API": { + "message": "Ventajas de utilizar la Deriv API" + }, + "Personalize your trading": { + "message": "Personalizar sus operaciones" + }, + "Personalize your trading apps to match your needs. Create charts and views the way you like them. Develop your trading app using any common programming language and extend your trading opportunities.": { + "message": "Personalice sus aplicaciones de operación para adaptarlas a sus necesidades. Cree gráficos y vistas a su gusto. Desarrolle su aplicación de operación utilizando cualquier lenguaje de programación común y amplíe sus oportunidades de operación." + }, + "Create your own trading apps by taking advantage of the power of Deriv's trading services. Share your apps with fellow traders or customers, and get a chance to earn more or build your own business.": { + "message": "Cree sus propias aplicaciones de operación aprovechando la potencia de los servicios de operación de Deriv. Comparta sus apps con otros operadores o clientes y obtenga la oportunidad de ganar más o de crear su propio negocio." + }, + "See what our clients say": { + "message": "Vea lo que dicen nuestros clientes" + }, + "Comprehensive all-in-one": { + "message": "Amplia y completa" + }, + "client library": { + "message": "biblioteca de clientes" + }, + "Simplify your development processes and get your app up and running": { + "message": "Simplifique sus procesos de desarrollo y ponga en marcha su aplicación" + }, + "faster with the client library of your choice.": { + "message": "más rápido con la biblioteca de cliente de su elección." + }, + "Go to the JavaScript library": { + "message": "Ir a la biblioteca JavaScript" + }, + "Go to the Python library": { + "message": "Ir a la biblioteca Python" + }, + "Go to the Flutter library": { + "message": "Ir a la biblioteca Flutter" + }, + "Deriv API": { + "message": "Deriv API" + }, + "Use our powerful, flexible, and free API to build a custom trading": { + "message": "Utilice nuestra potente, flexible y gratuita API para construir una operación personalizada" + }, + "platform - for yourself or for your business.": { + "message": "plataforma - para usted o para su negocio." + }, + "Read the docs": { + "message": "Leer los documentos" + }, + "Get started with our API in 3 simple steps:": { + "message": "Empiece a utilizar nuestra API en 3 sencillos pasos:" + }, + "1. Learn about our API": { + "message": "1. Conozca nuestra API" + }, + "Understand basic concepts and terminologies.": { + "message": "Comprenda los conceptos y terminologías básicas." + }, + "2. Sign up": { + "message": "2. Inscríbase" + }, + "Create a free Deriv account to access our API.": { + "message": "Cree una cuenta Deriv gratuita para acceder a nuestra API." + }, + "3. Register your app": { + "message": "3. Registre su aplicación" + }, + "Fill out the registration form to start using Deriv API": { + "message": "Rellene el formulario de registro para empezar a utilizar Deriv API" + }, + "By using our API, you confirm that you have read and agreed to our": { + "message": "Al utilizar nuestra API, confirma que ha leído y aceptado nuestros" + }, + "terms and conditions.": { + "message": "términos y condiciones." + }, + "Ways to earn with Deriv API": { + "message": "Formas de ganar con Deriv API" + }, + "Register your app with Deriv, and add a percentage markup to the contract prices to profit from every purchased contract.": { + "message": "Registre su aplicación en Deriv y añada un porcentaje de margen a los precios de los contratos para obtener beneficios de cada contrato adquirido." + }, + "Sign up as an affiliate, build your app, and get commissions on trades completed via your app and the affiliate plan you select.": { + "message": "Regístrese como afiliado, cree su aplicación y obtenga comisiones por las operaciones realizadas a través de su aplicación y del plan de afiliación que seleccione." + }, + "Sign up as a payment agent, build your own custom payment website, and use our API to earn commission on every payment you process for Deriv's clients.": { + "message": "Regístrese como agente de pagos, cree su propio sitio web de pagos personalizado y utilice nuestra API para ganar comisiones por cada pago que procese para los clientes de Deriv." + }, + "API Token Manager": { + "message": "Gestor de Tokens API" + }, + "Register Application": { + "message": "Registrar aplicación" + }, + "Select API Call - Version 3": { + "message": "Seleccionar llamada API - Versión 3" + }, + "ALL CALLS": { + "message": "ALL CALLS" + }, + "Do not share tokens with the Admin scope with unauthorised parties.": { + "message": "No comparta los tokens del alcance Admin con terceros no autorizados." + }, + "This scope will allow third-party apps to view your account activity, settings, limits, balance sheets, trade purchase history, and more.": { + "message": "Este alcance permitirá a aplicaciones de terceros ver la actividad, los ajustes, los límites, las hojas de balance, el historial de compras de operaciones de su cuenta, entre otros." + }, + "This scope will allow third-party apps to buy and sell contracts for you, renew your expired purchases, and top up your demo accounts.": { + "message": "Este alcance permitirá a aplicaciones de terceros comprar y vender contratos por usted, renovar sus comprar caducadas y recargar sus cuentas demo." + }, + "This scope will allow third-party apps to withdraw to payment agents and make inter-account transfers for you.": { + "message": "Este alcance permitirá a aplicaciones de terceros retirar mediante agentes de pago y realizar transferencias entre cuentas por usted." + }, + "This scope will allow third-party apps to view your trading history.": { + "message": "Este alcance permitirá a apps de terceros ver su historial de operaciones." + }, + "This scope will allow third-party apps to open accounts for you, manage your settings and token usage, and more.": { + "message": "Este alcance permitirá a aplicaciones de terceros abrir cuentas por usted, gestionar sus ajustes y uso de token, entre otras cosas." + }, + "Select scopes based on the access you need.": { + "message": "Seleccione los alcances según el acceso que necesita." + }, + "Name your token and click on Create to generate your token.": { + "message": "Póngale un nombre a su token y pulse en Crear para generarlo." + }, + "Copy and paste the token into the app.": { + "message": "Copie y pegue el token en la aplicación." + }, + "This account doesn't have API tokens with the admin scope. Choose another account.": { + "message": "Esta cuenta no tiene tokens API con el alcance admin. Elija otra cuenta." + }, + "Select your api token ( it should have admin scope )": { + "message": "Seleccione su token api ( debe tener alcance admin )" + }, + "App name (required)": { + "message": "Nombre de la aplicación (obligatorio)" + }, + "Markup": { + "message": "Markup" + }, + "You can earn commission by adding a markup to the price of each trade. Enter your markup percentage here.": { + "message": "Puede ganar comisiones añadiendo un markup al precio de cada operación. Introduzca aquí su porcentaje de markup." + }, + "NOTE: Markup is only available for real accounts": { + "message": "NOTA: El markup solo está disponible para las cuentas reales" + }, + "Markup percentage (optional)": { + "message": "Porcentaje de markup (opcional)" + }, + "If you don‘t want to earn a markup, enter 0 here. Otherwise, enter a number up to 5. Maximum: 5.00%.": { + "message": "Si no desea ganar un markup, introduzca 0 aquí. En caso contrario, introduzca un número hasta 5. Máximo: 5.00%." + }, + "OAuth details": { + "message": "Detalles de OAuth" + }, + "This allows clients to log in to your app using their Deriv accounts without an API token.": { + "message": "Esto permite a los clientes iniciar sesión en su aplicación utilizando sus cuentas Deriv sin un token de API." + }, + "Authorization URL (optional)": { + "message": "URL de Autorización (opcional)" + }, + "*Please note that this URL will be used as the OAuth redirect URL for the OAuth authorization.": { + "message": "*Tenga en cuenta que esta URL se utilizará como URL de redirección OAuth para la autorización OAuth." + }, + "Verification URL (optional)": { + "message": "URL de Verificación (opcional)" + }, + "Scope of authorization": { + "message": "Alcance de la Autorización" + }, + "Select the scope for your app:": { + "message": "Seleccione el alcance de su aplicación:" + }, + "Read": { + "message": "Leer" + }, + "You'll have full access to your clients' information.": { + "message": "Tendrá pleno acceso a la información de sus clientes." + }, + "Trade": { + "message": "Operar" + }, + "You'll be able to buy and sell contracts on your clients' behalf.": { + "message": "Podrá comprar y vender contratos en nombre de sus clientes." + }, + "Trading information": { + "message": "Información de trading" + }, + "You‘ll be able to view your clients’ trading information, including their account balance.": { + "message": "Podrá ver la información de trading de sus clientes, incluido el balance de su cuenta." + }, + "Payments": { + "message": "Pagos" + }, + ": You‘ll be able to perform deposits and withdrawals on your clients’ behalf.": { + "message": ": Podrá realizar depósitos y retiros en nombre de sus clientes." + }, + "Admin": { + "message": "Administrador" + }, + ": Full account access, including the access to manage security tokens.": { + "message": ": Acceso completo a la cuenta, incluido el acceso para gestionar los tokens de seguridad." + }, + "By registering your application, you acknowledge that you‘ve read and accepted the Deriv API": { + "message": "Al registrar su solicitud, reconoce que ha leído y aceptado la Deriv API" + }, + "terms and conditions": { + "message": "términos y condiciones" + }, + "Edit application details": { + "message": "Editar los detalles de la solicitud" + }, + "Delete application": { + "message": "Eliminar aplicación" + }, + "To see your details reflected, please register your app via the registration form.": { + "message": "Para ver reflejados sus datos, registre su aplicación a través del formulario de registro." + }, + "Register now": { + "message": "Regístrese ahora" + }, + "MANAGE_TOKENS": { + "message": "MANAGE_TOKENS" + }, + "Manage tokens": { + "message": "Gestionar tokens" + }, + "REGISTER_APP": { + "message": "REGISTER_APP" + }, + "Register application": { + "message": "Registrar aplicación" + }, + "MANAGE_APPS": { + "message": "MANAGE_APPS" + }, + "Manage applications": { + "message": "Gestionar aplicaciones" + }, + "Your apps": { + "message": "Sus aplicaciones" + }, + "Register your app, get an app ID, and start using the Deriv API": { + "message": "Registre su aplicación, obtenga un ID de aplicación y empiece a utilizar la Deriv API" + }, + "Be careful who you share this token with. Anyone with this token can perform the following actions on your account behalf": { + "message": "Tenga cuidado de con quién comparte este token. Cualquier persona con este token puede realizar las siguientes acciones en nombre de su cuenta" + }, + "Add accounts": { + "message": "Añadir cuentas" + }, + "Create or delete API tokens for trading and withdrawals": { + "message": "Crear o eliminar tokens API para operaciones y retiros" + }, + "Modify account settings": { + "message": "Modificar los ajustes de cuenta" + }, + "Are you sure you want to delete this token?": { + "message": "¿Está seguro de que desea eliminar este token?" + }, + "Are you sure you want to delete this app?": { + "message": "¿Está seguro de que desea eliminar esta aplicación?" + }, + "Enter your API token (with the Admin scope) to register your app.": { + "message": "Introduzca su token de API (con el alcance Admin) para registrar su aplicación." + }, + "You have successfully registered your application. You can now start using Deriv API.": { + "message": "Ha registrado correctamente su aplicación. Ahora puede empezar a utilizar la Deriv API." + }, + "Update Application": { + "message": "Actualizar Aplicación" + }, + "Cancel": { + "message": "Cancelar" + }, + "theme.ErrorPageContent.title": { + "message": "Esta página se colgó.", + "description": "The title of the fallback page when the page crashed" + }, + "theme.NotFound.title": { + "message": "Página no encontrada", + "description": "The title of the 404 page" + }, + "theme.NotFound.p1": { + "message": "No hemos podido encontrar lo que buscaba.", + "description": "The first paragraph of the 404 page" + }, + "theme.NotFound.p2": { + "message": "Entre en contacto con el propietario del sitio que le enlazó a la URL original y hágale saber que su enlace está roto.", + "description": "The 2nd paragraph of the 404 page" + }, + "theme.admonition.note": { + "message": "nota", + "description": "The default label used for the Note admonition (:::note)" + }, + "theme.admonition.tip": { + "message": "consejo", + "description": "The default label used for the Tip admonition (:::tip)" + }, + "theme.admonition.danger": { + "message": "peligro", + "description": "The default label used for the Danger admonition (:::danger)" + }, + "theme.admonition.info": { + "message": "información", + "description": "The default label used for the Info admonition (:::info)" + }, + "theme.admonition.caution": { + "message": "precaución", + "description": "The default label used for the Caution admonition (:::caution)" + }, + "theme.BackToTopButton.buttonAriaLabel": { + "message": "Volver arriba", + "description": "The ARIA label for the back to top button" + }, + "theme.blog.paginator.navAriaLabel": { + "message": "Navegación por la página de la lista del blog", + "description": "The ARIA label for the blog pagination" + }, + "theme.blog.paginator.newerEntries": { + "message": "Entradas recientes", + "description": "The label used to navigate to the newer blog posts page (previous page)" + }, + "theme.blog.paginator.olderEntries": { + "message": "Entradas anteriores", + "description": "The label used to navigate to the older blog posts page (next page)" + }, + "theme.blog.archive.title": { + "message": "Archivar", + "description": "The page & hero title of the blog archive page" + }, + "theme.blog.archive.description": { + "message": "Archivar", + "description": "The page & hero description of the blog archive page" + }, + "theme.blog.post.paginator.navAriaLabel": { + "message": "Navegación por la página de publicaciones del blog", + "description": "The ARIA label for the blog posts pagination" + }, + "theme.blog.post.paginator.newerPost": { + "message": "Publicación reciente", + "description": "The blog post button label to navigate to the newer/previous post" + }, + "theme.blog.post.paginator.olderPost": { + "message": "Publicación Antigua", + "description": "The blog post button label to navigate to the older/next post" + }, + "theme.blog.post.plurals": { + "message": "Una publicación|{count} publicaciones", + "description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.blog.tagTitle": { + "message": "{nPosts} etiquetado con \"{tagName}\"", + "description": "The title of the page for a blog tag" + }, + "theme.tags.tagsPageLink": { + "message": "Ver todas las etiquetas", + "description": "The label of the link targeting the tag list page" + }, + "theme.docs.breadcrumbs.navAriaLabel": { + "message": "Breadcrumbs", + "description": "The ARIA label for the breadcrumbs" + }, + "theme.colorToggle.ariaLabel": { + "message": "Cambiar entre modo oscuro y claro (actualmente {mode})", + "description": "The ARIA label for the navbar color mode toggle" + }, + "theme.colorToggle.ariaLabel.mode.dark": { + "message": "modo oscuro", + "description": "The name for the dark color mode" + }, + "theme.colorToggle.ariaLabel.mode.light": { + "message": "modo claro", + "description": "The name for the light color mode" + }, + "theme.docs.paginator.navAriaLabel": { + "message": "Navegación por las páginas documentos", + "description": "The ARIA label for the docs pagination" + }, + "theme.docs.paginator.previous": { + "message": "Anterior", + "description": "The label used to navigate to the previous doc" + }, + "theme.docs.paginator.next": { + "message": "Siguiente", + "description": "The label used to navigate to the next doc" + }, + "theme.docs.tagDocListPageTitle.nDocsTagged": { + "message": "Un documento etiquetado|{count} documentos etiquetados", + "description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.docs.tagDocListPageTitle": { + "message": "{nDocsTagged} con \"{tagName}\"", + "description": "The title of the page for a docs tag" + }, + "theme.docs.versions.unreleasedVersionLabel": { + "message": "Se trata de documentación no publicada para la versión {siteTitle} {versionLabel}.", + "description": "The label used to tell the user that he's browsing an unreleased doc version" + }, + "theme.docs.versions.unmaintainedVersionLabel": { + "message": "Se trata de documentación para {siteTitle} {versionLabel}, que ya no se mantiene activamente.", + "description": "The label used to tell the user that he's browsing an unmaintained doc version" + }, + "theme.docs.versions.latestVersionSuggestionLabel": { + "message": "Para obtener documentación actualizada, consulte la página {latestVersionLink} ({versionLabel}).", + "description": "The label used to tell the user to check the latest version" + }, + "theme.docs.versions.latestVersionLinkLabel": { + "message": "última versión", + "description": "The label used for the latest version suggestion link label" + }, + "theme.docs.versionBadge.label": { + "message": "Versión: {versionLabel}" + }, + "theme.common.editThisPage": { + "message": "Editar esta página", + "description": "The link label to edit the current page" + }, + "theme.common.headingLinkTitle": { + "message": "Enlace directo a {heading}", + "description": "Title for link to heading" + }, + "theme.lastUpdated.atDate": { + "message": " en {date}", + "description": "The words used to describe on which date a page has been last updated" + }, + "theme.lastUpdated.byUser": { + "message": " por {user}", + "description": "The words used to describe by who the page has been last updated" + }, + "theme.lastUpdated.lastUpdatedAtBy": { + "message": "Última actualización{atDate}{byUser}", + "description": "The sentence used to display when a page has been last updated, and by who" + }, + "theme.navbar.mobileVersionsDropdown.label": { + "message": "Versiones", + "description": "The label for the navbar versions dropdown on mobile view" + }, + "theme.tags.tagsListLabel": { + "message": "Etiquetas:", + "description": "The label alongside a tag list" + }, + "theme.AnnouncementBar.closeButtonAriaLabel": { + "message": "Cerrar", + "description": "The ARIA label for close button of announcement bar" + }, + "theme.blog.sidebar.navAriaLabel": { + "message": "Navegación por las publicaciones recientes del blog", + "description": "The ARIA label for recent posts in the blog sidebar" + }, + "theme.CodeBlock.copied": { + "message": "Copiado", + "description": "The copied button label on code blocks" + }, + "theme.CodeBlock.copyButtonAriaLabel": { + "message": "Copiar código al portapapeles", + "description": "The ARIA label for copy code blocks button" + }, + "theme.CodeBlock.copy": { + "message": "Copiar", + "description": "The copy button label on code blocks" + }, + "theme.CodeBlock.wordWrapToggle": { + "message": "Alternar el ajuste de palabras", + "description": "The title attribute for toggle word wrapping button of code block lines" + }, + "theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel": { + "message": "Alternar la categoría de la barra lateral colapsable '{label}'", + "description": "The ARIA label to toggle the collapsible sidebar category" + }, + "theme.NavBar.navAriaLabel": { + "message": "Principal", + "description": "The ARIA label for the main navigation" + }, + "theme.navbar.mobileLanguageDropdown.label": { + "message": "Lenguajes", + "description": "The label for the mobile language switcher dropdown" + }, + "theme.TOCCollapsible.toggleButtonLabel": { + "message": "En esta página", + "description": "The label used by the button on the collapsible TOC component" + }, + "theme.blog.post.readingTime.plurals": { + "message": "Un minuto de lectura|{readingTime} minutos de lectura", + "description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.blog.post.readMore": { + "message": "Leer más", + "description": "The label used in blog post item excerpts to link to full blog posts" + }, + "theme.blog.post.readMoreLabel": { + "message": "Leer más sobre {title}", + "description": "The ARIA label for the link to full blog posts from excerpts" + }, + "theme.docs.breadcrumbs.home": { + "message": "Página de inicio", + "description": "The ARIA label for the home page in the breadcrumbs" + }, + "theme.docs.sidebar.collapseButtonTitle": { + "message": "Colapsar la barra lateral", + "description": "The title attribute for collapse button of doc sidebar" + }, + "theme.docs.sidebar.collapseButtonAriaLabel": { + "message": "Colapsar la barra lateral", + "description": "The title attribute for collapse button of doc sidebar" + }, + "theme.docs.sidebar.navAriaLabel": { + "message": "Barra lateral de documentos", + "description": "The ARIA label for the sidebar navigation" + }, + "theme.docs.sidebar.closeSidebarButtonAriaLabel": { + "message": "Cerrar la barra de navegación", + "description": "The ARIA label for close button of mobile sidebar" + }, + "theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": { + "message": "← Volver al menú principal", + "description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)" + }, + "theme.docs.sidebar.toggleSidebarButtonAriaLabel": { + "message": "Alternar barra de navegación", + "description": "The ARIA label for hamburger menu button of mobile navigation" + }, + "theme.docs.sidebar.expandButtonTitle": { + "message": "Ampliar la barra lateral", + "description": "The ARIA label and title attribute for expand button of doc sidebar" + }, + "theme.docs.sidebar.expandButtonAriaLabel": { + "message": "Ampliar la barra lateral", + "description": "The ARIA label and title attribute for expand button of doc sidebar" + }, + "theme.Playground.result": { + "message": "Resultado", + "description": "The result label of the live codeblocks" + }, + "theme.Playground.liveEditor": { + "message": "Editor en vivo", + "description": "The live editor label of the live codeblocks" + }, + "theme.SearchPage.existingResultsTitle": { + "message": "Resultados de la búsqueda para \"{query}\"", + "description": "The search page title for non-empty query" + }, + "theme.SearchPage.emptyResultsTitle": { + "message": "Buscar en la documentación", + "description": "The search page title for empty query" + }, + "theme.SearchPage.searchContext.everywhere": { + "message": "en todas partes" + }, + "theme.SearchPage.documentsFound.plurals": { + "message": "1 documento encontrado|{count} documentos encontrados", + "description": "Pluralized label for \"{count} documents found\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" + }, + "theme.SearchPage.noResultsText": { + "message": "No se han encontrado documentos", + "description": "The paragraph for empty search result" + }, + "theme.SearchBar.noResultsText": { + "message": "No hay resultados" + }, + "theme.SearchBar.seeAll": { + "message": "Ver todos los resultados" + }, + "theme.SearchBar.seeAllOutsideContext": { + "message": "Vea los resultados fuera de {context}" + }, + "theme.SearchBar.searchInContext": { + "message": "Ver todos los resultados en {context}" + }, + "theme.SearchBar.label": { + "message": "Buscar", + "description": "The ARIA label and placeholder for search button" + }, + "theme.ErrorPageContent.tryAgain": { + "message": "Inténtelo de nuevo", + "description": "The label of the button to try again rendering when the React error boundary captures an error" + }, + "theme.common.skipToMainContent": { + "message": "Ir al contenido principal", + "description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation" + }, + "theme.tags.tagsPageTitle": { + "message": "Etiquetas", + "description": "The title of the tag list page" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current.json b/i18n/es/docusaurus-plugin-content-docs/current.json new file mode 100644 index 00000000..e6e111f5 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current.json @@ -0,0 +1,50 @@ +{ + "version.label": { + "message": "Siguiente", + "description": "The label for version current" + }, + "sidebar.tutorialSidebar.category.Core concepts": { + "message": "Conceptos fundamentales", + "description": "The label for category Core concepts in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Core concepts.link.generated-index.description": { + "message": "Aprenda los conceptos fundamentales del servidor WebSocket de la Deriv API y sus características", + "description": "The generated-index page description for category Core concepts in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Code Examples": { + "message": "Ejemplos de código", + "description": "The label for category Code Examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Code Examples.link.generated-index.description": { + "message": "Aprenda más sobre la API con nuestros ejemplos de código", + "description": "The generated-index page description for category Code Examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.JavaScript Examples": { + "message": "Ejemplos en JavaScript", + "description": "The label for category JavaScript Examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.JavaScript Examples.link.generated-index.description": { + "message": "Ejemplos de código JavaScript", + "description": "The generated-index page description for category JavaScript Examples in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Languages": { + "message": "Lenguajes", + "description": "The label for category Languages in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Languages.link.generated-index.description": { + "message": "Aprenda a utilizar las funciones de la Deriv WebSocket API con el lenguaje de su elección", + "description": "The generated-index page description for category Languages in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.JavaScript": { + "message": "JavaScript", + "description": "The label for category JavaScript in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.JavaScript.link.generated-index.description": { + "message": "Aprenda como utilizar las Deriv WebSocket API con JavaScript.", + "description": "The generated-index page description for category JavaScript in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Guides": { + "message": "Guías", + "description": "The label for category Guides in sidebar tutorialSidebar" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/_category_.json new file mode 100644 index 00000000..d20c1083 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Bibliotecas de clientes", + "position": 5, + "link": { + "type": "generated-index", + "description": "Aprenda a utilizar las funciones de la API websocket de Deriv con nuestras bibliotecas de clientes" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/flutter/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/flutter/_category_.json new file mode 100644 index 00000000..9f49a19e --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/flutter/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Cliente Flutter", + "position": 2, + "link": { + "type": "generated-index", + "description": "Documentos de Cliente Flutter" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/flutter/project-setup/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/flutter/project-setup/index.md new file mode 100644 index 00000000..afb8d63b --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/flutter/project-setup/index.md @@ -0,0 +1,11 @@ +--- +title: Configuración del proyecto +sidebar_label: Configurar +sidebar_position: 0 +--- + +Consulte la documentación de la biblioteca [aquí](https://github.com/deriv-com/flutter-deriv-api) + +:::precaución +Vamos a actualizar estas páginas en el futuro cuando tengamos contenido para ellas +::: diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/intro.md b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/intro.md new file mode 100644 index 00000000..8bb2bfd6 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/intro.md @@ -0,0 +1,8 @@ +--- +title: Introducción +sidebar_label: Introducción +sidebar_position: 0 +description: Introducción a las bibliotecas de clientes +--- + +## Introducción diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/python/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/python/_category_.json new file mode 100644 index 00000000..ea6f1123 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/python/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Cliente Python", + "position": 1, + "link": { + "type": "generated-index", + "description": "Documentos de Python" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/python/project-setup/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/python/project-setup/index.md new file mode 100644 index 00000000..06b3b2bf --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/python/project-setup/index.md @@ -0,0 +1,11 @@ +--- +title: Configuración del proyecto +sidebar_label: Configuración +sidebar_position: 0 +--- + +Consulte la documentación de la biblioteca [aquí](https://binary-com.github.io/python-deriv-api/) + +:: :Precaución +Actualizaremos estas páginas en el futuro cuando tengamos contenido para ellas +::: diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/typescript/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/typescript/_category_.json new file mode 100644 index 00000000..5c928a93 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/typescript/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Cliente Typescript", + "position": 0, + "link": { + "type": "generated-index", + "description": "Documentos de Javascript / Typescript" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/typescript/project-setup/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/typescript/project-setup/index.md new file mode 100644 index 00000000..12c0ecdd --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_client-libraries/typescript/project-setup/index.md @@ -0,0 +1,11 @@ +--- +title: Configuración del proyecto +sidebar_label: Configuración +sidebar_position: 0 +--- + +Consulte la documentación de la biblioteca [aquí](https://binary-com.github.io/deriv-api/) + +:::Precaución +Actualizaremos estas páginas en el futuro cuando tengamos contenido para ellas +::: diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_faq/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_faq/_category_.json new file mode 100644 index 00000000..73d9e106 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_faq/_category_.json @@ -0,0 +1,7 @@ +{ + "label": "Preguntas Frecuentes", + "position": 7, + "link": { + "type": "generated-index" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_faq/conditions-of-using-deriv-api/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_faq/conditions-of-using-deriv-api/index.md new file mode 100644 index 00000000..acbb007a --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_faq/conditions-of-using-deriv-api/index.md @@ -0,0 +1,14 @@ +--- +title: Condiciones de uso de la API Deriv +sidebar_label: Condiciones de uso de la API Deriv +sidebar_position: 1 +tags: + - preguntas frecuentes +keywords: + - preguntas frecuentes +description: 'Condiciones de uso de la API Deriv' +--- + +La API Deriv es gratuita y está sujeta a nuestros términos, condiciones [](https://deriv.com/terms-and-conditions) y [copyright](https://deriv.com/tnc/business-partners-general-terms.pdf). + +Si encuentra alguna dificultad al utilizarla o si necesita ayuda, póngase en contacto con nosotros a través de uno de nuestros foros de asistencia o por correo electrónico. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_faq/how-can-you-earn-with-deriv-api/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_faq/how-can-you-earn-with-deriv-api/index.md new file mode 100644 index 00000000..d6b507e1 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_faq/how-can-you-earn-with-deriv-api/index.md @@ -0,0 +1,20 @@ +--- +title: '¿Cómo puedo ganar dinero con la API deriv?' +sidebar_label: '¿Cómo puedo ganar dinero con la API deriv?' +sidebar_position: 1 +tags: + - preguntas frecuentes +keywords: + - preguntas frecuentes +description: 'Cómo ganar dinero con la API deriv' +--- + +- Puede ganar comisiones por las operaciones y los pagos que realicen sus clientes a través de de los sitios web y aplicaciones que cree con la API Deriv. Obtenga más detalles sobre los planes de comisiones [aquí](https://deriv.com/partners/affiliate-ib). + +- También puede ganar con los márgenes de beneficio en cada contrato que compre a través de una aplicación de trading que hayas creado con la API Deriv. El margen lo define usted y puede ser de hasta el 5%. + +A continuación se muestra un ejemplo de cómo se calcula el margen de beneficio: + +- Para obtener un pago de 2 **USD** : Inversión del cliente sin margen = 1.07 **USD** +- Con el margen de beneficio (por ejemplo, 2%), un cliente paga : Inversión del cliente con margen = Inversión + (pago x margen) +- Inversión del cliente con margen = 1.07 **USD** + (2 **USD** x 2%) = 1.11 **USD** diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_faq/what-can-you-do-with-deriv-api/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_faq/what-can-you-do-with-deriv-api/index.md new file mode 100644 index 00000000..0b7941c7 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_faq/what-can-you-do-with-deriv-api/index.md @@ -0,0 +1,19 @@ +--- +title: '¿Qué puedo hacer con la API deriv?' +sidebar_label: '¿Qué puedo hacer con la API deriv?' +sidebar_position: 0 +tags: + - preguntas frecuentes +keywords: + - preguntas frecuentes +description: 'características de la API deriv' +--- + +La API Deriv le permite realizar casi todas las funciones de las plataformas Deriv, ya que comparten la misma API. Para nuestras plataformas de CFD (Deriv MT5 y Deriv X), la funcionalidad API sólo está disponible para algunas acciones de gestión de cuentas. + +Los usuarios de nuestra API suelen realizar las siguientes actividades: + +- Construir sitios web similares a Deriv pero con características diferentes. +- Crear aplicaciones de escritorio para ejecutar operaciones para sí mismos y sus clientes. +- Explorar la información histórica sobre los ticks. +- Automatizar los servicios como agentes de pago. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_intro_backup.md b/i18n/es/docusaurus-plugin-content-docs/current/_intro_backup.md new file mode 100644 index 00000000..1c3a7af6 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_intro_backup.md @@ -0,0 +1,40 @@ +--- +title: Introducción +hide_title: false +draft: false +sidebar_label: Introducción +sidebar_position: 0 +tags: + - introducción +keywords: + - deriv + - api + - introducción +description: Introducción a la Deriv API +--- + +Nuestra documentación está dividida en varias secciones: + +- [Configuración de una aplicación Deriv](/docs/setting-up-a-deriv-application.md) +- [Terminología](category/terminology) +- [Conceptos fundamentales](category/core-concepts) +- [Lenguajes](category/languages) +- [Bibliotecas de clientes](category/client-libraries) +- [Guías](category/guides) +- [Preguntas Frecuentes](category/faq) + +### Inicio rápido + +Eche un vistazo a las páginas de [conceptos fundamentales](category/core-concepts) y de [terminología](category/terminology) y tómese su tiempo para leerlas. Estos conceptos lo ayudarán a familiarizarse con nuestra API de servidor websocket y cómo usarla de manera más eficiente. No están relacionados con ninguno de nuestros marcos o bibliotecas. + +Cuando lea las páginas de [conceptos fundamentales](category/core-concepts) y de [terminología](category/terminology), puede empezar a elegir su enfoque de implementación en función del lenguaje, el marco o la biblioteca que desee utilizar en su aplicación. + +El uso de nuestras [bibliotecas de clientes](category/client-libraries) es opcional y también puede obtener el mismo resultado con los tutoriales que se proporcionan en la [, sección de lenguajes](category/languages), pero nuestras bibliotecas de clientes le ofrecen llamadas de API más `sólidas `, y de `tipos seguros`. + +### Uso de nuestro servidor websocket únicamente con funciones de lenguajes + +Si desea utilizar nuestra api de servidor websocket con un lenguaje de codificación específico, eche un vistazo a la [sección de lenguajes](category/languages) y continúe su viaje desde allí. + +:::precaución +Le sugerimos que utilice nuestras [bibliotecas de cliente](category/client-libraries), ya que ofrecen una mejor experiencia de desarrollador. +::: diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/_category_.json new file mode 100644 index 00000000..1ec0de93 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Terminología", + "position": 1, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestra terminología" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/Identity-verfication-add-document/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/Identity-verfication-add-document/index.md new file mode 100644 index 00000000..5b0a183b --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/Identity-verfication-add-document/index.md @@ -0,0 +1,26 @@ +--- +title: Verificación de identidad +hide_title: false +draft: false +sidebar_label: Verificación de identidad +sidebar_position: 4 +tags: + - conceptos + - terminología + - identidad + - verificación + - añadir + - documento +keywords: + - conceptos + - terminología + - identidad + - verificación + - añadir + - documento +description: '¿Qué es la verificación de identidad en las aplicaciones de Deriv?' +--- + +### ¿Qué es la verificación de identidad en las aplicaciones de Deriv? + +Añade información sobre el documento, como el país emisor, la identificación y el tipo, para los procesos de verificación de la identidad. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/_category_.json new file mode 100644 index 00000000..8418b971 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Cuenta", + "position": 1, + "link": { + "type": "generated-index", + "description": "Conozca sobre nuestra categoría de cuentas" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/document-upload/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/document-upload/index.md new file mode 100644 index 00000000..4dca6f9c --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/document-upload/index.md @@ -0,0 +1,22 @@ +--- +title: Subir documento +hide_title: false +draft: false +sidebar_label: Subir documento +sidebar_position: 4 +tags: + - conceptos + - documento + - subir + - terminología +keywords: + - conceptos + - documento + - subir + - terminología +description: '¿Qué es la llamada de API de carga de documentos?' +--- + +### ¿Qué es la llamada de API de carga de documentos? + +Solicite información de KYC al cliente diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/_category_.json new file mode 100644 index 00000000..143d21a5 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Evaluación Financiera", + "position": 1, + "link": { + "type": "índice-generado", + "description": "Aprenda sobre nuestras llamadas de API de Evaluación Financiera" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/get-financial-assessment/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/get-financial-assessment/index.md new file mode 100644 index 00000000..e1ceb130 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/get-financial-assessment/index.md @@ -0,0 +1,26 @@ +--- +title: Obtenga una evaluación financiera +hide_title: false +draft: false +sidebar_label: Obtenga una evaluación financiera +sidebar_position: 4 +tags: + - conceptos + - obtener + - financiera + - evaluación + - terminología +keywords: + - conceptos + - obtener + - financiera + - evaluación + - terminología +description: '¿Qué es la llamada de API de Obtener evaluación financiera?' +--- + +### ¿Qué es la llamada de API de Obtener evaluación financiera? + +Esta llamada obtiene los detalles de la evaluación financiera. + +La "evaluación financiera" es un cuestionario que deben completar los clientes de determinadas Landing Companies, debido a los requisitos reglamentarios y de KYC (conozca a su cliente). diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/set-financial-assessment/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/set-financial-assessment/index.md new file mode 100644 index 00000000..72fdebe1 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/financial-assessment-calls/set-financial-assessment/index.md @@ -0,0 +1,18 @@ +--- +title: Establecer Evaluación Financiera +hide_title: false +draft: false +sidebar_label: Establecer Evaluación Financiera +sidebar_position: 4 +tags: + - conceptos + - símbolos activos +keywords: + - conceptos + - símbolos activos +description: '¿Qué es la llamada de API de Establecer Evaluación Financiera?' +--- + +### ¿Qué es la llamada de API de Establecer Evaluación Financiera? + +Esta llamada establece los detalles de la evaluación financiera en función de las respuestas del cliente para analizar si posee la experiencia y los conocimientos necesarios para comprender los riesgos que implica la operación de opciones binarias. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/get-account-settings/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/get-account-settings/index.md new file mode 100644 index 00000000..b258fa39 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/get-account-settings/index.md @@ -0,0 +1,24 @@ +--- +title: Obtener las configuraciones de la cuenta +hide_title: false +draft: false +sidebar_label: Obtener las configuraciones de la cuenta +sidebar_position: 4 +tags: + - conceptos + - obtener + - cuenta + - configuraciones + - terminología +keywords: + - conceptos + - obtener + - cuenta + - configuraciones + - terminología +description: '¿Qué es la llamada de API de Obtener las configuraciones de cuenta?' +--- + +### ¿Qué es la llamada de API de Obtener las configuraciones de cuenta? + +Obtener las configuraciones del usuario (correo electrónico, fecha de nacimiento, dirección, etc.) diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/portfolio/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/portfolio/index.md new file mode 100644 index 00000000..252bf08a --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/portfolio/index.md @@ -0,0 +1,20 @@ +--- +title: Cartera +hide_title: false +draft: false +sidebar_label: Cartera +sidebar_position: 4 +tags: + - conceptos + - cartera + - terminología +keywords: + - conceptos + - cartera + - terminología +description: '¿Qué es la llamada de API de Cartera?' +--- + +### ¿Qué es la llamada a la API Portfolio? + +Recibir información sobre mi cartera actual de opciones sobresalientes. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/profit-table/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/profit-table/index.md new file mode 100644 index 00000000..5bd25721 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/profit-table/index.md @@ -0,0 +1,22 @@ +--- +title: Tabla de ganancias +hide_title: false +draft: false +sidebar_label: Tabla de ganancias +sidebar_position: 4 +tags: + - conceptos + - ganancia + - tabla + - terminología +keywords: + - conceptos + - ganancia + - tabla + - terminología +description: '¿Qué es la llamada de API de Tabla de ganancias?' +--- + +### ¿Qué es la llamada de API de Tabla de Ganancias? + +Recupere un resumen de la tabla de ganancias de la cuenta, de acuerdo con los criterios de búsqueda dados. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/reality-check/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/reality-check/index.md new file mode 100644 index 00000000..0ea80deb --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/reality-check/index.md @@ -0,0 +1,26 @@ +--- +title: Verificación de realidad +hide_title: false +draft: false +sidebar_label: Verificación de realidad +sidebar_position: 4 +tags: + - conceptos + - realidad + - verificación + - terminología +keywords: + - conceptos + - realidad + - verificación + - terminología +description: '¿Qué es la llamada API de Verificación de realidad?' +--- + +### ¿Qué es la llamada API de Verificación de realidad? + +Recupere el resumen de las operaciones y de la cuenta del cliente para la facilidad de verificación de realidad. + +Una "comprobación de realidad" significa una visualización del tiempo transcurrido desde el inicio de la sesión y de las ganancias/pérdidas asociadas del cliente. + +El servicio de verificación de realidad es un requisito reglamentario para determinadas landing companies. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/statement/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/statement/index.md new file mode 100644 index 00000000..22a89624 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/statement/index.md @@ -0,0 +1,20 @@ +--- +title: Extracto +hide_title: false +draft: false +sidebar_label: Extracto +sidebar_position: 4 +tags: + - conceptos + - extracto + - terminología +keywords: + - conceptos + - extracto + - terminología +description: '¿Qué es la llamada API de Extracto?' +--- + +### ¿Qué es la llamada API de Extracto? + +Recuperar un resumen de las transacciones de la cuenta, según los criterios de búsqueda dados. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/virtual-vs-real-account/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/virtual-vs-real-account/_category_.json new file mode 100644 index 00000000..5cf264cb --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/account/virtual-vs-real-account/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Cuenta Virtual / Real", + "position": 1, + "link": { + "type": "generated-index", + "description": "Conozca nuestras llamadas API de Cuentas Virtuales y Reales" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/_category_.json new file mode 100644 index 00000000..1bd21aa8 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Contrato", + "position": 2, + "link": { + "type": "generated-index", + "description": "Aprenda acerca de nuestra Categoría de Contratos" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/_category_.json new file mode 100644 index 00000000..752f2325 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Compra/Venta de contratos", + "position": 2, + "link": { + "type": "generated-index", + "description": "Aprenda más sobre nuestras llamadas API de Compra y Venta de contratos" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/buy-contract-multiple/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/buy-contract-multiple/index.md new file mode 100644 index 00000000..9d7c98ed --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/buy-contract-multiple/index.md @@ -0,0 +1,28 @@ +--- +title: Comprar contrato para multiples cuentas +hide_title: false +draft: false +sidebar_label: Comprar contrato para multiples cuentas +sidebar_position: 4 +tags: + - conceptos + - comprar + - contrato + - multiples + - cuentas + - terminología +keywords: + - conceptos + - comprar + - contrato + - multiples + - cuentas + - terminología +description: '¿Qué es la Llamada API de Comprar contrato para multiples cuentas?' +--- + +### ¿Qué es la Llamada API de Comprar contrato para multiples cuentas? + +Comprar un Contrato para varias cuentas especificadas por el parámetro `tokens`. + +Tenga en cuenta que, aunque se trata de una llamada autorizada, el contrato no se compra para la cuenta autorizada. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/buy-contract/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/buy-contract/index.md new file mode 100644 index 00000000..3d0f100b --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/buy-contract/index.md @@ -0,0 +1,22 @@ +--- +title: Comprar contrato +hide_title: false +draft: false +sidebar_label: Comprar contrato +sidebar_position: 4 +tags: + - conceptos + - comprar + - contrato + - terminología +keywords: + - conceptos + - comprar + - contrato + - terminología +description: '¿Qué es la llamada API de Comprar Contrato?' +--- + +### ¿Qué es la llamada API de Comprar Contrato? + +Compre un contrato. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/sell-contract-multiple/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/sell-contract-multiple/index.md new file mode 100644 index 00000000..71e88657 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/sell-contract-multiple/index.md @@ -0,0 +1,30 @@ +--- +title: 'Vender contratos: Múltiples cuentas' +hide_title: false +draft: false +sidebar_label: 'Vender contratos: Múltiples cuentas' +sidebar_position: 4 +tags: + - conceptos + - vender + - contrato + - múltiples + - cuentas + - terminología +keywords: + - conceptos + - vender + - contrato + - múltiples + - cuentas + - terminología +description: '¿Qué es la llamada API de Vender contratos: Multiples cuentas?' +--- + +### ¿Qué es la llamada API de Vender contratos: Multiples cuentas? + +Venda contratos para varias cuentas simultáneamente. + +Utiliza la respuesta shortcode de `buy_contract_for_multiple_accounts` para identificar el contrato, y tokens de autorización para seleccionar en qué cuentas vender esos contratos. + +Tenga en cuenta que solo se verán afectadas las cuentas identificadas por los tokens. Esto no venderá el contrato en la cuenta actualmente autorizada a menos que incluya el token para la cuenta actual. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/sell-contract/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/sell-contract/index.md new file mode 100644 index 00000000..fab72efb --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/buy-sell-contract-calls/sell-contract/index.md @@ -0,0 +1,22 @@ +--- +title: Contrato de Venta +hide_title: false +draft: false +sidebar_label: Contrato de venta +sidebar_position: 4 +tags: + - conceptos + - venta + - contrato + - terminología +keywords: + - conceptos + - venta + - contrato + - terminología +description: '¿Qué es la llamada API de Contrato de Venta?' +--- + +### ¿Qué es la llamada API de Contrato de Venta? + +Vender un Contrato tal como se identificó en una llamada anterior de la `cartera`. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/contracts-for-symbol/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/contracts-for-symbol/index.md new file mode 100644 index 00000000..4b253a0a --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/contracts-for-symbol/index.md @@ -0,0 +1,22 @@ +--- +title: Contratos por símbolo +hide_title: false +draft: false +sidebar_label: Contratos por símbolo +sidebar_position: 4 +tags: + - conceptos + - contratos + - símbolo + - terminología +keywords: + - conceptos + - contratos + - símbolo + - terminología +description: '¿Qué es la llamada API de Contratos por símbolo?' +--- + +### ¿Qué es la llamada API de Contratos por símbolo? + +Para un símbolo determinado, obtenga la lista de contratos disponibles actualmente y los últimos límites de barrera y duración para cada contrato. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/_category_.json new file mode 100644 index 00000000..c2c45a44 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamada de Propuestas de precios", + "position": 2, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas API de Propuestas de precios" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/price-proposal-open-contracts/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/price-proposal-open-contracts/index.md new file mode 100644 index 00000000..9a97e97a --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/price-proposal-open-contracts/index.md @@ -0,0 +1,26 @@ +--- +title: 'Propuesta de precios: Contratos Abiertos' +hide_title: false +draft: false +sidebar_label: 'Propuesta de precios: Contratos abiertos' +sidebar_position: 4 +tags: + - conceptos + - precio + - propuesta + - abierto + - contratos + - terminología +keywords: + - conceptos + - precio + - propuesta + - abierto + - contratos + - terminología +description: '¿Qué es la Llamada API de Propuesta de precios: Contratos Abiertos?' +--- + +### ¿Qué es la Llamada API de Propuesta de precios: Contratos Abiertos? + +Obtiene el último precio de un contrato específico. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/price-proposal/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/price-proposal/index.md new file mode 100644 index 00000000..0c01dd02 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/price-proposal-calls/price-proposal/index.md @@ -0,0 +1,22 @@ +--- +title: Propuesta de precio +hide_title: false +draft: false +sidebar_label: Propuesta de precio +sidebar_position: 4 +tags: + - conceptos + - precio + - propuesta + - terminología +keywords: + - conceptos + - precio + - propuesta + - terminología +description: '¿Qué es la llamada API de Propuesta de precios?' +--- + +### ¿Qué es la llamada API de Propuesta de precios? + +Obtiene el último precio de un contrato específico. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/sell-expired-contracts/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/sell-expired-contracts/index.md new file mode 100644 index 00000000..89b7e1bf --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/contract/sell-expired-contracts/index.md @@ -0,0 +1,24 @@ +--- +title: Vender Contratos Expirados +hide_title: false +draft: false +sidebar_label: Vender Contratos Expirados +sidebar_position: 4 +tags: + - conceptos + - vender + - expirado + - contratos + - terminología +keywords: + - conceptos + - vender + - expirado + - contratos + - terminología +description: '¿Qué es la llamada API de Vender Contratos Expirados?' +--- + +### ¿Qué es la llamada API de Vender Contratos Expirados? + +Esta llamada intentará vender cualquier contrato expirado y devolverá el número de contratos vendidos. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/_category_.json new file mode 100644 index 00000000..7560acb0 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Copy Trading", + "position": 1, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas API de Copy Trading" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-list/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-list/index.md new file mode 100644 index 00000000..876d6d8f --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-list/index.md @@ -0,0 +1,26 @@ +--- +title: 'Copy Trading: Lista' +hide_title: false +draft: false +sidebar_label: 'Copy Trading: Lista' +sidebar_position: 4 +tags: + - P2P + - copy + - trading + - lista + - conceptos + - terminología +keywords: + - P2P + - copy + - trading + - lista + - conceptos + - terminología +description: '¿Qué es la llamada API de Copy Trading: Lista?' +--- + +### ¿Qué es la llamada API de Copy Trading: Lista? + +Recupera una lista de copiadores y/o traders activos para copy trading diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-start/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-start/index.md new file mode 100644 index 00000000..7382f8e8 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-start/index.md @@ -0,0 +1,26 @@ +--- +title: 'Copy Trading: Inicio' +hide_title: false +draft: false +sidebar_label: 'Copy Trading: Inicio' +sidebar_position: 4 +tags: + - P2P + - copy + - trading + - inicio + - conceptos + - terminología +keywords: + - P2P + - copy + - trading + - inicio + - conceptos + - terminología +description: '¿Qué es la llamada API Copy Trading: Inicio?' +--- + +### ¿Qué es la llamada API Copy Trading: Inicio? + +Inicie las operaciones de copy trader. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-statistics/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-statistics/index.md new file mode 100644 index 00000000..9c54461d --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-statistics/index.md @@ -0,0 +1,26 @@ +--- +title: 'Copy Trading: Estadísticas' +hide_title: false +draft: false +sidebar_label: 'Copy Trading: Estadísticas' +sidebar_position: 4 +tags: + - P2P + - copiar + - trading + - estadísticas + - conceptos + - terminología +keywords: + - P2P + - copy + - trading + - estadísticas + - conceptos + - terminología +description: '¿Qué es la llamada API de Copy Trading: Estadísticas?' +--- + +### ¿Qué es la llamada API de Copy Trading: Estadísticas? + +Recupere las estadísticas de rendimiento, operaciones, riesgos y de copiadores del operador. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-stop/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-stop/index.md new file mode 100644 index 00000000..9d82b07d --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/copy-trading/copy-trading-stop/index.md @@ -0,0 +1,26 @@ +--- +title: 'Copy Trading: Stop' +hide_title: false +draft: false +sidebar_label: 'Copy Trading: Stop' +sidebar_position: 4 +tags: + - P2P + - copy + - trading + - stop + - conceptos + - terminología +keywords: + - P2P + - copy + - trading + - stop + - conceptos + - terminología +description: '¿Qué es la llamada API de Copy Trading: Stop?' +--- + +### ¿Qué es la llamada API de Copy Trading: Stop? + +Inicie las operaciones de copy trader. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/_category_.json new file mode 100644 index 00000000..ceb82511 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "P2P", + "position": 6, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestra categoría P2P" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/_category_.json new file mode 100644 index 00000000..bdc9cee8 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Publicidad P2P", + "position": 6, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas API de Publicidades P2P" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-create/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-create/index.md new file mode 100644 index 00000000..f5a676fe --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-create/index.md @@ -0,0 +1,24 @@ +--- +title: Crear Anuncio P2P +hide_title: false +draft: false +sidebar_label: Crear Anuncio P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - anuncio + - crear + - terminología +keywords: + - conceptos + - p2p + - anuncio + - crear + - terminología +description: '¿Qué es la llamada API de Crear Anuncio P2P?' +--- + +### ¿Qué es la llamada API de Crear Anuncio P2P? + +Crea un anuncio P2P (Peer to Peer). Solo puede ser utilizado por un anunciante P2P autorizado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-information/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-information/index.md new file mode 100644 index 00000000..ff58cced --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-information/index.md @@ -0,0 +1,24 @@ +--- +title: Información de Anuncio P2P +hide_title: false +draft: false +sidebar_label: Información de Anuncio P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - anuncio + - información + - terminología +keywords: + - conceptos + - p2p + - anuncio + - información + - terminología +description: '¿Qué es la llamada API de Información de Anuncio P2P?' +--- + +### ¿Qué es la llamada API de Información de Anuncio P2P? + +Recuperar información sobre un anuncio P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-list/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-list/index.md new file mode 100644 index 00000000..f7e292b8 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-list/index.md @@ -0,0 +1,24 @@ +--- +title: Lista de Anuncios P2P +hide_title: false +draft: false +sidebar_label: Lista de Anuncios P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - anuncio + - Lista + - terminología +keywords: + - conceptos + - p2p + - anuncio + - Lista + - terminología +description: '¿Qué es la llamada API de Lista de Anuncios P2P?' +--- + +### ¿Qué es la llamada API de Lista de Anuncios P2P? + +Devuelve los anuncios disponibles para su uso con `p2p_order_create` diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-update/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-update/index.md new file mode 100644 index 00000000..3983abaf --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertisement/p2p-advert-update/index.md @@ -0,0 +1,24 @@ +--- +title: Actualización de Anuncio P2P +hide_title: false +draft: false +sidebar_label: Actualización de Anuncio P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - anuncio + - actualizar + - terminología +keywords: + - conceptos + - p2p + - anuncio + - actualizar + - terminología +description: '¿Qué es la llamada API de Actualización de Anuncio P2P?' +--- + +### ¿Qué es la llamada API de Actualización de Anuncio P2P? + +Actualiza un anuncio P2P. Sólo puede ser utilizado por el anunciante. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/_category_.json new file mode 100644 index 00000000..37fded50 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Anunciante P2P", + "position": 6, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas API de Anunciante P2P" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-advert/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-advert/index.md new file mode 100644 index 00000000..ab1cbe1e --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-advert/index.md @@ -0,0 +1,24 @@ +--- +title: Anuncios de Anunciantes P2P +hide_title: false +draft: false +sidebar_label: Anuncios de Anunciantes P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - anuncio + - anunciante + - terminología +keywords: + - conceptos + - p2p + - anuncio + - anunciante + - terminología +description: '¿Qué es la llamada API de Anuncios de Anunciantes P2P?' +--- + +### ¿Qué es la llamada API de Anuncios de Anunciantes P2P? + +Devuelve todos los anuncios P2P creados por el cliente autorizado. Sólo puede ser utilizado por un anunciante P2P registrado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-create/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-create/index.md new file mode 100644 index 00000000..f54febab --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-create/index.md @@ -0,0 +1,24 @@ +--- +title: Crear Anunciante P2P +hide_title: false +draft: false +sidebar_label: Crear Anunciante P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - crear + - anunciante + - terminología +keywords: + - conceptos + - p2p + - crear + - anunciante + - terminología +description: '¿Qué es la llamada API de Crear Anunciantes P2P?' +--- + +### ¿Qué es la llamada API de Crear Anunciantes P2P? + +Registra al cliente como anunciante P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-information/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-information/index.md new file mode 100644 index 00000000..63825efd --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-information/index.md @@ -0,0 +1,24 @@ +--- +title: Información de Anunciante P2P +hide_title: false +draft: false +sidebar_label: Información de Anunciante P2P +sidebar_position: 4 +tags: + - P2P + - anunciante + - información + - conceptos + - terminología +keywords: + - P2P + - anunciante + - información + - conceptos + - terminología +description: '¿Qué es la llamada API de Información de Anunciante P2P?' +--- + +### ¿Qué es la llamada API de información de Anunciante P2P? + +Recuperar información sobre un anunciante P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-payment-methods/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-payment-methods/index.md new file mode 100644 index 00000000..65a29056 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-payment-methods/index.md @@ -0,0 +1,26 @@ +--- +title: Métodos de Pago de Anunciantes P2P +hide_title: false +draft: false +sidebar_label: Métodos de Pago de Anunciantes P2P +sidebar_position: 4 +tags: + - P2P + - pago + - anunciante + - métodos + - conceptos + - terminología +keywords: + - P2P + - pago + - anunciante + - métodos + - conceptos + - terminología +description: '¿Qué es la llamada API de Métodos de Pago de Anunciantes P2P?' +--- + +### ¿Qué es la llamada API de Métodos de Pago de Anunciantes P2P? + +Gestionar o catalogar los métodos de pago de los anunciantes P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-relations/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-relations/index.md new file mode 100644 index 00000000..c92b49be --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-relations/index.md @@ -0,0 +1,24 @@ +--- +title: Relaciones de Anunciantes P2P +hide_title: false +draft: false +sidebar_label: Relaciones de Anunciantes P2P +sidebar_position: 4 +tags: + - P2P + - anunciante + - relaciones + - conceptos + - terminología +keywords: + - P2P + - anunciante + - relaciones + - conceptos + - terminología +description: '¿Qué es la llamada API de Relaciones de Anunciantes P2P?' +--- + +### ¿Qué es la llamada API de Relaciones de Anunciantes P2P? + +Actualiza y devuelve los anunciantes favoritos y bloqueados del usuario actual. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-update/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-update/index.md new file mode 100644 index 00000000..d196f502 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-advertiser/p2p-advertiser-update/index.md @@ -0,0 +1,24 @@ +--- +title: Actualización de Anunciante P2P +hide_title: false +draft: false +sidebar_label: Actualización de Anunciante P2P +sidebar_position: 4 +tags: + - P2P + - anunciante + - actualizar + - conceptos + - terminología +keywords: + - P2P + - anunciante + - actualizar + - conceptos + - terminología +description: '¿Qué es la llamada API de Actualización de Anunciante P2P?' +--- + +### ¿Qué es la llamada API de Actualización de Anunciante P2P? + +Actualiza la información del anunciante P2P para la cuenta actual. Solo puede ser utilizado por un anunciante P2P autorizado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/_category_.json new file mode 100644 index 00000000..0cff0ec0 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Pedidos P2P", + "position": 6, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas de Pedidos P2P" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-cancel/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-cancel/index.md new file mode 100644 index 00000000..de6372d2 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-cancel/index.md @@ -0,0 +1,24 @@ +--- +title: Cancelación de Pedido P2P +hide_title: false +draft: false +sidebar_label: Cancelación de Pedido P2P +sidebar_position: 4 +tags: + - P2P + - cancelar + - orden + - conceptos + - terminología +keywords: + - P2P + - cancelar + - orden + - conceptos + - terminología +description: '¿Qué es la llamada API de Cancelación de Pedido P2P?' +--- + +### ¿Qué es la llamada API de Cancelación de Pedido P2P? + +Cancela un pedido P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-confirm/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-confirm/index.md new file mode 100644 index 00000000..d1ed55a8 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-confirm/index.md @@ -0,0 +1,24 @@ +--- +title: Confirmación de Pedido P2P +hide_title: false +draft: false +sidebar_label: Confirmación de Pedido P2P +sidebar_position: 4 +tags: + - P2P + - confirmar + - orden + - conceptos + - terminología +keywords: + - P2P + - confirmar + - orden + - conceptos + - terminología +description: '¿Qué es la llamada API de Confirmación de Pedido P2P?' +--- + +### ¿Qué es la llamada API de Confirmación de Pedido P2P? + +Confirme un pedido P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-create/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-create/index.md new file mode 100644 index 00000000..b65b7083 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-create/index.md @@ -0,0 +1,24 @@ +--- +title: Crear Pedido P2P +hide_title: false +draft: false +sidebar_label: Crear Pedido P2P +sidebar_position: 4 +tags: + - P2P + - crear + - orden + - conceptos + - terminología +keywords: + - P2P + - crear + - orden + - conceptos + - terminología +description: '¿Qué es la llamada API de Crear Pedido P2P?' +--- + +### ¿Qué es la llamada API de Crear Pedido P2P? + +Crea un pedido P2P para el anuncio especificado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-dispute/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-dispute/index.md new file mode 100644 index 00000000..dd8da914 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-dispute/index.md @@ -0,0 +1,24 @@ +--- +title: Disputa de pedido P2P +hide_title: false +draft: false +sidebar_label: Disputa de pedido P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - orden + - disputa + - terminología +keywords: + - conceptos + - p2p + - orden + - disputa + - terminología +description: '¿Qué es la llamada API de Disputa de pedido P2P?' +--- + +### ¿Qué es la llamada API de Disputa de pedido P2P? + +Disputar un pedido P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-information/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-information/index.md new file mode 100644 index 00000000..c80f0779 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-information/index.md @@ -0,0 +1,24 @@ +--- +title: Información de Pedido P2P +hide_title: false +draft: false +sidebar_label: Información de Pedido P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - orden + - información + - terminología +keywords: + - conceptos + - p2p + - orden + - información + - terminología +description: '¿Qué es la llamada API de Información de Pedido P2P?' +--- + +### ¿Qué es la llamada API de Información de Pedido P2P? + +Recupera la información sobre un pedido P2P. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-list/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-list/index.md new file mode 100644 index 00000000..f9a0de38 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-list/index.md @@ -0,0 +1,24 @@ +--- +title: Lista de Pedidos P2P +hide_title: false +draft: false +sidebar_label: Lista de Pedidos P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - pedido + - lista + - terminología +keywords: + - conceptos + - p2p + - pedido + - lista + - terminología +description: '¿Qué es la llamada API de Lista de Pedidos P2P?' +--- + +### ¿Qué es la llamada API de Lista de Pedidos P2P? + +Lista de pedidos activos. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-review/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-review/index.md new file mode 100644 index 00000000..5fe9ff12 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/p2p/p2p-order/p2p-order-review/index.md @@ -0,0 +1,24 @@ +--- +title: Reseña de Pedido P2P +hide_title: false +draft: false +sidebar_label: Reseña de Pedido P2P +sidebar_position: 4 +tags: + - conceptos + - p2p + - pedido + - revisión + - terminología +keywords: + - conceptos + - p2p + - pedido + - revisión + - terminología +description: '¿Qué es la llamada API de Reseña de Pedido P2P?' +--- + +### ¿Qué es la llamada API de Reseña de Pedido P2P? + +Crea una reseña para el pedido especificado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/_category_.json new file mode 100644 index 00000000..e8ecae9b --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Pago", + "position": 4, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestra Categoría de Pago" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/cashier-information/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/cashier-information/index.md new file mode 100644 index 00000000..13410650 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/cashier-information/index.md @@ -0,0 +1,22 @@ +--- +title: Información del Cajero +hide_title: false +draft: false +sidebar_label: Información del Cajero +sidebar_position: 4 +tags: + - conceptos + - cajero + - información + - terminología +keywords: + - conceptos + - cajero + - información + - terminología +description: '¿Qué es la llamada API de Información del Cajero?' +--- + +### ¿Qué es la llamada API de Información del Cajero? + +Solicita la información del cajero para el tipo especificado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/_category_.json new file mode 100644 index 00000000..893913d7 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Agente de Pago", + "position": 1, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas de Agentes de Pago" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-create/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-create/index.md new file mode 100644 index 00000000..373981fe --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-create/index.md @@ -0,0 +1,24 @@ +--- +title: Crear Agente de Pagos +hide_title: false +draft: false +sidebar_label: Crear Agente de Pagos +sidebar_position: 4 +tags: + - conceptos + - pago + - agente + - crear + - terminología +keywords: + - conceptos + - pago + - agente + - crear + - terminología +description: '¿Qué es la llamada API de Crear Agente de Pagos?' +--- + +### ¿Qué es la llamada API de Crear Agente de Pagos? + +Guarda los datos del agente de pagos del cliente. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-details/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-details/index.md new file mode 100644 index 00000000..53b1b890 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-details/index.md @@ -0,0 +1,24 @@ +--- +title: Datos del Agente de Pagos +hide_title: false +draft: false +sidebar_label: Datos del Agente de Pagos +sidebar_position: 4 +tags: + - conceptos + - pago + - agente + - detalles + - terminología +keywords: + - conceptos + - pago + - agente + - detalles + - terminología +description: '¿Qué es la llamada API de Datos del Agente de Pagos?' +--- + +### ¿Qué es la llamada API de Datos del Agente de Pagos? + +Obtenga los datos de agente de pagos del cliente. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-list/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-list/index.md new file mode 100644 index 00000000..4016b6e3 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-list/index.md @@ -0,0 +1,26 @@ +--- +title: 'Agente de pagos: Lista' +hide_title: false +draft: false +sidebar_label: 'Agente de pagos: Lista' +sidebar_position: 4 +tags: + - conceptos + - pago + - agente + - lista + - terminología +keywords: + - conceptos + - pago + - agente + - lista + - terminología +description: '¿Qué es la llamada API de Agente de pagos: Lista?' +--- + +### ¿Qué es la llamada API de Agente de pagos: Lista? + +Devolverá una lista de agentes de pago de un país determinado para una moneda determinada. + +Los agentes de pago permiten a los usuarios depositar y retirar fondos utilizando métodos de pago locales que pueden no estar disponibles a través del sistema de cajero del sitio web principal. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-transfer/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-transfer/index.md new file mode 100644 index 00000000..41a51293 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-transfer/index.md @@ -0,0 +1,24 @@ +--- +title: 'Agente de pagos: Transferencia' +hide_title: false +draft: false +sidebar_label: 'Agente de pagos: Transferencia' +sidebar_position: 4 +tags: + - conceptos + - pago + - agente + - transferencia + - terminología +keywords: + - conceptos + - pago + - agente + - transferencia + - terminología +description: '¿Qué es la llamada API de Agente de pagos: Transferencia?' +--- + +### ¿Qué es la llamada API de Agente de pagos: Transferencia? + +Transferencia de Agente de Pagos - esta llamada solo está disponible para las cuentas de Agentes de Pagos autorizados. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-withdraw/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-withdraw/index.md new file mode 100644 index 00000000..7f5be339 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-agent/payment-agent-withdraw/index.md @@ -0,0 +1,24 @@ +--- +title: 'Agente de pagos: Retirar' +hide_title: false +draft: false +sidebar_label: 'Agente de pagos: Retirar' +sidebar_position: 4 +tags: + - conceptos + - pago + - agente + - retirar + - terminología +keywords: + - conceptos + - pago + - agente + - retirar + - terminología +description: '¿Qué es la llamada API de Agente de pagos: Retirar?' +--- + +### ¿Qué es la llamada API de Agente de pagos: Retirar? + +Inicie una retirada de fondos a un Agente de Pagos autorizado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-methods/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-methods/index.md new file mode 100644 index 00000000..62b43d07 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/payment/payment-methods/index.md @@ -0,0 +1,22 @@ +--- +title: Métodos de pago +hide_title: false +draft: false +sidebar_label: Métodos de pago +sidebar_position: 4 +tags: + - conceptos + - pago + - métodos + - terminología +keywords: + - conceptos + - pago + - métodos + - terminología +description: '¿Qué es la llamada API de Métodos de pago?' +--- + +### ¿Qué es la llamada API de Métodos de pago? + +Devolverá una lista de métodos de pago disponibles para el país dado. Si se autentica la solicitud, se utilizará el país de residencia del cliente. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/_category_.json new file mode 100644 index 00000000..8c72c7e8 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Trading", + "position": 3, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestra categoría de trading" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/active-symbols/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/active-symbols/index.md new file mode 100644 index 00000000..bf17a2ac --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/active-symbols/index.md @@ -0,0 +1,22 @@ +--- +title: Símbolos activos +hide_title: false +draft: false +sidebar_label: Símbolos activos +sidebar_position: 4 +tags: + - conceptos + - activos + - símbolos + - terminología +keywords: + - conceptos + - activos + - símbolos + - terminología +description: '¿Qué es la llamada API de Símbolos activos?' +--- + +### ¿Qué es la llamada API de Símbolos activos? + +Recupere una lista de todos los símbolos actualmente activos (mercados subyacentes en los que hay contratos disponibles para operar). diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/asset-index/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/asset-index/index.md new file mode 100644 index 00000000..e4f7ac62 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/asset-index/index.md @@ -0,0 +1,24 @@ +--- +title: Índice de activos +hide_title: false +draft: false +sidebar_label: Índice de activos +sidebar_position: 4 +tags: + - conceptos + - activos + - índice + - terminología +keywords: + - conceptos + - activos + - índice + - terminología +description: '¿Qué es la llamada API de Índice de activos?' +--- + +### ¿Qué es la llamada API de Índice de activos? + +Recupere una lista de todos los subyacentes disponibles y los tipos de contrato y límites de duración correspondientes. + +Si el usuario ha iniciado sesión, sólo se devolverán los activos disponibles para la landing company de ese usuario. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/_category_.json new file mode 100644 index 00000000..401ba0eb --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Landing Company", + "position": 2, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas API de Landing Company" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/landing-company-details/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/landing-company-details/index.md new file mode 100644 index 00000000..98d3d627 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/landing-company-details/index.md @@ -0,0 +1,26 @@ +--- +title: Detalles de la landing company +hide_title: false +draft: false +sidebar_label: Detalles de la landing company +sidebar_position: 4 +tags: + - conceptos + - landing + - company + - detalles + - terminología +keywords: + - conceptos + - landing + - company + - detalles + - terminología +description: '¿Qué es la llamada API de detalles de la Landing company?' +--- + +### ¿Qué es la llamada API de detalles de la Landing company? + +La empresa tiene una serie de filiales autorizadas en varias jurisdicciones, que se denominan Landing Companies (y que son subsidiarias al 100% propiedad del Grupo Deriv). + +Esta llamada proporciona información sobre cada Landing Company. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/landing-company/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/landing-company/index.md new file mode 100644 index 00000000..b4775c5a --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/landing-company-calls/landing-company/index.md @@ -0,0 +1,26 @@ +--- +title: Landing company +hide_title: false +draft: false +sidebar_label: Landing company +sidebar_position: 4 +tags: + - conceptos + - landing + - company + - terminología +keywords: + - conceptos + - landing + - company + - terminología +description: '¿Qué es la llamada API de Landing Company?' +--- + +### ¿Qué es la llamada API de Landing Company? + +La compañía tiene varias subsidiarias con licencia en varias jurisdicciones, que se denominan Landing Companies. + +Esta llamada devolverá la Landing Company adecuada para los clientes de un país determinado. + +La landing company puede diferir en lo que respecta a los índices sintéticos y los contratos financieros (Forex, Índices Bursátiles, Materias primas). diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/residence-list/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/residence-list/index.md new file mode 100644 index 00000000..bd12694e --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/residence-list/index.md @@ -0,0 +1,73 @@ +--- +title: Lista de países +hide_title: false +draft: false +sidebar_label: Lista de países +sidebar_position: 2 +tags: + - conceptos + - países + - residente + - lista + - terminología +keywords: + - conceptos + - países + - residente + - lista + - terminología +description: '¿Qué es la llamada API de la Lista de países?' +--- + +### ¿Qué es la llamada a la API de la Lista de Países? + +Lista de países y códigos de país de 2 letras, adecuados para rellenar el formulario de apertura de cuenta. + +la lista de ejemplos puede ser algo así: + +```json +[ + { + "identity": { + "services": { + "idv": { + "documents_supported": {}, + "has_visual_sample": 0, + "is_country_supported": 0 + }, + "onfido": { + "documents_supported": { + "passport": { + "display_name": "Passport" + } + }, + "is_country_supported": 0 + } + } + }, + "phone_idd": "93", + "text": "Afghanistan", + "value": "af" + }, + { + "identity": { + "services": { + "idv": { + "documents_supported": {}, + "has_visual_sample": 0, + "is_country_supported": 0 + }, + "onfido": { + "documents_supported": {}, + "is_country_supported": 0 + } + } + }, + "phone_idd": "35818", + "text": "Aland Islands", + "value": "ax" + } +] +``` + +Puede obtener más información sobre la `Countries List` en [API Explorer - Countries List](https://api.deriv.com/api-explorer#residence_list) diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/_category_.json new file mode 100644 index 00000000..eb3ad15b --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Llamadas de Tick", + "position": 1, + "link": { + "type": "generated-index", + "description": "Aprenda sobre nuestras llamadas API de Tick" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/ticks-history/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/ticks-history/index.md new file mode 100644 index 00000000..02de178d --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/ticks-history/index.md @@ -0,0 +1,22 @@ +--- +title: Historia de Ticks +hide_title: false +draft: false +sidebar_label: Historia de Ticks +sidebar_position: 4 +tags: + - conceptos + - ticks + - historial + - terminología +keywords: + - conceptos + - ticks + - historial + - terminología +description: '¿Qué es la llamada API del Historial de Ticks?' +--- + +### ¿Qué es la llamada API del Historial de Ticks? + +Obtener datos históricos de ticks para un símbolo determinado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/ticks-stream/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/ticks-stream/index.md new file mode 100644 index 00000000..c6a247c9 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/tick/ticks-stream/index.md @@ -0,0 +1,22 @@ +--- +title: Corriente de Ticks +hide_title: false +draft: false +sidebar_label: Corriente de Ticks +sidebar_position: 4 +tags: + - conceptos + - ticks + - corriente + - terminología +keywords: + - conceptos + - ticks + - corriente + - terminología +description: '¿Qué es la llamada API de Corriente de Ticks?' +--- + +### ¿Qué es la llamada API de Corriente de Ticks? + +Inicie un flujo continuo de actualizaciones de precios al contado para un símbolo determinado. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/trading-durations/index.md b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/trading-durations/index.md new file mode 100644 index 00000000..8de5ce52 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/_terminology/trading/trading-durations/index.md @@ -0,0 +1,24 @@ +--- +title: Duración de Operaciones +hide_title: false +draft: false +sidebar_label: Duración de Operaciones +sidebar_position: 4 +tags: + - conceptos + - activo + - índice + - terminología +keywords: + - conceptos + - activo + - índice + - terminología +description: '¿Qué es la llamada API de Duración de Operaciones?' +--- + +### ¿Qué es la llamada API de Duración de Operaciones? + +Recupere una lista de todos los subyacentes disponibles y los tipos de contrato y límites de duración de operación correspondientes. + +Si el usuario ya ha iniciado sesión, solo se devolverán los activos disponibles para la landing company de ese usuario. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/_category_.json new file mode 100644 index 00000000..e99ec9b9 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Ejemplos de códigos", + "position": 3, + "link": { + "type": "generated-index", + "description": "Aprenda más sobre la API con nuestros ejemplos de código" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/_category_.json new file mode 100644 index 00000000..3ff51d1e --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Ejemplos en JavaScript", + "position": 1, + "link": { + "type": "generated-index", + "description": "Ejemplos de código JavaScript" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/active-symbols/index.mdx b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/active-symbols/index.mdx new file mode 100644 index 00000000..86e10d6d --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/active-symbols/index.mdx @@ -0,0 +1,26 @@ +--- +title: Símbolos activos +draft: false +sidebar_label: Símbolos activos +sidebar_position: 3 +tags: + - código + - ejemplo + - activo + - símbolos +keywords: + - código + - ejemplo + - activo + - símbolos +description: Ejemplo de código de Símbolos Activos +--- + +import SandboxIframe from '@site/src/components/SandboxIframe'; +import { sandboxes } from '@site/src/components/SandboxIframe/utility/sandboxes'; + +Obtenga una lista de todos los símbolos actualmente activos (mercados subyacentes en los que los contratos están disponibles para operar). + + + +Los datos contienen información de mercado y sub-mercado relacionada con el símbolo. En caso de que quiera recuperar los símbolos activos de una landing company específica, puedes añadir landing_company al objeto de solicitud. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/contracts-for-symbol/index.mdx b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/contracts-for-symbol/index.mdx new file mode 100644 index 00000000..d48e3af7 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/contracts-for-symbol/index.mdx @@ -0,0 +1,24 @@ +--- +title: Contratos para símbolos +draft: false +sidebar_label: Contratos para Símbolo +sidebar_position: 4 +tags: + - código + - ejemplo + - contratos + - símbolo +keywords: + - código + - ejemplo + - contratos + - símbolo +description: Ejemplo de código de Contratos para Símbolo +--- + +import SandboxIframe from '@site/src/components/SandboxIframe'; +import { sandboxes } from '@site/src/components/SandboxIframe/utility/sandboxes'; + +Para un símbolo determinado, obtén la lista de los contratos disponibles actualmente y los límites de barrera y duración más recientes para cada contrato. + + diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/keep-alive/index.mdx b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/keep-alive/index.mdx new file mode 100644 index 00000000..33d36940 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/keep-alive/index.mdx @@ -0,0 +1,24 @@ +--- +title: Mantener Viva +draft: false +sidebar_label: Mantener Viva +sidebar_position: 7 +tags: + - código + - ejemplo + - mantener + - vivo +keywords: + - código + - ejemplo + - mantenga + - vivo +description: Ejemplo de código de Mantener Viva +--- + +import SandboxIframe from '@site/src/components/SandboxIframe'; +import { sandboxes } from '@site/src/components/SandboxIframe/utility/sandboxes'; + +En este ejemplo verá cómo mantener viva una conexión al obtener propuestas de contrato a través de la Deriv API. Este ejemplo mantiene viva la conexión enviando un ping cada 30 segundos. + + diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/proposal/index.mdx b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/proposal/index.mdx new file mode 100644 index 00000000..598859cf --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/proposal/index.mdx @@ -0,0 +1,24 @@ +--- +title: Propuesta +draft: false +sidebar_label: Propuesta +sidebar_position: 6 +tags: + - código + - ejemplo + - propuesta +keywords: + - código + - ejemplo + - propuesta +description: Ejemplo de código de propuesta +--- + +import SandboxIframe from '@site/src/components/SandboxIframe'; +import { sandboxes } from '@site/src/components/SandboxIframe/utility/sandboxes'; + +Obtiene el último precio de un contrato específico. + + + +Este ejemplo es para obtener una propuesta de contrato. Podrá obtener el precio, el pago y el valor spot de su contrato. Para mantener viva esta conexión en caso de que se agote el tiempo de inactividad, consulte el ejemplo de Mantener viva. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/ticks-history/index.mdx b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/ticks-history/index.mdx new file mode 100644 index 00000000..cc4b41a1 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/ticks-history/index.mdx @@ -0,0 +1,28 @@ +--- +title: Historia de Ticks +draft: false +sidebar_label: Historial de Ticks +sidebar_position: 2 +tags: + - código + - ejemplo + - ticks + - historial +keywords: + - código + - ejemplo + - ticks + - historial +description: Ejemplo de código del Historial de Ticks +--- + +import SandboxIframe from '@site/src/components/SandboxIframe'; +import { sandboxes } from '@site/src/components/SandboxIframe/utility/sandboxes'; + +Con el historial de ticks podrá obtener una recopilación de los tiempos y precios de ticks anteriores. + + + +Nos suscribimos a la funcionalidad de ticks del websocket de la Deriv API para realizar un seguimiento de los ticks actuales y pasados. + +Como ejemplo, puede crear un gráfico de ticks interactivos con estos datos. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/ticks/index.mdx b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/ticks/index.mdx new file mode 100644 index 00000000..49cce5e4 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/ticks/index.mdx @@ -0,0 +1,26 @@ +--- +title: Ticks +draft: false +sidebar_label: Ticks +sidebar_position: 1 +tags: + - código + - ejemplo + - ticks +keywords: + - código + - ejemplo + - ticks +description: Ejemplo de código de ticks +--- + +import SandboxIframe from '@site/src/components/SandboxIframe'; +import { sandboxes } from '@site/src/components/SandboxIframe/utility/sandboxes'; + +La forma más sencilla de entender cómo funciona la API Deriv es probar nuestra llamada de Tick: + + + +Empezaremos con el ejemplo de los ticks, ya que es un bloque de código bastante sencillo de implementar. No tiene que acceder a la cuenta de Deriv y autenticar su aplicación para probarlo. + +Un tick es una medida de movimiento mínimo al alza o a la baja en el precio de una materia prima operativa. Nos suscribimos a la funcionalidad de ticks del websocket de la Deriv API, que devolverá nuevos datos de ticks cada segundo. Como ejemplo, puede crear un gráfico de ticks interactivas con estos datos. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/website-status/index.mdx b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/website-status/index.mdx new file mode 100644 index 00000000..10245b1d --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/code-examples/javascript/website-status/index.mdx @@ -0,0 +1,24 @@ +--- +title: Estado del Sitio Web +draft: false +sidebar_label: Estado del Sitio Web +sidebar_position: 5 +tags: + - código + - ejemplo + - sitio web + - estado +keywords: + - código + - ejemplo + - sitio web + - estado +description: Ejemplo de código de Estado del Sitio Web +--- + +import SandboxIframe from '@site/src/components/SandboxIframe'; +import { sandboxes } from '@site/src/components/SandboxIframe/utility/sandboxes'; + +Solicite el estado del sitio web. Desde la respuesta de la API podrá consultar ajustes generales como límites de llamadas, información sobre divisas, idiomas admitidos y mucho más. + + diff --git a/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/_category_.json new file mode 100644 index 00000000..1ec5c1ec --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Conceptos fundamentales", + "position": 2, + "link": { + "type": "generated-index", + "description": "Aprenda los conceptos fundamentales del servidor WebSocket de la Deriv API y sus características" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/api-calls-anatomy/index.md b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/api-calls-anatomy/index.md new file mode 100644 index 00000000..e0f3a11f --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/api-calls-anatomy/index.md @@ -0,0 +1,199 @@ +--- +title: Anatomía de las llamadas API +hide_title: false +draft: false +sidebar_label: Anatomía de las llamadas API +sidebar_position: 1 +tags: + - concepto + - llamadas + - anatomía +keywords: + - operar + - concepto + - llamadas + - anatomía +description: Anatomía de las llamadas Deriv API +--- + +## Suscríbete y envía + +Todas las llamadas API tienen una funcionalidad de envío para realizar una solicitud y recibir una respuesta. Algunas llamadas API también ofrecen una funcionalidad de suscripción que permite enviar actualizaciones a su aplicación cuando haya nueva información disponible. + +### Suscribirse + +Varias llamadas API proporcionan la funcionalidad de `subscribe`. Cuando se suscribe a una llamada API, recibirá un flujo continuo de los datos de esa llamada API en particular. + +Algunas de estas llamadas API se suscriben automáticamente (por ejemplo, [ticks](https://api.deriv.com/api-explorer#ticks)) y otras tienen un campo opcional de `subscribe`. Si pasa `1` al campo `subscribe`, la suscripción se iniciará y el servidor continuará enviando los datos solicitados hasta que cancele la suscripción llamando a las llamadas API de `Forget` o `Forget all`. + +Por ejemplo, puede llamar a [Historial de Ticks](https://api.deriv.com/api-explorer#ticks_history) para recibir datos del historial de ticks. Pero cuando agregue la opción `subscribe` a esta llamada, recibirá los datos del historial de ticks que solicito en la primera respuesta y seguirá recibiendo una nueva respuesta cada vez que el servidor publique un nuevo tick para el símbolo dado. + +En el flujo de mensajes de `subscribe`, hay un campo llamado `subscription`. Este es el `Stream ID`. Con este ID, puede identificar el flujo de mensajes en su lógica y detenerlo con las llamadas API `Forget` y `Forget All`. + +Los datos que proporcionan las llamadas API con la funcionalidad `subscribe` se pueden usar como fuente de datos para otras funciones y llamadas API. + +### Enviar + +Si usted llama la API con la funcionalidad `enviar`, el servidor solo devolverá los datos solicitados una vez. Para obtener datos actualizados, debe volver a enviar la llamada API. Por lo general, este método se usa cuando obtiene otras respuestas a llamadas de API o eventos de interfaz de usuario, como `Click`, `Scroll`y más. + +### Olvidar + +Si desea detener el flujo de mensajes creado por `subscribe`, tendrá que realizar la llamada API `Forget` con el `Stream ID` correcto. De lo contrario, puede usar la llamada API `Forget All` para detener las transmisiones por su `Method name`. + +:::caution +Para más información sobre la llamada API `Forget`, echa un vistazo a [Forget](https://api.deriv.com/api-explorer#forget) y [Forget All](https://api.deriv.com/api-explorer#forget_all) en el explorador de API. +::: + +## Solicitar datos + +Para facilitarle la gestión del flujo de solicitudes y respuestas de su conexión de WebSocket, cada llamada API de Deriv WebSocket sigue una estructura estandarizada. Puede usarlo para el almacenamiento en caché, la validación, además de la sincronización de solicitudes y respuestas. + +#### Nombre del método de llamada API + +Cada `request` en la API de WebSocket incluye un campo `method name`, que sirve como identificador único para la solicitud. En la mayoría de los casos, este `method name` obtendrá un valor numérico de `1`. Sin embargo, hay algunos casos en los que la propiedad del identificador puede tener un valor de cadena. + +:::caution +Siempre se requiere el Nombre del Método de la Llamada API. este campo determina los datos que obtendrá de nuestro servidor WebSocket. +::: + +### Campos obligatorios + +Los datos de cada solicitud tienen campos obligatorios que debe proporcionar, también pueden incluir campos opcionales. Exploremos esto con un ejemplo de `Residence List`. + +Una llamada `Residence List` devuelve una lista de países y códigos de país de 2 letras, adecuados para rellenar el formulario de apertura de cuenta. + +Los datos de solicitud para esta llamada son los siguientes: + +```ts +{ + residence_list: 1; // Api Call Method Name + passthrough?: object; // Optional + req_id?: number; // Optional +} +``` + +El campo `residence_list` es el `method name` para la llamada y es obligatorio. Es posible que haya otros campos obligatorios relacionados con este tipo de solicitud que desee enviar. Para obtener más información sobre `Residence List` y otras llamadas API, eche un vistazo a [API Explorer](https://api.deriv.com/api-explorer#residence_list). + +### Campos opcionales + +Cada llamada también tiene varios campos `Optional`. `Passthrough` y `req_id` siempre forman parte de los datos de la solicitud, pero puede optar por excluirse y no usarlos. + +#### El campo `passthrough` + +Todo lo que pase a este campo se le devolverá dentro de un objeto de `respuestas` . Esto puede resultar útil cuando necesitas simular un flujo con estado para tus `solicitudes` y `respuestas`. + +#### El campo `req_id` + +Puede que necesite hacer `tag` a sus peticiones y pasarlas a través de nuestras llamadas `WebSocket`. Puede hacerlo pasando un `number` a este campo. Puede ser útil cuando necesite mapear `requests` a ` responses`. + +:::caution +Para obtener información sobre los campos opcionales adicionales específicos de cada llamada API, consulte nuestro [API Explorer](https://api.deriv.com/api-explorer). +::: + +## Datos de respuesta + +Cuando obtenga la respuesta para la llamada, aparecerá un `Field` con el mismo nombre que el `method name`, que contiene los datos reales. + +La respuesta para la llamada `Residence List`: + +```js +{ + echo_req: { + req_id: 1, + residence_list: 1, + }, + msg_type: 'residence_list', + req_id: 1, + residence_list: [ + { + "identity": { + "services": { + "idv": { + "documents_supported": {}, + "has_visual_sample": 0, + "is_country_supported": 0 + }, + "onfido": { + "documents_supported": { + "driving_licence": { + "display_name": "Driving Licence" + } + }, + "is_country_supported": 0 + } + } + }, + "phone_idd": "35818", + "text": "Aland Islands", + "value": "ax" + }, + { + "identity": { + "services": { + "idv": { + "documents_supported": {}, + "has_visual_sample": 0, + "is_country_supported": 0 + }, + "onfido": { + "documents_supported": { + "driving_licence": { + "display_name": "Driving Licence" + }, + "national_identity_card": { + "display_name": "National Identity Card" + }, + "passport": { + "display_name": "Passport" + } + }, + "is_country_supported": 1 + } + } + }, + "phone_idd": "355", + "text": "Albania", + "tin_format": [ + "^[A-Ta-t0-9]\\d{8}[A-Wa-w]$" + ], + "value": "al" + }, + // .... + ], +}; +``` + +En este caso, el `residence_list` es el `method name` y contiene los datos reales que solicitó. Para resumir, no hemos incluido el resto de la matriz. Puede comprobar la respuesta real [aquí](https://api.deriv.com/api-explorer#residence_list). + +#### El campo `echo_req` + +Este `Field` contiene los `Request Data` exactos que envió al servidor. + +#### El campo `msg_type` + +Este `Field` le ayuda a determinar qué datos de `message` está recibiendo en el evento de mensaje de la conexión de WebSocket. Por ejemplo, su controlador de eventos `onmessage` para su conexión WebSocket en `JavaScript` sería: + +```js +socket.onmessage = (event) => { + const receivedMessage = JSON.parse(event.data); + + switch (receivedMessage.msg_type) { + case "residence_list": + console.log("The residence list is : ",receivedMessage.residence_list) + break; + case "other_request_identifier" + console.log("the response", receivedMessage.some_other_request_identifier) + default: + console.log("receivedMessage", receivedMessage) + break; + } +} +``` + +#### El campo `req_id` + +Este es el `Optional` que se pasa al `Request Data`, se puede usar para la `validation`, `synchronization`, `caching`, etc. + +:::tip +El `msg_type` siempre está presente en los datos de respuesta. +::: diff --git a/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/authorization-authentication/index.md b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/authorization-authentication/index.md new file mode 100644 index 00000000..8bf8138f --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/authorization-authentication/index.md @@ -0,0 +1,153 @@ +--- +title: Autorización y autenticación +hide_title: false +draft: false +sidebar_label: Autorización y autenticación +sidebar_position: 2 +tags: + - autentificación + - autorización +keywords: + - autenticación deriv + - autorización deriv +description: Autorización y autenticación del Deriv API +--- + +Sin autorización ni autenticación, solo tendrá acceso a aproximadamente la mitad de nuestras funciones y llamadas API. Por ejemplo, para comprar contratos o utilizar las funciones de `Copy Trading`, sus usuarios deben estar autenticados y autorizados por nuestro proveedor **OAuth** y **WebSocket Server**. + +## Antes de empezar + +Asegúrese de cumplir con todos los requisitos que se mencionan a continuación para continuar. + +### Requisitos + +1. Cuenta Deriv +2. Token de Deriv API con el nivel de acceso adecuado +3. ID de aplicación Deriv + +:::note +Consulte [Setting up a Deriv application](docs/setting-up-a-deriv-application.md) para obtener instrucciones detalladas sobre cómo crear un token y una aplicación de API de Deriv. +::: + +### Token API + +Un Token API es un identificador único de un cliente que solicita acceso desde un servidor. Es la forma más sencilla de autorización. + +El nivel de acceso de cada Token API debe coincidir con el nivel de acceso requerido para cada llamada API, que también se puede encontrar en el [API Explorer](https://api.deriv.com/api-explorer). + +Por ejemplo, en la captura de pantalla siguiente, puede ver que para poder usar el Estado de Cuenta, se debe usar un token con nivel de acceso de lectura. + +![](/img/acc_status_scope_api_explorer.png) + +Tras la autorización de una conexión de WebSocket, las llamadas posteriores a esa conexión se considerarán acciones del usuario. + +Tenga en cuenta que el Token API se puede usar con cualquier aplicación, por lo que tanto su aplicación como sus clientes deben mantenerla segura. + +### OAuth2 + +OAuth significa `Open Authorisation` - un protocolo que permite a un cliente acceder a recursos alojados en un servidor en nombre del usuario sin revelar las credenciales. + +Este tipo de autorización permite a los clientes iniciar sesión en aplicaciones de terceros con sus cuentas de Deriv sin crear un Token API. En este caso, la aplicación de terceros no ve la contraseña del usuario ni el Token API permanente, lo que la hace más segura. + +La autenticación OAuth2 requiere más pasos para configurarla, pero es la forma más segura para que los desarrolladores compartan el acceso a su aplicación con sus clientes. + +Para más información sobre OAuth2, visite [this guide](https://aaronparecki.com/oauth-2-simplified/). + +Esta es la representación visual de cómo funciona la conexión de autorización OAuth: + +![Flujo de OAuth](/img/how_oauth_works.png 'Flujo de OAuth') + +## El proceso de autenticación + +Para autenticar a su usuario, especifique la URL que se utilizará como URL de redirección de OAuth en la página [Dashboard](/dashboard), pestaña **Register application** en los campos **OAuth details**. A continuación, añada un botón de inicio de sesión en su sitio web o aplicación y dirija a los usuarios a **`https://oauth.binary.com/oauth2/authorize?app_id=your_app_id`**, donde your_app_id es el ID de tu aplicación. + +![Inicio de sesión de Deriv OAuth](/img/oauth_login.png 'Inicio de sesión de Deriv OAuth') + +Una vez que un usuario se registre o inicie sesión, se le redirigirá a la URL que haya introducido como URL de redireccionamiento. A esta URL se le agregarán argumentos con los tokens de sesión del usuario y tendrá un aspecto similar al siguiente: + +`https://[YOUR_WEBSITE_URL]/redirect/?acct1=cr799393& token1=a1-f7pnteezo4jzhpxclctizt27hyeot&cur1=usd& acct2=vrtc1859315& token2=a1clwe3vfuuus5kraceykdsoqm4snfq& cur2=usd` + +## El proceso de autorización + +Los parámetros de consulta de la URL de redireccionamiento son las cuentas del usuario y sus tokens de sesión relacionados. Puede asignar los parámetros de consulta a una matriz mediante el siguiente enfoque: + +```js +const user_accounts = [ + { + account: 'cr799393', + token: 'a1-f7pnteezo4jzhpxclctizt27hyeot', + currency: 'usd', + }, + { + account: 'vrtc1859315', + token: 'a1clwe3vfuuus5kraceykdsoqm4snfq', + currency: 'usd', + }, +]; +``` + +Para autorizar al usuario basándose en la cuenta **selected** del usuario, llame a la llamada API [authorize](https://api.deriv.com/api-explorer#authorize) con la cuenta **selected** del usuario **session token**: + +```js +{ + "authorize": "a1-f7pnteezo4jzhpxclctizt27hyeot" +} +``` + +La respuesta para la llamada `authorize` sería un objeto como el siguiente: + +```js +{ + "account_list": [ + { + "account_type": "trading", + "created_at": 1647509550, + "currency": "USD", + "is_disabled": 0, + "is_virtual": 0, + "landing_company_name": "svg", + "loginid": "CR799393", + "trading": {} + }, + { + "account_type": "trading", + "created_at": 1664132232, + "currency": "ETH", + "is_disabled": 0, + "is_virtual": 0, + "landing_company_name": "svg", + "loginid": "VRTC1859315", + "trading": {} + }, + ], + "balance": 0, + "country": "id", + "currency": "USD", + "email": "user_mail@email_provider.com", + "fullname": " John Doe", + "is_virtual": 0, + "landing_company_fullname": "Deriv (SVG) LLC", + "landing_company_name": "svg", + "local_currencies": { + "IDR": { + "fractional_digits": 2 + } + }, + "loginid": "CR799393", + "preferred_language": "EN", + "scopes": [ + "read", + "trade", + "trading_information", + "payments", + "admin" + ], + "trading": {}, + "upgradeable_landing_companies": [ + "svg" + ], + "user_id": 12345678 + } +``` + +Ahora, el usuario está autorizado y puede usar las llamadas de Deriv API en nombre de la cuenta. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/websocket/index.md b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/websocket/index.md new file mode 100644 index 00000000..9a713c7e --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/core-concepts/websocket/index.md @@ -0,0 +1,145 @@ +--- +title: WebSocket +hide_title: false +draft: false +sidebar_label: WebSocket +sidebar_position: 0 +tags: + - concepto + - websocket +keywords: + - operar + - concepto + - websockets +description: '¿Qué es un WebSocket?' +--- + +## ¿Qué son los WebSockets? + +El protocolo `WebSocket` , descrito en la especificación [RFC 6455](https://datatracker.ietf.org/doc/html/rfc6455), proporciona una forma de intercambiar datos entre el navegador y el servidor a través de una conexión persistente. Los datos se pueden pasar en ambas direcciones como "paquetes" sin interrumpir la conexión ni necesitar solicitudes HTTP adicionales. + +WebSocket es especialmente útil para los servicios que requieren un intercambio continuo de datos, por ejemplo, sistemas de negociación en tiempo real, etc. + +## Un ejemplo sencillo + +Para abrir una conexión WebSocket, necesitamos crear `new WebSocket` utilizando el protocolo especial `ws` o `wss` en la Url. Así es como puede hacerlo en `JavaScript`: + +```js +let socket = new WebSocket('wss: //ws.binaryws.com/websockets/ v3?app_id=1089 '); +``` + +:::caution +Usar `wss://` es siempre la mejor opción. El protocolo `wss://` no solo está cifrado, sino que también es más confiable. + +Por otro lado, los datos `ws://` no están cifrados y pueden ser visibles para los intermediarios. Servidores proxy antiguos pueden encontrar encabezados "extraños" y terminar la conexión. + +`wss://` significa WebSocket sobre TLS, de forma similar a cómo HTTPS es HTTP sobre TLS. Con la capa de seguridad de transporte, el remitente cifra los datos y el receptor los descifra. Esto significa que los paquetes de datos cifrados pueden pasar satisfactoriamente a través de proxies sin ser inspeccionados. +::: + +Una vez creado el socket, debemos escuchar los eventos que contiene. Hay 4 eventos en total: + +- Abierto — Conexión establecida +- Mensaje — Datos recibidos +- Error – error de WebSocket +- Cerrar — Conexión cerrada + +El envío de un mensaje se puede hacer a través de socket.send (data). + +Este es un ejemplo en `JavaScript`: + +```js +const app_id = 1089; //Sustitúyalo por su app_id o déjelo como 1089 para realizar pruebas. +const socket = new WebSocket(`wss://ws.binaryws.com/websockets/v3?app_id=${app_id}`); + +socket.onopen = function (e) { + console.log('[open] Connection established'); + console.log('Sending to server'); + const sendMessage = JSON.stringify({ ping: 1 }); + socket.send(sendMessage); +}; + +socket.onmessage = function (event) { + console.log(`[message] Data received from server: ${event.data}`); +}; + +socket.onclose = function (event) { + if (event.wasClean) { + consloe.log(`[close] Connection closed cleanly, code=${event.code} reason=${event.reason}`); + } else { + // e.g. server process killed or network down + // event.code is usually 1006 in this case + console.log('[close] Connection died'); + } +}; + +socket.onerror = function (error) { + console.log(`[error]`); +}; +``` + +## ¿Por qué necesitamos WebSockets y cuándo debemos evitarlos? + +Los WebSockets son una herramienta esencial de comunicación cliente-servidor. Para aprovechar al máximo su potencial, es importante entender cómo pueden ser útiles y cuándo es mejor evitar su uso. Se explica ampliamente en la siguiente sección. + +Utilice WebSockets en los siguientes casos: + +1. Al desarrollar una aplicación web en tiempo real. El uso más habitual de WebSocket es en el desarrollo de aplicaciones en tiempo real, donde ayuda a una visualización continua de los datos en el extremo del cliente. Como el servidor back-end devuelve estos datos de forma continua, un WebSocket permite enviar o transmitir estos datos sin interrupciones en la conexión ya abierta. El uso de WebSockets agiliza la transmisión de datos y aprovecha el rendimiento de la aplicación. +2. Para sitios web comerciales, como Deriv. En este caso, WebSocket ayuda a gestionar los datos que impulsa el servidor back-end implementado en el cliente. +3. Al crear una aplicación de chat. Los desarrolladores de aplicaciones de chat solicitan ayuda a WebSockets en operaciones como un intercambio único y la publicación/transmisión de mensajes. Como se utiliza la misma conexión WebSocket para enviar/recibir mensajes, la comunicación se vuelve fácil y rápida. + +Ahora que hemos establecido dónde se deben usar los WebSockets, veamos dónde es mejor evitarlos. Esto le ayudará a evitar problemas operativos innecesarios. + +Los WebSockets no deben incorporarse cuando lo único que se necesita es recuperar datos antiguos o datos que se van a procesar solo una vez. En estos casos, el uso de protocolos HTTP es una buena elección. + +## WebSocket frente a HTTP + +Como se emplean los protocolos HTTP y WebSocket para la comunicación de aplicaciones, las personas a menudo se confunden y les resulta difícil elegir uno. + +Como se dijo anteriormente, WebSocket es un protocolo bidireccional y enmarcado. Por otro lado, HTTP es un protocolo unidireccional que funciona por encima del protocolo TCP. + +Como el protocolo WebSocket es capaz de soportar la transmisión continua de datos, se utiliza principalmente en el desarrollo de aplicaciones en tiempo real. HTTP no tiene estado y se usa para el desarrollo de [aplicaciones RESTful](https://de.wikipedia.org/wiki/Representational_State_Transfer) y [de SOAP](https://de.wikipedia.org/wiki/SOAP) . SOAP todavía puede usar HTTP para la implementación, pero REST es ampliamente conocido y utilizado. + +En WebSocket, la comunicación se produce en ambos extremos, lo que lo convierte en un protocolo más rápido. En HTTP, la conexión está construida en un extremo, lo que la hace un poco más lenta que WebSocket. + +WebSocket usa una conexión TCP unificada y necesita que una de las partes termine la conexión. Hasta que esto suceda, la conexión permanecerá activa. HTTP necesita crear una conexión distinta para solicitudes independientes. Una vez completada la solicitud, la conexión se interrumpe automáticamente. + +## ¿Cómo se establecen las conexiones de WebSocket? + +El proceso comienza con un protocolo de enlace de WebSocket que implica el uso de un nuevo esquema (ws o wss). Para ayudarle a entender, considérelos equivalentes a HTTP y HTTP seguro (HTTPS) respectivamente. + +Con este esquema, se espera que los servidores y los clientes sigan el protocolo de conexión WebSocket estándar. El establecimiento de la conexión WebSocket comienza con una solicitud HTTP de mejora que incluye un par de encabezados, como Connection: Upgrade, Upgrade: WebSocket, SEC-WebSocket- Key, etc. + +Así es como se establece esta conexión: + +1. **The Request :** El encabezado de mejora de la conexión indica el protocolo de enlace WebSocket, mientras que la clave Sec-WebSocket-Key presenta un valor aleatorio codificado en Base64. Este valor se genera arbitrariamente durante cada protocolo de enlace de WebSocket. Además de lo anterior, el encabezado clave también forma parte de esta solicitud. + +Los encabezados de la lista anterior, cuando se combinan, forman una solicitud GET HTTP. Tendrá datos similares: + +``` +GET ws://websocketexample.com:8181/ HTTP/1.1 +Host: localhost:8181 +Connection: Upgrade +Pragma: no-cache +Cache-Control: no-cache +Upgrade: websocket +Sec-WebSocket-Version: 13 +Sec-WebSocket-Key: b6gjhT32u488lpuRwKaOWs== +``` + +Para aclarar la Sec-WebSocket-Version, se puede explicar la versión del protocolo WebSocket lista para usar para el cliente. + +2. **The Response:** El encabezado de respuesta, Sec-WebSocket-Accept, incluye el resto del valor enviado en el encabezado de solicitud Sec-WebSocket-Key. Esto está conectado con una especificación de protocolo particular y se usa ampliamente para mantener a raya la información engañosa. En otras palabras, mejora la seguridad de la API y evita que los servidores mal configurados creen errores en el desarrollo de la aplicación. + +Si la solicitud enviada anteriormente es correcta, se recibirá una respuesta similar a la secuencia de texto que se menciona a continuación: + +``` +HTTP/1.1 101 Switching Protocols +Upgrade: websocket +Connection: Upgrade +Sec-WebSocket-Accept: rG8wsswmHTJ85lJgAE3M5RTmcCE= +``` + +## Referencias + +- ** [WebSockets APIs - MDN](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket)** +- ** [WebSocket - Javascript Info](https://javascript.info/websocket)** diff --git a/i18n/es/docusaurus-plugin-content-docs/current/frameworks/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/_category_.json new file mode 100644 index 00000000..91786a9d --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/_category_.json @@ -0,0 +1,7 @@ +{ + "label": "Marcos", + "position": 6, + "link": { + "type": "generated-index" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/frameworks/angular/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/angular/_category_.json new file mode 100644 index 00000000..3b3d6c42 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/angular/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Angular", + "position": 2, + "link": { + "type": "generated-index", + "description": "5 minutos para aprender los conceptos más importantes de Docusaurus." + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/frameworks/react/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/react/_category_.json new file mode 100644 index 00000000..2792d022 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/react/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Reaccionar", + "position": 1, + "link": { + "type": "generated-index", + "description": "5 minutos para aprender los conceptos más importantes de Docusaurus." + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/frameworks/solidjs/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/solidjs/_category_.json new file mode 100644 index 00000000..c984261b --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/solidjs/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "SolidJS", + "position": 3, + "link": { + "type": "generated-index", + "description": "5 minutos para aprender los conceptos más importantes de Docusaurus." + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/frameworks/svelte/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/svelte/_category_.json new file mode 100644 index 00000000..d2361a3a --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/svelte/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Svelte", + "position": 4, + "link": { + "type": "generated-index", + "description": "5 minutos para aprender los conceptos más importantes de Docusaurus." + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/frameworks/vue/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/vue/_category_.json new file mode 100644 index 00000000..629951d2 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/frameworks/vue/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Vue", + "position": 5, + "link": { + "type": "generated-index", + "description": "5 minutos para aprender los conceptos más importantes de Docusaurus." + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/guides/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/guides/_category_.json new file mode 100644 index 00000000..6de2a0f9 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/guides/_category_.json @@ -0,0 +1,7 @@ +{ + "label": "Guías", + "position": 6, + "link": { + "type": "generated-index" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/guides/about-the-deriv-api/index.md b/i18n/es/docusaurus-plugin-content-docs/current/guides/about-the-deriv-api/index.md new file mode 100644 index 00000000..3621859c --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/guides/about-the-deriv-api/index.md @@ -0,0 +1,48 @@ +--- +title: Acerca de la Deriv API +hide_title: true +draft: false +sidebar_label: Acerca de la Deriv API +sidebar_position: 0 +tags: + - concepto + - api + - tutorial + - guía + - crear + - aplicación + - autorizar + - registrar + - integración +keywords: + - concepto + - api + - tutorial + - guía + - crear + - aplicación + - autorizar + - registrar + - integración +description: Cómo utilizar la Deriv API +--- + +## ¿Qué es la Deriv API? + +La Deriv API es una herramienta que permite a los desarrolladores crear aplicaciones de operación personalizadas que interactúan con la plataforma de operación Deriv. Piense en ello como una forma para que los desarrolladores creen sus propias herramientas especializadas para ayudar a la gente a operar en la plataforma Deriv de una forma más eficiente o personalizada. Con la Deriv API, los desarrolladores pueden acceder a una amplia gama de funcionalidades, como la colocación de operaciones, la recuperación de datos de cuentas, la gestión de órdenes y el acceso a datos de mercado en tiempo real. Esto puede ser útil para los operadores que deseen personalizar su experiencia de trading o utilizar herramientas especializadas para tomar decisiones operativas más informadas. En general, la Deriv API le ofrece más flexibilidad y control sobre su experiencia de trading, permitiéndole crear sus propias soluciones personalizadas que se adapten mejor a su estilo de operación y a sus objetivos. + +## ¿Cómo la utilizo? + +Estos son los pasos para utilizar la Deriv API: + +1. **Regístrese para obtener una cuenta Deriv API**: Vaya a la página web de la Deriv API y regístrese para obtener una cuenta. Una vez que se haya registrado, recibirá un token de API que podrá utilizar para autenticar sus solicitudes de API. + +2. **Familiarícese con la documentación de la API**: La Deriv API proporciona una completa documentación que explica cómo utilizar los puntos finales de la API, incluidos los parámetros disponibles y los formatos de respuesta. Asegúrese de familiarizarse con la documentación antes de empezar a utilizar la API. + +3. **Crear una aplicación API**: Para crear una aplicación API, debe proporcionar un nombre para su aplicación y un URI de redirección. La URI de redirección es la URL a la que se redirigirá al usuario después de que haya autorizado a su aplicación a acceder a su cuenta Deriv. + +4. **Autorice su aplicación**: Una vez que haya creado su aplicación API, deberá autorizarla para acceder a su cuenta Deriv. Esto implica acceder a su cuenta Deriv y conceder permiso para que su aplicación acceda a los datos de su cuenta. + +5. **Realice peticiones a la API**: Una vez autorizada su aplicación, puede empezar a realizar peticiones a la API. Puede utilizar la API para recuperar información sobre su cuenta, colocar operaciones, gestionar órdenes y realizar otras tareas relacionadas con operar. + +6. **Pruebe su integración API**: Antes de lanzar su aplicación, asegúrese de probar a fondo su integración API para comprobar que funciona correctamente. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/guides/markup-calculation/index.md b/i18n/es/docusaurus-plugin-content-docs/current/guides/markup-calculation/index.md new file mode 100644 index 00000000..0dcd7e92 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/guides/markup-calculation/index.md @@ -0,0 +1,39 @@ +--- +title: Cálculo del Markup +hide_title: true +draft: false +sidebar_label: Cálculo del Markup +sidebar_position: 2 +tags: + - concepto + - ganar + - ganando + - comisión + - markup +keywords: + - concepto + - gane + - ganando + - comisión + - markup +description: '¿Cómo se calcula el Markup?' +--- + +## Marcado + +Aumente sus ganancias cobrando un markup por cada contrato adquirido a través de la aplicación de operación que haya creado con la Deriv API. El markup es definido por usted y puede ser de hasta el 5%. + +A continuación se muestra un ejemplo de cómo se calcula el markup. + +Para obtener un pago de **2.00 USD**: + +- Inversión del cliente sin markup = **1.07 USD** + +Con el markup (por ejemplo, el 2%), el cliente paga: + +- Inversión del cliente con el markup = Inversión + (pago x markup) +- La inversión del cliente con markup = 1.07 USD + (2 USD x 2%) = **1.11 USD** + +## Ganar comisiones + +Gane comisiones sobre las operaciones y los pagos realizados por sus clientes a través de los sitios web y las aplicaciones que cree con la Deriv API. Obtenga más detalles sobre los planes de comisiones [aquí](https://www.deriv.com/partners/affiliate-ib). diff --git a/i18n/es/docusaurus-plugin-content-docs/current/guides/monetizing-the-deriv-api/index.md b/i18n/es/docusaurus-plugin-content-docs/current/guides/monetizing-the-deriv-api/index.md new file mode 100644 index 00000000..272b0e50 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/guides/monetizing-the-deriv-api/index.md @@ -0,0 +1,40 @@ +--- +title: Monetización de la Deriv API +hide_title: true +draft: false +sidebar_label: Monetización de la Deriv API +sidebar_position: 1 +tags: + - concepto + - ganar + - ganando + - monetizar + - monetización + - api + - websocket +keywords: + - concepto + - ganar + - ganando + - monetizar + - monetización + - api + - websocket +description: Monetice la Deriv API para su aplicación +--- + +## Monetización de la Deriv API + +Existen varias formas de monetizar la Deriv API: + +1. **Cobrar por el acceso a su aplicación de operación**: Si su aplicación de operación personalizada basada en la API Deriv ofrece valor a los usuarios, puede cobrarles una suscripción o una tarifa única por acceder a ella, convirtiéndola en una fuente de ingresos factible para su negocio. + +2. **Cobro por funciones premium**: Si su aplicación de operación tiene funciones avanzadas, como datos de mercado en tiempo real, herramientas avanzadas de gráficos y otras funciones premium que ofrecen un valor añadido a los usuarios, puede generar ingresos adicionales cobrando a los usuarios por el acceso a esas funciones. + +3. **Marketing de afiliación**: Puede unirse al programa de afiliación de Deriv y ganar comisiones por remitir nuevos usuarios a la plataforma Deriv. Puede ser una buena opción si tiene un público interesado en el trading o la inversión. + +4. **Comisiones por referidos**: Si ha creado una aplicación de operación que se integra con la plataforma Deriv, puede ofrecer comisiones por referencia a los usuarios existentes que refieran su aplicación a nuevos usuarios. Este incentivo puede alentarles a correr la voz sobre su aplicación, ayudándole a aumentar su base de usuarios. + +5. **Publicidad**: Si ha creado una aplicación de trading que cuenta con una gran base de usuarios, podría plantearse vender espacios publicitarios a anunciantes relevantes. Puede ser una buena forma de generar ingresos adicionales. + +6. **Markup**: Utilice la Deriv API para crear sus propios sitios web y aplicaciones, y gane comisiones sobre las operaciones y pagos que realicen sus clientes, monetizando sus creaciones a través del markup. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/guides/oauth2/index.md b/i18n/es/docusaurus-plugin-content-docs/current/guides/oauth2/index.md new file mode 100644 index 00000000..670b47ca --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/guides/oauth2/index.md @@ -0,0 +1,40 @@ +--- +title: OAuth2 +hide_title: true +draft: false +sidebar_label: OAuth2 +sidebar_position: 4 +tags: + - concepto + - ganar + - ganancia + - comisión + - markup +keywords: + - concepto + - ganar + - ganancia + - comisión + - markup +description: '¿Qué es OAuth2?' +--- + +## ¿Qué es OAuth2? + +OAuth son las siglas de Open Authorization, un protocolo que permite a un cliente acceder a los recursos de un usuario en un servidor sin revelar las credenciales de inicio de sesión del usuario. + +Este tipo de autorización permite a los clientes iniciar sesión en aplicaciones de terceros con sus cuentas de Deriv sin crear un Token API. En este caso, la aplicación de terceros no ve la contraseña del usuario ni el Token API permanente, lo que la hace más segura. + +La autenticación OAuth2 requiere más pasos de configuración, pero es la forma más segura para que los desarrolladores concedan acceso de sus aplicaciones a los clientes. + +Para más información sobre OAuth2, [consulte esta guía](https://aaronparecki.com/oauth-2-simplified/). + +### Cómo usar la autorización de OAuth + +1. Especifique la URL que se utilizará como **OAuth Redirect URL** en la página de registro de la aplicación en el campo **Website URL**. + +2. Añada un botón de inicio de sesión en su sitio web o aplicación y dirija a los usuarios a `https://oauth.binary.com/oauth2/authorize?app_id=your_app_id` , donde your_app_id es el ID de su aplicación. + +3. Una vez que el usuario se registre, será redirigido a la URL que usted ha ingresado como **URL de redireccionamiento**. A esta URL se le añadirán argumentos con los tokens de sesión del usuario, y tendrá un aspecto similar a: `https://[YOUR_WEBSITE_URL]/redirect/?acct1=cr799393& token1=a1-f7pnteezo4jzhpxclctizt27hyeot&cur1=usd& acct2=vrtc1859315& token2=a1clwe3vfuuus5kraceykdsoqm4snfq& cur2=usd&state=` + +4. En los parámetros de la URL, verá todas las cuentas y el token de sesión de cada cuenta. Debe pasar estos tokens a la llamada API de autorización para realizar acciones en nombre de la cuenta. diff --git a/i18n/es/docusaurus-plugin-content-docs/current/intro.mdx b/i18n/es/docusaurus-plugin-content-docs/current/intro.mdx new file mode 100644 index 00000000..d8b6ed85 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/intro.mdx @@ -0,0 +1,49 @@ +--- +title: Introducción +hide_title: false +draft: false +sidebar_label: Introducción +sidebar_position: 0 +tags: + - introducción + - cómo empezar + - inicio rápido +keywords: + - deriv + - api + - cómo empezar + - inicio rápido +description: Introducción a la Deriv API +--- + +Nuestra documentación está dividida en varias secciones: + +- [Conceptos fundamentales](category/core-concepts) +- [Ejemplos de código](category/code-examples) +- [Lenguajes](category/languages) +- [Guías](category/guides) +- [Configurar una aplicación deriv](/docs/setting-up-a-deriv-application.md) + +### Inicio rápido + +#### Conceptos fundamentales + +Eche un vistazo a las páginas de [Conceptos Fundamentales](/docs/category/core-concepts) y tómese su tiempo para leerlas. Estos conceptos le ayudarán a familiarizarse con nuestra api de servidor WebSocket y a utilizarla de forma más eficiente. No están relacionados con ninguno de nuestros marcos o bibliotecas. + +Cuando lea la página de [Conceptos Fundamentales](/docs/category/core-concepts), podrá empezar a elegir su enfoque de implementación en función del lenguaje, el marco de trabajo o la biblioteca que desee utilizar en su aplicación. + +#### Ejemplos de código + +Si desea saber cómo puede implementar nuestra API dentro de su código, le sugerimos que eche un vistazo a nuestros [Ejemplos de código](/docs/category/code-examples). Estos ejemplos de código vienen en `CodeSandboxes`. Esto le permite bifurcar fácilmente los ejemplos de código y experimentar con ellos para uso personal. Por ahora solo tenemos ejemplos de código JavaScript, pero, planeamos añadir más ejemplos creados con diferentes lenguajes, marcos y librerías en un futuro próximo. + +#### Lenguajes + +Cuando utilice nuestros ejemplos de código, también le sugerimos que eche un vistazo a nuestra sección de [Languajes](/docs/category/languages). A continuación, describimos en detalle cómo puede configurar su proyecto personal adecuadamente para hacer uso de nuestra API. Esto seguramente le resultará útil cuando intente integrar algunos de nuestros ejemplos de código en su propio proyecto. + +#### Guías + +Si desea saber, por ejemplo, cómo puede `monetizar su aplicación` o cómo crear una `forma segura para que los usuarios inicien sesión` en su aplicación, le ofrecemos un grupo de [Guías](/docs/category/guides) que pueden ayudarle con ello. + +#### Configuración de una aplicación Deriv + +Si desea saber más sobre los elementos esenciales necesarios para configurar su propia aplicación, eche un vistazo a la sección [Configuración de una aplicación Deriv](/docs/setting-up-a-deriv-application) . diff --git a/i18n/es/docusaurus-plugin-content-docs/current/languages/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/languages/_category_.json new file mode 100644 index 00000000..84bcd902 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/languages/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "Lenguajes", + "position": 4, + "link": { + "type": "generated-index", + "description": "Aprenda a utilizar las funciones de la Deriv WebSocket API con el lenguaje de su elección" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/languages/dart/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/languages/dart/_category_.json new file mode 100644 index 00000000..7379b651 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/languages/dart/_category_.json @@ -0,0 +1,7 @@ +{ + "label": "Dardo", + "position": 2, + "link": { + "type": "generated-index" + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/languages/intro.md b/i18n/es/docusaurus-plugin-content-docs/current/languages/intro.md new file mode 100644 index 00000000..7903bc0d --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/languages/intro.md @@ -0,0 +1,12 @@ +--- +title: Introducción +sidebar_label: Introducción +sidebar_position: 0 +description: Introducción a los lenguajes +--- + +Cada sección de lenguaje contiene instrucciones paso a paso sobre cómo utilizar las `Deriv WebSocket Server APIs` con características puras del lenguaje. Así que si es la primera vez que utiliza nuestros documentos, consulte cada sección para sacarles el máximo provecho. + +:::consejo +Puede ir directamente a cualquier sección. Hay enlaces a los requisitos para ayudarlo a comenzar en cada paso. +::: diff --git a/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/_category_.json b/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/_category_.json new file mode 100644 index 00000000..3e9c6a08 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/_category_.json @@ -0,0 +1,8 @@ +{ + "label": "JavaScript", + "position": 1, + "link": { + "type": "generated-index", + "description": "Aprenda como utilizar las Deriv WebSocket API con JavaScript." + } +} diff --git a/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/get-country-list/index.md b/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/get-country-list/index.md new file mode 100644 index 00000000..09b05568 --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/get-country-list/index.md @@ -0,0 +1,193 @@ +--- +title: Obtener una lista de países +sidebar_label: Obtener una lista de países +sidebar_position: 2 +tags: + - country_list + - javascript +keywords: + - country_list + - javascript +description: '¿Cómo obtener una lista de países en la Deriv Api?' +--- + + + +Para obtener una lista de países, actualice el receptor de eventos de apertura utilizando el siguiente enfoque: + +```js title="index.js" +const ping_interval = 12000; // está en milisegundos, lo que equivale a 120 segundos +let interval; +// suscribirse al evento `open` +websocket.addEventListener('open', (event) => { + console.log('websocket connection established: ', event); + const payload = JSON.stringify({ + residence_list: 1, + }); + websocket.send(payload); + + // para mantener viva la conexión + interval = setInterval(() => { + const sendMessage = JSON.stringify({ ping: 1 }); + websocket.send(sendMessage); + }, ping_interval); +}); +``` + +Ahora, actualice el receptor de eventos del mensaje `` para renderizar los datos: + +```js title="index.js" +// suscribirse al evento `message` +websocket.addEventListener('message', (event) => { + const receivedMessage = JSON.parse(event.data); + switch (receivedMessage.msg_type) { + case 'residence_list': + console.log('list of countries', receivedMessage.residence_list); + break; + case 'ping': + console.log('ping/pong response: ', receivedMessage.ping); + break; + default: + console.log('received message: ', receivedMessage); + break; + } +}); +``` + +La respuesta debe ser un objeto: + +```json +{ + "echo_req": { + "req_id": 1, + "residence_list": 1 + }, + "msg_type": "residence_list", + "req_id": 1, + "residence_list": [ + { + "identity": { + "services": { + "idv": { + "documents_supported": {}, + "has_visual_sample": 0, + "is_country_supported": 0 + }, + "onfido": { + "documents_supported": {}, + "is_country_supported": 0 + } + } + }, + "phone_idd": "35818", + "text": "Aland Islands", + "value": "ax" + }, + { + "identity": { + "services": { + "idv": { + "documents_supported": {}, + "has_visual_sample": 0, + "is_country_supported": 0 + }, + "onfido": { + "documents_supported": { + "driving_licence": { + "display_name": "Driving Licence" + }, + "national_identity_card": { + "display_name": "National Identity Card" + }, + "passport": { + "display_name": "Passport" + } + }, + "is_country_supported": 1 + } + } + }, + "phone_idd": "355", + "text": "Albania", + "tin_format": ["^[A-Ta-t0-9]\\d{8}[A-Wa-w]$"], + "value": "al" + } + ] +} +``` + +Con esta llamada, obtendrá información útil sobre los países admitidos, como: + +- Un código de `2 letras` para cada país +- Proveedores de servicios de `Identidad` para cada país +- Formato del identificador fiscal del país (`tin_format`) +- etc. + +Esto puede ser útil para los formularios de creación de cuentas, en los que necesita pedir a los usuarios que proporcionen información validada sobre su base de identidad, en función de su país de residencia. + +:::precaución +Para las validaciones de dirección e identificación fiscal, utilice el 'tin_format' proporcionado para el país. +::: + +El país del usuario es importante para sus próximos pasos. Determina qué activos y características pueden utilizar. + +:::consejo +Es mejor obtener la lista de países antes de rellenar el formulario. +::: + +:::peligro +Necesitará contenidos detallados sobre `IDV` y servicios de identidad `ONFIDO`, sus diferencias y posibilidades. +::: + +Su código final será: + +```js title="index.js" +const app_id = 1089; // Sustitúyalo por su app_id o déjelo como 1089 para las pruebas. +const websocket = new WebSocket(`wss://ws.binaryws.com/websockets/v3?app_id=${app_id}`); +const ping_interval = 12000; // está en milisegundos, lo que equivale a 120 segundos +let interval; + +// suscríbase al evento `open` +websocket.addEventListener('open', (event) => { + console.log('websocket connection established: ', event); + const payload = JSON.stringify({ + residence_list: 1, + }); + websocket.send(payload); + + // para mantener viva la conexión + interval = setInterval(() => { + const sendMessage = JSON.stringify({ ping: 1 }); + websocket.send(sendMessage); + }, ping_interval); +}); + +// suscribirse al evento `message` +websocket.addEventListener('message', (event) => { + const receivedMessage = JSON.parse(event.data); + switch (receivedMessage.msg_type) { + case 'residence_list': + console.log('list of countries', receivedMessage.residence_list); + break; + case 'ping': + console.log('ping/pong response: ', receivedMessage.ping); + break; + default: + console.log('received message: ', receivedMessage); + break; + } +}); + +// subscribe to `close` event +websocket.addEventListener('close', (event) => { + console.log('websocket connectioned closed: ', event); + clearInterval(interval); +}); + +// subscribe to `error` event +websocket.addEventListener('error', (event) => { + console.log('ha ocurrido un error en nuestra conexión websocket', event); +}); +``` diff --git a/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/project-setup/index.md b/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/project-setup/index.md new file mode 100644 index 00000000..bd51e65a --- /dev/null +++ b/i18n/es/docusaurus-plugin-content-docs/current/languages/javascript/project-setup/index.md @@ -0,0 +1,63 @@ +--- +title: Configuración del proyecto +sidebar_label: Configuración del proyecto +sidebar_position: 0 +tags: + - javascript +keywords: + - js + - project-setup +description: Configuración del proyecto Deriv API JavaScript +--- + +### Crear un proyecto + +Vamos a crear una sencilla página `HTML` que contenga nuestro archivo JavaScript, que se encargará de nuestra conexión WebSocket. En primer lugar, cree un directorio para su próximo proyecto: + +```bash +mkdir deriv-websocket-demo +``` + +Navegue hasta la carpeta `deriv-websocket-demo` : + +```bash +cd deriv-websocket-demo +``` + +A continuación, cree los archivos necesarios tal y como ve a continuación: + +```bash +touch index.html index.css index.js +``` + +:::consejo +Le sugerimos que utilice [Visual Studio Code](https://code.visualstudio.com/) con [Live Server Extension](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer) activada. Esto le ayudará mucho con las implementaciones. +::: + +Ahora, abra el archivo `index.html` o utilice la [Live Server Extension](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer). + +Ahora, cambie el contenido de los archivos utilizando el siguiente método: + +```js title="index.js" +console.log("crearemos aquí nuestra conexión websocket"); +``` + +```html title="index.html" + + + + + + + Deriv HTML JS Demo + + +

Deriv WebSocket API demo

+