Forkast Developer Docs
Typescript SDK
Complete Example
1 min
this example demonstrates the complete flow of logging in to get an access token getting event and market data viewing order books and token prices placing an order managing orders (viewing and canceling) checking balances import { forkastsdk, network } from "@forkastgg/client"; async function completeexample() { try { // initialize the sdk const sdk = new forkastsdk(network mainnet, "your api key"); const marketservice = sdk getmarketservice(); const accountservice = sdk getaccountservice(); const balancesservice = sdk getbalancesservice(); const orderservice = sdk getorderservice(); // 1 login with the wallet to get access token const loginresponse = await accountservice loginwithprivatekey( wallet privatekey ); console log("login successful ", loginresponse); // 2 get event data const eventid = 383; // replace with a valid event slug const eventdata = await marketservice geteventdata(eventid); console log("event data ", eventdata); // 3 choose a market and get its details const market = eventdata markets\[0]; console log("selected market ", market); // 4 get order book for the market const outcomeid = market outcomes\[0] id; // choose first outcome const outcometype = market outcomes\[0] outcometype; const orderbook = await marketservice getorderbook( market id, outcomeid, outcometype ); console log("order book ", orderbook); // 5 get token prices const tokenprices = await marketservice gettokenprices(market id); console log("token prices ", tokenprices); // 6 place an order const orderresponse = await orderservice placesingleorder( market id, { id outcomeid, tokenid market outcomes\[0] tokenid, outcometype outcometype, }, { wallet wallet address, proxy wallet walletproxyaddress, private key wallet privatekey, }, 0 5, // price 100, // amount 0 // side (0 for buy, 1 for sell) ); console log("order placed ", orderresponse); // 7 get all orders for the user const userorders = await orderservice getallorders( wallet address, outcomeid ); console log("user orders ", userorders); // 8 cancel the order if needed if (orderresponse success && userorders data length > 0) { const cancelresponse = await orderservice cancelorder( userorders data\[0] id ); console log("order cancelled ", cancelresponse); } // 9 get updated balances const balances = await balancesservice getbalances( loginresponse accesstoken ); console log("final balances ", balances); } catch (error) { console error("error in complete example ", error); } } // run the example completeexample();