DocsDesks

NFT▲ LIVE

NFT desk — modes and parameters

The NFT desk runs bid and ask tasks on OpenSea from wallets you add. This page covers what each mode does, every field on the order ticket, and how to read a task once it is running.

Overview

A task is one instruction with its limits: buy or sell, what, and the walls it may not cross. The desk turns it into orders on OpenSea and keeps re-pricing them inside those walls. You never type a price for a bid, and an ask only takes one if you want to open above the floor.

  • Bids — offers for items you do not own yet. They settle in WETH.
  • Asks — listings for items held in your bot wallets.
  • Venue — OpenSea. Blur has shut down; orders placed there before it closed still show on the book with the BLUR venue code.
  • Refresh — the book re-reads every 15 seconds, and live updates flash the cell that changed in between.

Before you start

Account first

Sign-in, the subscription and adding bot wallets are covered in Getting started. The steps below are the NFT desk’s own.
StepWhat to do
OpenSea usernameEvery bot wallet needs an OpenSea username that contains "bestbots". Until the check passes, new tasks are refused and a banner on every desk page says so. The check can be re-run once every 30 seconds.
WETH for bidsBids settle in WETH. Use Swap on the wallet row to turn ETH into WETH.
ApprovalUse Approve on the wallet row once per wallet, before its first bid: it lets OpenSea spend WETH from that wallet. This is an on-chain transaction.
Items for asksAn ask sells an item held in one of your bot wallets. The ticket only lists collections and tokens those wallets hold.

Bids

A bid task places an offer and keeps it on top: when another offer passes yours, the task outbids it by your step. It never bids above your stoploss or below your min bid, and it keeps at least your min profit between the bid and the floor. When one of those limits holds the offer, the task goes to SKIP and the row names the limit; it resumes on its own when the market moves back inside.

Modes

ModeWhat it bids on
COLLECTIONOne offer for any item in the collection.
TRAITOne offer for items carrying a single trait value, e.g. Background · Gold. Priced against that trait, not the whole collection.
TRAIT COVEROne task across every value of a trait key. The desk expands it into one order per value; the ticket shows how many before you send, and the detail plane groups the orders by value.

Parameters

FieldWhat it doesDefault
CollectionThe collection to bid on. The list holds the collections tracked on the desk; request a new one under Collections.—
Trait keyTRAIT and TRAIT COVER. The trait category, e.g. Background.—
Trait valueTRAIT only. The value to bid on, e.g. Gold.—
WalletThe bot wallet that places the offer. Any funded wallet lets the desk pick one that holds WETH.—
Min profitThe smallest gap the bid keeps below the floor — the trait floor in trait modes. The task stops outbidding before the gap would shrink past it.Blank: no gap required
StoplossThe highest price the task will bid. Outbidding stops here.Blank: no ceiling
Min bidThe lowest price the task will bid. When the market sits below it, the task waits instead of following.Default 0
StepHow much the task adds when it outbids another offer. OpenSea accepts steps of 0.001 and up; a smaller value is raised to 0.001 before sending.Blank: 0.001
SizeHow many items the offer is for.Default 1
Auto saleAfter the offer fills, the bought item is listed for sale automatically.Off by default · editable later
Auto stoplossThe desk manages the stoploss for this task instead of holding a fixed number you typed.Off by default

Set by the desk

ItemValue
PriceThere is no price field. The bid price is worked out by the desk from the market, inside the limits above.
VenueOpenSea. The ticket sends it explicitly.
Order lifeLeft to OpenSea.
After a fillThe task stops. Resume it from the row to bid again.

Asks

An ask task lists one item you hold and keeps it under the floor by your step, following the floor down until your stoploss. In trait mode it follows the floor of the item’s trait instead, and stays between min list and start list. When the price is pinned at one of those limits, the row shows which one.

Modes

ModeWhat it follows
FLOORFollows the collection floor.
TRAITFollows the floor of one trait value the item carries, between min list and start list.

Parameters

FieldWhat it doesDefault
CollectionCollections with at least one item in your bot wallets.—
Trait key · valueTRAIT only. The trait whose floor the ask follows. The token list narrows to items carrying that value.—
TokenThe item to sell. The wallet holding it becomes the seller.—
Entry priceThe price the ask opens at.Blank: opens at the floor and follows it
StoplossThe lowest price the ask will list at. Following the floor stops here.Blank: no floor
StepHow far below the floor the ask lists. OpenSea accepts 0.001 and up; a smaller value is raised to 0.001.Blank: 0.001
Min listTRAIT only. The lowest price the trait ask will list at.—
Start listTRAIT only. The highest price the trait ask will list at.—
Order life (min)How long each listing order lives on OpenSea before the desk places the next one.Default 10

