Skip to content
EN

Developers

Endpoints

Every route of the Ora API that an API key can call.

Every route the API exposes to a key. All of them require it. Paths are relative to https://api.useora.xyz; {address} and {mint} are a token's mint (Solana) or contract (EVM).

Method Path What it does
GET /auth/me Your account, including whether API access is on (apiAccess) and whether a key exists (hasApiKey).
POST /me/api-key Creates a new API key and returns it once. Any previous key stops working at once.
POST /me/api-key/revoke Revokes your API key: every call made with it is refused from then on.
POST /me/referral-code Sets a custom referral code.
GET /me/rewards Everything in the Rewards window and on the profile card: points, rank, your rewards on their way and to claim (balance), referral earnings and referrals.
POST /rewards/claim Claims your rewards: sends all of your Rewards to claim (your cashback and referral shares that have reached the rewards pool) to your Ora wallet in one transfer, in SOL. The network fee is taken from the amount sent. Returns the transfer's signature and the lamports sent, or 404 when there is nothing to claim.
GET /me/settings Your app preferences, as saved by PUT /me/settings.
PUT /me/settings Replaces your app preferences in full (no merge).
GET /user/pinned-tokens Your pinned tokens.
POST /user/pinned-tokens Pins a token, or unpins it if it is already pinned.
GET /user/tracked-wallets The wallets you track.
POST /user/tracked-wallets Adds wallets to track, several at once.
DELETE /user/tracked-wallets/{address} Stops tracking a wallet.
PATCH /user/tracked-wallets/{address} Renames a tracked wallet or changes its emoji.
GET /user/tracked-wallets/trades Recent trades of the wallets you track.
GET /user/tracked-wallets/trades/stream Live trades of the wallets you track (stream).
Method Path What it does
POST /engine/deploy/plan Suggests a wallet and layer layout for a launch, with its full cost and market estimate, in one call.
POST /engine/deploy/wallets/add Custom wallets: adds holder wallets and returns the recomputed plan (wallets, layers, quotes and estimate).
POST /engine/deploy/wallets/allocation Custom wallets: sets the allocation of one or more holders and returns the recomputed plan.
POST /engine/deploy/wallets/remove Custom wallets: removes holders and returns the recomputed plan.
GET /engine/launch-bounds The minimum Supply Buy % and Dev Buy % a launch must meet.
POST /engine/drafts Creates a launch draft.
GET /engine/drafts/{id} Loads a launch draft.
PUT /engine/drafts/{id} Saves a launch draft.
POST /engine/drafts/{id}/archive Deletes a launch draft.
GET /engine/launches/drafts Everything not launched yet: launch drafts, plus token info that was uploaded but never prepared.
POST /engine/prepare Prepares a launch: creates the token's mint, the draft token and its wallets.
POST /engine/{mint}/delete Deletes a token that is still being prepared, and its wallets.
POST /engine/fund Builds the unsigned SOL transfers that fund a launch's wallets, for your wallet to sign.
GET /engine/fund/{mint} The Private Funding parts recorded for a token.
POST /engine/fund/confirm Confirms that the funding transactions have landed on-chain.
POST /engine/fund/verify Checks direct funding from the wallets' balances.
POST /engine/launch Launches a prepared token on-chain.
POST /engine/cancel Builds the transactions that recover the SOL from the wallets of a launch that is being prepared, is funded or failed. Partly signed by Ora; your wallet signs the rest.
POST /engine/cancel/submit Submits the signed cancel transactions.
POST /engine/collect Builds the transactions that collect a launch's proceeds. Partly signed by Ora; your wallet signs the rest.
POST /engine/collect/submit Submits the signed collect transactions, for a collectId.
GET /engine/token/{address}/pre-deploy Launch cost estimate of a prepared token that isn't launched yet.
Method Path What it does
GET /engine/tokens Your tokens, by status.
GET /engine/token/{address} A token's identity: metadata, supply and launch status.
GET /engine/token/{address}/positions Your wallets' positions on a token: holdings, SOL balance, realized and unrealized PnL, what active strategies reserve (lockedTokens, lockedQuote), and totals.
PATCH /engine/token/{address}/position/wallet-name Renames one of a token's wallets (the name shown in the positions table).
POST /engine/token/{address}/position/buy Buys across several of your wallets.
POST /engine/token/{address}/position/sell Sells across several of your wallets.
POST /engine/token/{address}/position/nuke Sells every position at once (emergency exit).
POST /engine/token/{address}/position/send/preview Quotes a send before you confirm it.
POST /engine/token/{address}/position/send Sends tokens from one or more of your Ora wallets to up to 5 external addresses. Ora's fee is taken in tokens and sold for SOL in the same bundle.
POST /engine/token/{address}/burn Burns tokens from one of your wallets. This can't be undone.
POST /engine/token/{mint}/lock Locks tokens from one of your Ora wallets in a Streamflow time lock.
POST /engine/token/{mint}/lock/withdraw Releases a lock back to the wallet that created it.
GET /engine/token/{mint}/locks A token's locks.
GET /engine/burns/{mint} A token's burn history.
GET /engine/sends/{mint} A token's send history.
GET /engine/token/{address}/creator-rewards Creator rewards accumulated for a token.
POST /engine/reward-claim Claims the creator rewards accumulated in a Pump.fun creator vault.
POST /engine/token/{mint}/layers Adds a layer of holders to a token you launched (a cleaning), filled evenly with your own aged or imported wallets that no launch holds (walletIds).
GET /engine/unlock/{mint} The token's wallets you can gather SOL from (balance above the reserve, largest first), the amount available in each, the receiving wallet and the allowed range.
POST /engine/unlock Gathers the SOL amount you choose from a token's wallets into its receiving wallet. Each source wallet pays its own fee.
POST /engine/token/{address}/callouts/watch Starts or renews the token's Callouts: for a while, its FOMO and Pump.fun callouts are fetched regularly and pushed to you live.

