Please find below the details for the current Accounts API endpoints.

If you have an Italian or Spanish Exchange account please see:

Global Exchange

InterfaceEndpointJSON-RPC Prefix<method> Example




JSON RESThttps://api.betfair.com/exchange/account/rest/v1.0/ getAccountFunds/

Operation Summary

Required Headers

Please note - although the majority of API-NG calls require both the X-Authentication (sessionToken) and X-Application (Application Key) in the request header, this isn't applicable for some API Account Operations that are available to Software Vendors Only. The applicable headers for each Vendor API operation are included in the below table




Available to Software Vendors Only




createDeveloperAppKeys (String appName )

Create 2 Application Keys for given user; one 'Delayed and the other 'Live'. You must apply to have your 'Live' App Key activated. Required 

List< DeveloperApp >

getDeveloperAppKeys ( )

Get all application keys owned by the given developer/vendor Required 


getAccountFunds ( )

Get available to bet amount. RequiredRequired
TransferResponsetransferFunds Wallet from, Wallet to, double amount )  RequiredRequired


getAccountDetails ( )

Returns the details relating your account, including your discount rate and Betfair point balance. RequiredRequired
StringgetVendorClientId ( )Returns the vendor client id for customer account which is a unique identifier for that customer. Required


getApplicationSubscriptionToken ( intsubscriptionLength )

Used to create new subscription tokens for an application. Returns the newly generated subscription token which can be provided to the end user.Available to owner managed (Vendor) App Keys OnlyYRequiredRequired


activateApplicationSubscription ( StringsubscriptionToken )

Activates the customers subscription token for an application Required 


cancelApplicationSubscription ( StringsubscriptionToken )

Cancel the subscription token. The customers subscription will no longer be active once cancelled. Available to owner managed (Vendor) App Keys OnlyYRequiredRequired
StringupdateApplicationSubscription ( String vendorClientId, int subscriptionLength )Update an application subscription with a new expiry date. Available to owner managed (Vendor) App Keys OnlyYRequiredRequired

List< ApplicationSubscription >

listApplicationSubscriptionTokens ( SubscriptionStatus subscriptionStatus )

Returns a list of subscription tokens for an application based on the subscription status passed in the request.YRequiredRequired

List< AccountSubscription >

listAccountSubscriptionTokens ( )

List of subscription tokens associated with the account. Available to owner managed (Vendor) App Keys OnlyYRequiredRequired
List<SubscriptionHistory>getApplicationSubscriptionHistory ( String vendorClientId )Returns a list of subscriptions tokens that have been associated with the customers account. Available to owner managed (Vendor) App Keys OnlyYRequiredRequired in request header OR request body


getAccountStatement ( String locale, int fromRecord, int recordCount, TimeRange itemDateRange, IncludeItem includeItem,Walletwallet )

Get account statement - provides full audit trail of money moving to and from your account.Not available via the Vendor Web APIRequiredRequired


listCurrencyRates ( String fromCurrency )

Returns a list of currency rates based on given currency.    


token ( String client_idGrantType grant_type, String code, String client_secret, String refresh_token )

Generate web vendor session based on a standard session identifiable by auth code, vendor secret and app keyYRequiredRequired


getVendorDetails ( String vendorId )

Return details about a vendor from its identifier. Response includes Vendor Name and URL   


revokeAccessToWebApp ( long vendorId )

Remove the link between an account and a vendor web app. This will remove the refreshToken for this user-vendor pair subscription.   


listAuthorizedWebApps ( )

Retrieve all vendors applications currently subscribed to by the user making the request   


isAccountSubscribedToWebApp ( String vendorId )

Return whether an account has authorised a web app.   


getAffiliateRelation ( List<String> vendorClientIds )

Return relation between a list of users and an affiliateYRequiredRequired