Coinbase Pro REST-API

· Componenten

Vanaf sgcWebSockets 4.4.8 wordt de Coinbase Pro REST-API volledig ondersteund. Met de REST-API krijg je toegang tot publieke marktdata en je private account, kun je nieuwe orders plaatsen, en meer. De sgcWebSockets-bibliotheek ondersteunt de volgende endpoints:

Authenticatie, Accounts, Orders,  Fills, Limits, Deposits, Withdrawals, Stablecoin Conversions, Payment Methoden, Coinbase Accounts, Fees, Reports, Profiles, Margin, Oracle


Coinbase Pro publieke REST-API 

Coinbase Pro biedt publieke marktdata aan via REST-endpoints. Wanneer je een van deze endpoints aanroept, krijg je een snapshot van de opgevraagde marktdata terug.

De marktdata-endpoints vereisen geen authenticatie en zijn dus vrij beschikbaar voor alle gebruikers.

Voorbeeld: om een snapshot van de ticker BTC-USD op te halen, voer je de volgende aanroep uit:

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
ShowMessage(oCoinbase.REST_API.GetProductTicker('BTC-USD'));

Coinbase Pro private REST-API 

De Coinbase Pro REST-API biedt zowel publieke als private endpoints. De private endpoints vereisen dat berichten worden ondertekend om de beveiliging van transacties te verhogen.

Eerst moet je inloggen op je Coinbase Pro-account en een nieuwe API aanmaken. Je krijgt dan de volgende waarden:

Deze velden moeten worden ingesteld in de Coinbase-eigenschap van de Coinbase-API-client-component.

Zodra dat is geconfigureerd, kun je private aanroepen naar de Coinbase Pro REST-API doen.

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
oCoinbase.Coinbase.ApiKey := '<your api key>';
oCoinbase.Coinbase.ApiSecret := '<your api secret>';
oCoinbase.Coinbase.ApiPassphrase := '<your passphrase>';
ShowMessage(oCoinbase.REST_API.ListAccounts);

Orders plaatsen op Coinbase Pro 

Om nieuwe orders te plaatsen op Coinbase Pro heb je eerst je API-sleutels nodig om bij je private data te kunnen. Zodra je API-sleutels zijn geconfigureerd, kun je beginnen met het plaatsen van orders.

Voorbeeld: plaats een nieuwe market-order, koop 0,002 contracten BTC-USD

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
oCoinbase.Coinbase.ApiKey := 'your api key';
oCoinbase.Coinbase.ApiSecret := 'your api secret';
oCoinbase.Coinbase.ApiPassphrase := 'your passphrase';
ShowMessage(oCoinbase.REST_API.PlaceMarketOrder(coisBuy, 'BTC-USD', 0.002));

Coinbase Pro SandBox-account 

Coinbase Pro biedt een SandBox-account waarmee je kunt handelen zonder echt geld. Voor dit account moet je andere API-sleutels aanmaken dan voor het productie-account.

Om het SandBox-account te gebruiken, zet je de eigenschap Coinbase.SandBox op true voordat je een API-aanroep doet.

oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
oCoinbase.Coinbase.ApiKey := 'your api key';
oCoinbase.Coinbase.ApiSecret := 'your api secret';
oCoinbase.Coinbase.ApiPassphrase := 'your passphrase';
oCoinbase.Coinbase.SandBox := True;
ShowMessage(oCoinbase.REST_API.ListAccounts);

SandBox-handel met de Coinbase Pro-API 

 In de volgende video zie je hoe je nieuwe orders plaatst via de REST-API en hoe je realtime-updates ontvangt via het WebSocket-user-kanaal.

});