REST API
Kanał WebSocket jest publicznie dostępny i zapewnia aktualizacje danych rynkowych w czasie rzeczywistym dla zleceń i transakcji. W środowisku produkcyjnym obsługiwane są dwa punkty końcowe:
Można subskrybować następujące kanały:
| Metoda | Argumenty | Opis |
| SubscribeHeartBeat | Ping serwera w czasie rzeczywistym w celu utrzymania wszystkich połączeń aktywnych | |
| SubscribeStatus | aProductId: identyfikator produktu | Wysyła wszystkie produkty i waluty w ustalonym interwale |
| SubscribeCandles | aProductId: identyfikator produktu | Aktualizacje świec produktu w czasie rzeczywistym |
| SubscribeTicker | aProductId: identyfikator produktu | Aktualizacje cen w czasie rzeczywistym po każdym dopasowaniu transakcji |
| SubscribeTickerBatch | aProductId: identyfikator produktu | Aktualizacje cen w czasie rzeczywistym co 5000 milisekund |
| SubscribeLevel2 | aProductId: identyfikator produktu | Wszystkie aktualizacje i najłatwiejszy sposób na utrzymanie migawki księgi zleceń |
| SubscribeMarketTrades | aProductId: identyfikator produktu | Aktualizacje w czasie rzeczywistym przy każdej transakcji rynkowej |
| SubscribeUser | aProductId: identyfikator produktu | Wysyła tylko wiadomości zawierające uwierzytelnionego użytkownika |
| SubscribeFuturesBalanceSummary | Aktualizacje w czasie rzeczywistym za każdym razem, gdy zmienia się saldo futures użytkownika |
Kanały User i FuturesBalanceSummary wymagają uwierzytelnienia; należy najpierw uzyskać klucze API na koncie Coinbase, a następnie ustawić wartości we właściwości Coinbase komponentu:
ApiKey
ApiSecret
Uwierzytelnienie przyniesie kilka korzyści:
Prywatne punkty końcowe są dostępne do zarządzania zleceniami i zarządzania kontem.
Przed możliwością podpisywania żądań należy utworzyć klucz API za pośrednictwem strony internetowej Coinbase Pro. Klucz API będzie powiązany z konkretnym profilem. Po jego utworzeniu użytkownik otrzymuje 3 informacje, które należy zapamiętać:
Klucz i Secret zostaną losowo wygenerowane i udostępnione przez Coinbase Pro; Passphrase zostanie podane przez użytkownika w celu dodatkowego zabezpieczenia dostępu do API. Coinbase Pro przechowuje solony skrót hasła w celu weryfikacji, ale nie może go odzyskać, jeśli zostanie zapomniane.
Można ograniczyć funkcjonalność kluczy API. Przed utworzeniem klucza należy wybrać, jakie uprawnienia ma on posiadać. Dostępne uprawnienia to:
Konta
| Metoda | Arguments | Opis |
| ListAccounts | Pobiera listę kont handlowych z profilu klucza API. | |
| GetAccount | aAccountId: identyfikator konta | Informacje o jednym koncie. Użyj tego punktu końcowego, gdy znany jest account_id. Klucz API musi należeć do tego samego profilu co konto. |
Zamówienia
| Metoda | Arguments | Opis |
| PlaceNewOrder | aOrder: klasa zawierająca wszystkie możliwe pola zlecenia | Składa nowe zlecenie. Należy używać tylko wtedy, gdy wymagany jest dostęp do zaawansowanych opcji zlecenia. |
| PlaceMarketOrder |
aSide: kup lub sprzedaj aProductId: identyfikator produktu aQuoteSize: Kwota drugiego składnika aktywów w parze handlowej. aBaseSize: Ilość pierwszego składnika aktywów w parze handlowej aClient_oid: Identyfikator zlecenia wybrany przez użytkownika w celu identyfikacji zlecenia |
Składa nowe zlecenie rynkowe. |
| PlaceLimitOrder |
aSide: kup lub sprzedaj aProductId: identyfikator produktu aQuoteSize: Ilość drugiego aktywa w parze handlowej. aBaseSize: Ilość pierwszego aktywa w parze handlowej
aLimitPrice: limit cenowy Client_oid: Identyfikator zlecenia wybrany przez użytkownika w celu identyfikacji zlecenia |
Składa nowe zlecenie z limitem. |
| PlaceStopOrder |
aSide: kup lub sprzedaj ProductId: identyfikator produktu aBaseSize: Ilość pierwszego aktywa w parze handlowej StopPrice: cena stop aLimitPrice: limit ceny aStopDirection: strata lub wejście Client_oid: Identyfikator zlecenia wybrany przez użytkownika w celu identyfikacji zlecenia |
Składa nowe zlecenie stop |
| CancelOrder | aOrderId: identyfikator zlecenia | Anuluje wcześniej złożone zlecenie. Zlecenie musi należeć do profilu, do którego przypisany jest klucz API. |
| EditOrder |
aOrderId: identyfikator zlecenia aPrice: cena aSize: Ilość |
Edytuj zlecenie z określoną nową wielkością lub nową ceną |
| EditOrderPreview |
aOrderId: identyfikator zlecenia aPrice: cena aSize: Ilość |
Podgląd żądania edycji zlecenia z nową określoną wielkością lub ceną. |
| ListOrders | Pobiera listę zleceń filtrowaną według opcjonalnych parametrów zapytania (product_id, order_status itp.). | |
| GetOrder | aOrderId: identyfikator zlecenia | Pobierz pojedyncze zlecenie na podstawie jego identyfikatora. |
| PreviewOrder | Podgląd zlecenia. | |
| ClosePosition |
aOrderId: identyfikator zlecenia aProductId: identyfikator produktu aSize: ilość |
Składa zlecenie zamknięcia otwartych pozycji dla określonego product_id. |
Dane rynkowe
| Metoda | Arguments | Opis |
| GetPublicProducts | Pobierz listę dostępnych par walutowych do handlu. | |
| GetPublicProduct |
aProductId: identyfikator produktu |
Pobierz informacje o pojedynczym produkcie według identyfikatora produktu. |
| GetPublicProductBook | aProductId: identyfikator produktu | Pobierz listę ofert kupna/sprzedaży dla pojedynczego produktu. Poziom szczegółowości można dostosować za pomocą parametru limit. |
| GetPublicProductCandles |
aProductId: identyfikator produktu aStart: początek przedziału czasu. aEnd: koniec przedziału czasu aGranularity: Przedział czasowy reprezentowany przez każdą świecę. |
Pobierz kursy dla pojedynczego produktu według jego identyfikatora, pogrupowane w przedziały czasowe. |
| GetTrades | aProductId: identyfikator produktu | Pobierz informacje migawkowe według identyfikatora produktu o ostatnich transakcjach (tick) oraz najlepszej cenie kupna/sprzedaży. |
| GetTime |
|
Pobierz bieżący czas z Coinbase Advanced API. |
Realizacje
| Metoda | Arguments | Opis |
| GetFillsByOrderId | Pobierz listę realizacji przefiltrowanych według identyfikatora zamówienia | |
| GetFillsByProductId |
|
Pobierz listę realizacji transakcji przefiltrowaną według identyfikatora produktu |
| GetFillsByTradeId | Pobierz listę realizacji przefiltrowaną według identyfikatora transakcji |
Konwertuj
| Metoda | Arguments | Opis |
| CreateConvertQuote | Tworzenie oferty konwersji między walutami. | |
| CommitConvertTrade | Zatwierdź transakcję konwersji. | |
| GetConvertTrade | Pobierz szczegóły transakcji konwersji. |
Opłaty
| Metoda | Arguments | Opis |
| GetTransactionSummary | Pobierz podsumowanie opłat transakcyjnych. |
Produkty (uwierzytelnione)
| Metoda | Arguments | Opis |
| ListProducts | Wylistuj dostępne produkty. | |
| GetProduct | aProductId: identyfikator produktu | Pobierz konkretny produkt. |
| GetProductBook | aProductId: identyfikator produktu | Pobiera arkusz zleceń produktu. |
| GetProductCandles | aProductId: identyfikator produktu | Pobierz świece OHLCV dla produktu. |
| GetMarketTrades | aProductId: identyfikator produktu | Pobierz ostatnie transakcje rynkowe. |
| GetBestBidAsk | Pobierz najlepsze ceny bid/ask. |
Portfele
| Metoda | Arguments | Opis |
| ListPortfolios | Wyświetl listę wszystkich portfeli. | |
| CreatePortfolio | Utwórz nowe portfolio. | |
| DeletePortfolio | Usuń portfolio. | |
| GetPortfolioBreakdown | Pobierz szczegóły podziału portfela. | |
| MovePortfolioFunds | Przeniesienie środków między portfelami. |
Wieczyste
| Metoda | Arguments | Opis |
| GetPerpetualsPortfolioSummary | Pobierz podsumowanie portfela kontraktów wieczystych. | |
| ListPerpetualsPositions | Lista otwartych pozycji perpetual. | |
| GetPerpetualsPosition | Pobiera określoną pozycję na rynku kontraktów wieczystych. |