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:
- ApiKey
- ApiSecret
- Passphrase
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.
});