The routes keep their -sells names but manage buy strategies too: pass side: "buy" when you create one. See Buy strategies.

Method Path What it does
GET /engine/strategies Every strategy of a token, sell or buy: mirror, TWAP and limit.
GET /engine/strategies/limit-sells A token's limit sells.
POST /engine/strategies/limit-sells Creates one or more limit sells for a token, or limit buys with side: "buy".
PATCH /engine/strategies/limit-sells/{id} Edits a limit sell (only the fields you send).
POST /engine/strategies/limit-sells/{id}/enable Enables a limit sell.
POST /engine/strategies/limit-sells/{id}/disable Disables a limit sell.
DELETE /engine/strategies/limit-sells/{id} Deletes a limit sell.
GET /engine/strategies/mirror-sells A token's mirror sells.
POST /engine/strategies/mirror-sells Creates one or more mirror sells for a token, or mirror buys with side: "buy".
PATCH /engine/strategies/mirror-sells/{id} Edits a mirror sell (only the fields you send).
POST /engine/strategies/mirror-sells/{id}/enable Enables a mirror sell.
POST /engine/strategies/mirror-sells/{id}/disable Disables a mirror sell.
DELETE /engine/strategies/mirror-sells/{id} Deletes a mirror sell.
GET /engine/strategies/twap-sells A token's TWAP sells.
POST /engine/strategies/twap-sells Creates one or more TWAP sells for a token, or TWAP buys with side: "buy".
PATCH /engine/strategies/twap-sells/{id} Edits a TWAP sell (only the fields you send).
POST /engine/strategies/twap-sells/{id}/enable Enables a TWAP sell.
POST /engine/strategies/twap-sells/{id}/disable Disables a TWAP sell.
DELETE /engine/strategies/twap-sells/{id} Deletes a TWAP sell.
Method Path What it does
GET /portfolio/stats Portfolio stats.
GET /portfolio/performance Portfolio performance over a timeframe (default: all time).
GET /portfolio/coins Your open coin positions.
GET /portfolio/history Your closed positions.
GET /portfolio/pnl-calendar Daily PnL calendar.
GET /portfolio/pnl-chart Cumulative realized PnL over time, for charts.
GET /portfolio/launches Your launches, with their balances and the holdings left in their wallets.
GET /portfolio/launches-chart Number of launches per period, for charts.
POST /portfolio/launches/{id}/archive Archives a launch, or unarchives it if it is archived.
GET /engine/launches/completed Every token you created that has a mint, whatever its status (the Launches page).
GET /portfolio/wallets The wallets of one or more launches, with what each still holds.
GET /portfolio/wallets/available Your wallets that no launch holds (bought or imported), with their source and the id that POST /engine/prepare takes as warmWalletId.
POST /portfolio/wallets/import Imports wallets from your own private keys (source: imported).
POST /portfolio/wallets/exit-preview Previews, token by token, what POST /portfolio/wallets/exit with a destination would send through Husher for these wallets, before anything moves.
POST /portfolio/wallets/exit Withdraws the wallets in walletAddresses to the destination address through Husher: each wallet pays its own Husher deposit address, and Husher pays destination once per token (up to 70 wallets per token, largest first). Always send destination. The app's Consolidate Withdraw sends them to your Ora wallet.
GET /portfolio/wallets/exits Your 20 most recent withdrawals from launch wallets, one per token, newest first, with their progress.
Method Path What it does
GET /portfolio/marketplace/wallets Aged wallets for sale: on sale a day after funding with a landed buy, not owned, and not reserved by another buyer.
POST /portfolio/marketplace/quote Prices aged wallets on one chain and reserves them for you for about 2 minutes.
POST /portfolio/marketplace/buy Pays a quote: send its deposits signed, in its order and unchanged (otherwise 409). Ora broadcasts them.
Method Path What it does
GET /engine/token/{address}/metrics Token metrics: market cap, price, liquidity and supply.
GET /engine/token/{address}/candles A page of OHLCV candles, oldest first: up to limit (default and maximum 300) candles before before, or the latest ones without before.
GET /engine/token/{address}/live-stats Live trading stats for every timeframe (5m, 1h, 6h, 24h) in one response: buys, sells, volume, unique traders, ownership split and price change.
GET /engine/token/{address}/trades A token's recent trades, newest first, with optional wallet, amount and time filters.
GET /engine/token/{address}/holders A token's holders, with each one's balance and share of supply, and which wallets are yours.
GET /engine/token/{address}/top-traders A token's top traders, ranked by PnL.
GET /tokens/{mint}/trades Public trade feed of a token.
GET /tokens/{mint}/holders Top holders of a token, largest first, page by page.
GET /quote/sol-for-percent SOL needed to buy a given % of the supply.
GET /quote/tokens-for-sol Tokens received for a given amount in base units (lamports on Solana, wei on EVM).
GET /launchpads/{protocol}/quotes The quote assets a launchpad accepts on its chain, native first.
GET /launchpads/pumpfun/charities Searches donate.gg's active charities by name, for pumpfunFeeShares in POST /engine/prepare (kind: 'charity', charityId = id).
GET /market/lighthouse Market pulse, as shown in the app's footer.
GET /pnl/calendar Daily PnL calendar data.
GET /pnl/summary PnL summary, as shown on a PNL card.
Method Path What it does
GET /tokens Token info, most recent first.
GET /tokens/{id}/image A token's processed image, by token info ID.
GET /tokens/{id}/banner A token's processed banner, by token info ID.
GET /tokens/{mint}/logo A token's logo, by mint (your tokens only).
GET /tokens/{mint}/cover A token's banner, by mint (your tokens only).
POST /upload Uploads token info.
POST /upload/{protocol} Uploads token info for a launchpad.
POST /upload/bags Uploads token info for Bags.
Method Path What it does
GET /engine/tokens/{mint}/stream Everything about one token on one connection: state events, trades, the known wallets holding it, and holder stats.
GET /user/tracked-wallets/trades/stream Live trades of the wallets you track.
GET /sol-usd/events SOL/USD price.
GET /blockhash/events Latest blockhash and block height, about every 220 ms.
GET /jito/tip-lamports/events Jito tip floor percentiles.
GET /jito/tip-accounts/events Jito tip account list.

Signing & Streams shows how to read a stream.