Currencyfair Currency Fair API

The CurrencyFair API from Currencyfair — 209 operation(s) for currencyfair.

Operations 258

Showing the first 250 of 258. The full set is in the contract, and via get_provider_operations.

POST /oauth Oauth #
GET /whoami Service for retrieving simple information about the currently authenticated user #
GET /usersTitles Returns a list of user titles (Mr, Mrs etc.) #
GET /usersTitles/{id} Returns a given user title #
GET /countries Returns list of countries #
GET /countries/{id} Returns given country #
GET /nationalities Returns list of nationalities #
GET /nationalities/{id} Returns given nationality #
GET /currencies Returns list of currencies #
GET /currencies/{code} Returns given currency #
POST /comparisonQuotes Returns a comparison quote #
GET /users/{userId} Get customer details #
PATCH /users/{userId} Update customer details #
GET /users/{userId}/summaries Get the list of summary items for a user #
GET /users/{userId}/summaries/{currencyCode} Get the summary item for given currency for a user #
GET /users/{userId}/wallet/currencies Get the list of wallet currencies for a user #
GET /users/{userId}/wallet/currencies/{currencyCode} Get a wallet currency for given currency for a user #
POST /quicktradeQuotes QuickTrade quote #
POST /quicktradeOrders QuickTrade order #
GET /users/{userId}/orders Get the list of orders for a user #
GET /users/{userId}/orders/{orderId} Get single order details for given user #
PATCH /users/{userId}/orders/{orderId} Amend the open order rate #
PUT /users/{userId}/orders/{orderId} Amend the open with quick trade order #
DELETE /users/{userId}/orders/{orderId} Cancel the open order #
GET /users/{userId}/orders/{orderId}/history Get order's history #
GET /marketplaces Get all marketplaces information without queue details #
GET /marketplaces/{currencyFrom}/{currencyTo} Get single marketplaces information with queue details #
POST /marketplaceOrders Marketplace order #
GET /bestMatchedRates/{currencyFrom}/{currencyTo} Get best matched rate graph for given currency pair #
GET /users/{userId}/referralCodes Get user referral codes #
GET /users/{userId}/referralBounties Get all referral bounties #
GET /users/{userId}/referralBounties/{bountyId} Get single referral bounty #
GET /users/{userId}/referralBounties/awarded Get awarded referral bounties #
POST /users/{userId}/referralBounties/awarded/{rewardId}/redeem Redeem awarded referral bounty #
GET /currencyfair/accounts Currencyfair Accounts Collection #
GET /currencyfair/accounts/{currencyCode} Currencyfair Accounts Entity #
GET /languages Languages Collection #
GET /languages/{id} Languages Entity #
POST /users/{userId}/affiliate Registers a customer as affiliate #
POST /users/{userId}/affiliate/{clickId}/{medium} Registers a customer as affiliate #
GET /transferTypes Transfer Types Collection #
GET /transferTypes/{transferTypeId} Transfer Types Entity #
GET /transferPurposes Transfer Purposes Collection #
GET /transferPurposes/{transferPurposeId} Transfer Purpose Entity #
GET /transferFees Transfer Fees Collection #
GET /transferFees/{currencyCode} Transfer Fee Entity #
GET /users/{userId}/rewards/transfers User's Free Transfers Collection #
GET /users/{userId}/rewards/transfers/{id} User's Free Transfers Entity #
GET /users/{userId}/rewards/transfers/detail User's Free Transfers Entities Collection #
GET /users/{userId}/rewards/transfers/detail/{id} User's Free Transfers Entity #
GET /users/{userId}/rewards/referrals User's referral rewards collection #
GET /users/{userId}/rewards/referrals/{id} User's referral rewards entity #
GET /users/{userId}/accounts/{id} Accounts Entity #
DELETE /users/{userId}/accounts/{id} Delete account #
PATCH /users/{userId}/accounts/{id} Edit Account Details #
GET /users/{userId}/accounts/{id}/validate Validate account can be used for transfer/deposit #
GET /users/{userId}/accounts Accounts Collection #
POST /users/{userId}/accounts Create Account #
POST /users/{userId}/deposits Create deposit #
GET /users/{userId}/deposits Deposits Collection #
PATCH /users/{userId}/deposits/{id} Edit deposit #
GET /users/{userId}/deposits/{id} Deposits Entity #
GET /countryAccountConfigs/{countryId} Country account config #
POST /accountsBankLookup Lookup a bank details #
POST /requireBeneficiaryVerification Check if beneficiary requires verification #
POST /partner/{partner}/verification/pin Verifies a Partner PIN code #
GET /partner/{partner}/verification/pin Checks if a Partner PIN code exists #
GET /users/{userId}/devices Users auth devices #
POST /users/{userId}/devices Enroll and update devices #
POST /users/{userId}/devices/{deviceId}/sendCode Send SMS #
GET /automaticQuickTradesStatuses Automatic Quick Trade statuses collection #
GET /automaticQuickTradesStatuses/{statusId} Automati Quick Trade status entity #
POST /users/{userId}/automaticQuickTrades Create AQT #
GET /users/{userId}/automaticQuickTrades AQT Collection #
GET /users/{userId}/automaticQuickTrades/{id} AQT Entity #
DELETE /users/{userId}/automaticQuickTrades/{id} Cancel AQT #
GET /users/{userId}/transactionTimes/deposit/{currencyCode} Deposit transaction times entity #
GET /users/{userId}/transactionTimes/transfer/{currencyCode} Transfer transaction times entity #
GET /users/{userId}/transactionTimes/combined/{fromCurrencyCode}/{transferType}/{toCurrencyCode} Combined transaction times entity, Deposit + Transfer #
POST /users/{userId}/notifications/preferences Sets Push Notification Preferences #
GET /users/{userId}/notifications/preferences Returns list of Push Notification Preferences #
GET /users/{userId}/notifications/platforms Returns list of Push Notification Platforms with enabled flags #
PATCH /users/{userId}/notifications/platforms/{platformId} Sets a Push Notification Platform toggle at a user level #
GET /users/{userId}/notifications/platforms/{platformId} Gets a specific User Push Notification Platform with enabled flags #
GET /notifications/platforms Returns list of push Notification Platforms #
GET /notifications/platforms/{notificationPlatformsId} Returns a single push notification platforms #
GET /notifications/events Returns list of push Notification Events #
GET /notifications/events/{notificationEventsId} Returns a single push notification event #
POST /users/{userId}/notifications/devices Sets a Notification Device for a User #
GET /countries/geolookup Gets the country for the remote IP of the client #
GET /users/{userId}/messages Get all messages for a customer #
PATCH /users/{userId}/messages/{messageId} Sets a Users Message read toggle #
GET /users/{userId}/messages/{messageId} Get single user message #
POST /personal/register Creates a new personal user account #
POST /personal/register/validateEmail Validates email address #
POST /business/register Business customer registration #
GET /business/whoami Provides basic informations about business customer #
POST /business/lookup Provides basic information about business customer #
GET /business/activation Shows business activation status #
GET /business/activation/details Shows business activation 'details' step status #
POST /business/activation/details Creates a new company #
GET /business/activation/activity Shows business activation 'activity' step status #
POST /business/activation/activity/fields Updates business 'activity' fields #
GET /business/activation/activity/fields/sector Get possible acitivity field values for company sector #
GET /business/activation/activity/fields/tradeSize Get possible acitivity field values for trade sizes #
GET /business/activation/activity/fields/usageFrequency Get possible acitivity field values for usage frequency #
GET /business/activation/activity/fields/registrationReason Get possible acitivity field values for registration reason #
GET /business/activation/members Shows business activation 'members' step status #
POST /business/activation/members Attempts to finish the 'members' step #
GET /business/activation/members/list/{memberId} Get single company member details #
GET /business/activation/members/list/{memberId}/docs Get documents uploaded by given company member #
POST /business/activation/members/list/{memberId}/docs Upload documents for given company member #
POST /business/activation/members/list Creates a new company member #
PUT /countryActivationAddressLookup/{countryId} Lookup an address #
GET /users/{userId}/docs Fetches customer documents #
POST /users/{userId}/docs Upload documents for given customer #
GET /users/{userId}/docs/uploadSteps Returns steps for document upload (a simplified version of 'identification… #
POST /docusign/send Trigger sending documents using DocuSign #
GET /docusign/status Get status of DocuSign envelopes #
GET /images Get collection of all images #
GET /images/{imageId} Get single image #
GET /onlineBanks Get collection of banks information #
GET /onlineBanks/{bankId} Get single bank information #
POST /countries/{countryId}/address/lookup Lookup address for given address fragment in given country #
GET /personalIdentificationProofTypes/{proofTypeId}/fields/{paramName}/{paramValue} Get additional fields required for given proof type when paramName = paramValue #
POST /personal/activation/steps/{activationStepId}/identification/{processId}/steps/{stepId}/proofRequirements/{reqId} Send identification document #
GET /taxInfo Get tax info for the current user #
PUT /taxInfo Update tax info for the current user #
PUT /personal/activation/steps/migrate Updates Lead Customer details to migrate them to being a Skeleton customer… #
PUT /personal/activation/steps/{stepId} Updates customer details #
GET /countryActivationConfigs/{countryId} Returns an object containing the fields required for customer activation based… #
GET /personal/activation/steps Returns status of activation process steps #
GET /countries/address/fields Returns an object containing a collection of all fields required for manual… #
GET /countries/address/fields/{countryId} Returns an object containing the fields required for manual address entry for a… #
GET /regulations Provides the collection of infotips for regulations #
GET /regulations/locate Provides the infotip for regulations based on the IP Address #
GET /personal/regulatory/steps/1/fields Returns list of regulatory fields that a personal customer is required to answer #
GET /personal/regulatory/income/ranges/fields Returns list of income range fields that a personal customer is required to… #
GET /personal/regulatory/transaction/ranges/fields Returns list of transaction size range fields that a personal customer is… #
GET /personal/register/fields Returns list of personal details fields required to register customer #
GET /business/register/fields Returns list of business details fields required to register customer #
GET /personal/activation/steps/migrate/fields/{countryId} Returns list of personal details fields required to migrate a Lead Customer #
GET /personal/activation/steps/{stepId}/fields/{countryId} Returns list of personal details fields required to activate customer #
GET /users/{userId}/automaticQuickTrades/steps Returns list of steps to be taken in the "Send money" flow #
GET /users/{userId}/deposits/steps Returns list of steps to be taken in the "Topup" flow #
GET /users/{userId}/requestPayment/steps Returns list of steps to be taken in the "Request Payment" flow #
GET /users/{userId}/transferIn/steps Returns list of steps to be taken in the "Transfer In" flow #
GET /users/{userId}/paymentMethods/{currencyCode} Returns available payment methods for given currency, along with transaction… #
GET /users/{userId}/paymentMethods/{currencyCode}/{transferCurrency} Returns available payment methods for given currency, along with transaction… #
GET /customerSupport/contactForm/fields Returns contact form fields #
POST /customerSupport/contactForm Sends contact form #
GET /users/{userId}/termsAndConditions/fields Returns Terms & Conditions fields #
POST /users/{userId}/termsAndConditions Sends Terms & Conditions params #
GET /users/{userId}/paymentProviders/paymentCards/fields Returns Payment Card form fields #
GET /users/{userId}/paymentProviders/paymentCards/saved Returns saved Payment Cards collection #
DELETE /users/{userId}/paymentProviders/paymentCards/saved/{cardId} Removes saved Payment Card #
POST /users/{userId}/paymentProviders/paymentCards/transaction Make Payment Card Transaction #
POST /binCheck Check Payment Card BIN number #
GET /users/{userId}/compliance/steps Compliance process - returns (if available) the status of the compliance… #
POST /users/{userId}/compliance/usage Compliance process - update customer usage declaration #
GET /users/{userId}/compliance/usage/fields Returns the fields requested by the usage step of the compliance process #
POST /users/{userId}/compliance/address Compliance process - process an update to the address step of the process #
GET /users/{userId}/compliance/document/requirements Compliance process - form describing the documents required #
POST /users/{userId}/compliance/documents Compliance process - used to upload an address document if the process… #
GET /users/{userId}/addresses Returns the customer address(es) #
POST /users/{userId}/addresses Update a customer address #
GET /users/{userId}/subUsers Returns collection of subusers for given root userId customer #
POST /users/{userId}/subUsers Creates new subuser #
GET /users/{userId}/subUsers/{subUserId} Returns subuser #
PUT /users/{userId}/subUsers/{subUserId} Updates subuser #
PATCH /users/{userId}/subUsers/{subUserId} Change subuser status or role #
DELETE /users/{userId}/subUsers/{subUserId} Delete subuser #
GET /users/{userId}/subUsers/fields Returns fields for setting up a new subUser #
GET /users/{userId}/invites Returns collection of invites for given root userId customer #
POST /users/{userId}/invites Creates new invite #
GET /users/{userId}/invites/{subUserId} Returns given subuser's invite #
PATCH /users/{userId}/invites/{subUserId} Resends invite to subUserId #
DELETE /users/{userId}/invites/{subUserId} Delete subuser's invite #
GET /business/inviteRegister/{urlCode}/fields Returns fields for registering using invitation code #
GET /business/inviteRegister/steps Returns steps for registering using invitation code #
POST /business/inviteRegister/{urlCode} Registers new subuser from invitation #
GET /users/{userId}/registration/steps Returns list of customer registration steps including their statuses and… #
GET /users/{userId}/capabilities Returns an object containing a number of boolean flags indicating customer… #
POST /users/{userId}/transfers Create transfer out #
GET /users/{userId}/transfers Get collection of transfers #
GET /users/{userId}/transfers/{transferId} Get transfer details #
PATCH /users/{userId}/transfers/{transferId} Change transfer details #
POST /users/{userId}/roles Create new user role #
GET /users/{userId}/roles Get collection of User Roles in customer's organisation #
PUT /users/{userId}/roles/{roleId} Update user role #
GET /users/{userId}/roles/{roleId} Get User Role details #
GET /users/{userId}/transfers/{transferId}/approvers Get transfer approvers list #
POST /users/{userId}/transfers/{transferId}/notify Notify transfer approvers about transfer to approve #
GET /users/{userId}/abtests/{abtestName} Check on what A/B test branch is user #
GET /users/{userId}/interstitialScreens/{screenName} Get user interstitial screens #
POST /personal/regulatory/steps/1 Saves the personal regulatory information for a user #
GET /partner/xero Get Xero integration details #
GET /partner/xero/oauth Get Xero oauth URL #
POST /partner/xero/oauth Perform Xero oauth #
DELETE /partner/xero/oauth Log out from Xero #
PATCH /partner/xero/oauth Change state of terms and conditions variable #
GET /partner/xero/accounts Get Xero bank accounts #
POST /partner/xero/accounts Create Xero bank account #
GET /partner/xero/accounts/{accountId} Get Xero bank account #
PATCH /partner/xero/accounts/{accountId} Update Xero bank account #
GET /users/{userId}/namedDepositors/fields Returns fields for setting up a named depositor #
POST /users/{userId}/namedDepositors Create Named Depositor #
GET /users/{userId}/namedDepositors Named Depositors Collection #
PUT /users/{userId}/namedDepositors/{id} Edit Named Depositor #
GET /users/{userId}/namedDepositors/{id} Named Depositors Entity #
DELETE /users/{userId}/namedDepositors/{id} Delete Named Depositor #
POST /users/{userId}/tieredPricing Accept/Decline Smart Rates terms and conditions #
GET /users/{userId}/tieredPricing User details in relation to Smart Rates #
GET /users/{userId}/tieredPricing/rates Fetch information about assigned PriceBook rates #
GET /users/{userId}/tieredPricing/fees Fetch information about assigned PriceBook fees #
GET /users/{userId}/wallet/transactions List wallet transactions #
GET /users/{userId}/wallet/transactions/{transactionId} List wallet transactions #
GET /users/{userId}/wallet/transactions/export Get link to exported wallet transactions file #
GET /requiredVersion Get version requirements for API clients #
GET /transfer/limit/{currencyCode} Returns list of transfer out limit for currency per country #
GET /transfer/limit/{currencyCode}/{countryId} Returns transfer limit for currency code by country #
GET /virtualAccounts/{accountId} Get Virtual Account #
PATCH /virtualAccounts/{accountId} Opt into a Virtual Account #
GET /virtualAccounts Get Virtual Accounts #
GET /virtualAccounts/{currencyCode}/steps Get Steps for Virtual Account Registration #
GET /virtualAccounts/{currencyCode}/steps/{stepId} Get Single Step for Virtual Account Registration #
GET /virtualAccounts/notifyRequired/{customerId}/{currencyCode} Notify backend that customer will need Virtual Account for given currency #
GET /users/{userId}/activity/{activityId} Fetch a single activity #
GET /users/{userId}/activity Fetch customer's latest activity #
GET /users/{userId}/paymentProviders/openBanking/pis/banks Get open banking Payment Initiation Services provider #
GET /users/{userId}/paymentProviders/openBanking/pis/payment/{id} Get open banking PIS payment entity #
POST /users/{userId}/paymentProviders/openBanking/pis/payment Create an open banking payment initiation request #
GET /users/{userId}/paymentProviders/openBanking/pis/payment/detail/{id} Get open banking PIS payment details #
GET /users/:user_id/recipients/fields Returns list of recipient fields required to add a recipient #
POST /users/:user_id/recipients/precheck Verifies basic bank account details #
GET /users/{userId}/recipients/{id} Recipients Entity #
DELETE /users/{userId}/recipients/{id} Delete recipient #
PATCH /users/{userId}/recipients/{id} Edit recipient #
GET /users/{userId}/recipients/{id}/validate Validate existing recipient #
GET /users/{userId}/recipients Recipients collection #
POST /users/{userId}/recipients Create recipient #
POST /users/{userId}/exchangeAndTransfer Create Exchange & Transfer #
GET /users/{userId}/exchangeAndTransfer Exchange & Transfer Collection #
GET /users/{userId}/exchangeAndTransfer/{id} Exchange & Transfer Entity #
GET /exchangeAndTransfer/steps/{stepId} Exchange & Transfer Step #
GET /exchangeAndTransfer/steps Exchange & Transfer Steps #
GET /openBanking/login/fields Returns list of fields required for SCA Login page #
POST /auth/reset Sends forgot password email to customer #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/currencyfair:currencyfair-currencyfair-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

currencyfair-currencyfair-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Currency Fair API
  description: www.currencyfair.com
  version: 2.11.3
  contact:
    name: Customer Support
    url: https://www.currencyfair.com
    email: support@currencyfair.com
servers:
- url: https://api.currencyfair.com/
security:
- token:
  - all
tags:


# --- truncated at 32 KB (377 KB total) ---
# Full source: https://artifacts.apis.io/currencyfair/openapi/currencyfair-currencyfair-api-openapi.yml