Set by the desk

ItemValue
VenueOpenSea. The ticket sends it explicitly.
Relist delay5 minutes, set by the desk.

Statuses

Statuses are printed exactly as the book prints them. A task can hold orders in more than one status at once; the row lists each.

Bids

StatusMeaning
BIDThe offer is live and following the market.
SKIPA limit is holding the offer. The row names the limit; the task resumes on its own when the market moves back inside.
STOPPaused. Pause on the row sets it; Resume sets it back to BID.
COMPLETEDThe task has finished.

Asks

StatusMeaning
CREATEDAccepted. The first listing is being placed.
PROCESSINGListed and following the market. The Asks page opens on this filter.
PAUSINGA pause was requested; the listing is being pulled.
PAUSEDPaused. Resume sets it back to PROCESSING.
CANCELEDOff the book. If the desk stopped it, the reason is on the detail plane.
COMPLETEDThe item sold.

Why a task is not moving

A task that is not moving is showing you a constraint, not a fault. The limit holding it is marked in its column, on hover, and on the detail plane. Nothing is cancelled: the order is parked until the market comes back inside your limits, or until you change them.

Bid stop reasons

ReasonWhat happened
STOPLOSSOutbidding would take the bid above your stoploss.
MIN PROFITOutbidding would leave less than your min profit below the floor.
MIN BIDThe market sits below your min bid.
BALANCEThe wallet does not hold enough WETH for the offer. Swap ETH to WETH or fund the wallet.
NO SPREADThere is no room between the top offer and the floor to bid into.
Marketplace errorOpenSea refused the order. The row prints the first words; the full text is on hover.

Ask pinned at a limit

Pinned atWhat happened
STOPLOSSThe floor is below your stoploss. The ask holds at the stoploss.
MIN LISTThe trait floor is below min list. The ask holds at min list.
START LISTThe trait floor is above start list. The ask holds at start list.

Running tasks

  • One row is one task. Its orders sit inside it — one per value for a trait cover. Click a row for the detail plane.
  • Pause and resume sit next to the status. For bids that is STOP ⇄ BID, for asks PAUSED ⇄ PROCESSING.
  • Edit mode turns the limit columns into inputs on every row. A bar counts the tasks you changed; Save applies them, Discard drops them. Status is never editable there. Bids: Step, Stoploss, Min profit, Auto sale. Asks: Entry price, Stoploss, Step, Order life, Min list, Start list.
  • Delete removes one order or the whole task. Tick several rows to pause, resume or delete them together; every delete asks for confirmation.
  • Desk is the overview page: what is stuck at a limit, what is not bidding, what settled. Each block links into the filtered list.

Wallet operations

Everything that moves value is two-step: the sheet states the exact effect, then asks for a second confirmation with [y/N].

OperationWhat it does
Add walletsAddress, private key and payout address. The payout address cannot be the wallet itself and is fixed once added: to change it, delete the wallet and add it again with its key.
SwapETH to WETH or back, on the wallet itself. On-chain.
ApproveLets OpenSea spend WETH from the wallet. On-chain; revoking it is done on chain too.
WithdrawSends ETH from one wallet to its payout address.
Withdraw allEvery wallet on the desk whose balance is above "Only wallets above" sends its ETH to its own payout address, keeping "Leave behind" for gas. It runs as a job with pauses between wallets; closing the sheet does not stop it. The confirmation states how many wallets it covers.
RefreshRe-reads balances from chain.

Networks

Not every collection settles on Ethereum. Each row prints the network code next to the venue, and links out to OpenSea or an explorer follow that network.

CodeNetwork
ETHEthereum
RBHRobinhood Chain
HYPHyperEVM
—The order does not prove its network. The desk prints a dash rather than assume Ethereum.

Subscription and refusals

One subscription, $490 a month, opens every mode on this page with no cap on running tasks. When the backend refuses a task, the ticket prints the code, says that nothing was sent, and links the one page that ends the refusal.

CodeRefusalWhat ends it
0x40Every bot wallet needs an OpenSea username containing "bestbots".Set the username on OpenSea, then re-run the check
0x42Too many attempts.Wait a minute
0x44An active subscription is required.Billing
0x47The vault is sealed.Try again in a minute
0x48The backend never confirmed — the action may have gone through.Check the book or the wallet before retrying