Docs/Desks
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.
| Step | What to do |
|---|
OpenSea username | Every 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 bids | Bids settle in WETH. Use Swap on the wallet row to turn ETH into WETH. |
|---|
Approval | Use 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 asks | An 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
| Mode | What it bids on |
|---|
COLLECTION | One offer for any item in the collection. |
|---|
TRAIT | One offer for items carrying a single trait value, e.g. Background · Gold. Priced against that trait, not the whole collection. |
|---|
TRAIT COVER | One 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
| Field | What it does | Default |
|---|
Collection | The collection to bid on. The list holds the collections tracked on the desk; request a new one under Collections. | — |
|---|
Trait key | TRAIT and TRAIT COVER. The trait category, e.g. Background. | — |
|---|
Trait value | TRAIT only. The value to bid on, e.g. Gold. | — |
|---|
Wallet | The bot wallet that places the offer. Any funded wallet lets the desk pick one that holds WETH. | — |
|---|
Min profit | The 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 |
|---|
Stoploss | The highest price the task will bid. Outbidding stops here. | Blank: no ceiling |
|---|
Min bid | The lowest price the task will bid. When the market sits below it, the task waits instead of following. | Default 0 |
|---|
Step | How 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 |
|---|
Size | How many items the offer is for. | Default 1 |
|---|
Auto sale | After the offer fills, the bought item is listed for sale automatically. | Off by default · editable later |
|---|
Auto stoploss | The desk manages the stoploss for this task instead of holding a fixed number you typed. | Off by default |
|---|
Set by the desk
| Item | Value |
|---|
Price | There is no price field. The bid price is worked out by the desk from the market, inside the limits above. |
|---|
Venue | OpenSea. The ticket sends it explicitly. |
|---|
Order life | Left to OpenSea. |
|---|
After a fill | The 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
| Mode | What it follows |
|---|
FLOOR | Follows the collection floor. |
|---|
TRAIT | Follows the floor of one trait value the item carries, between min list and start list. |
|---|
Parameters
| Field | What it does | Default |
|---|
Collection | Collections with at least one item in your bot wallets. | — |
|---|
Trait key · value | TRAIT only. The trait whose floor the ask follows. The token list narrows to items carrying that value. | — |
|---|
Token | The item to sell. The wallet holding it becomes the seller. | — |
|---|
Entry price | The price the ask opens at. | Blank: opens at the floor and follows it |
|---|
Stoploss | The lowest price the ask will list at. Following the floor stops here. | Blank: no floor |
|---|
Step | How 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 list | TRAIT only. The lowest price the trait ask will list at. | — |
|---|
Start list | TRAIT 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
| Item | Value |
|---|
Venue | OpenSea. The ticket sends it explicitly. |
|---|
Relist delay | 5 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
| Status | Meaning |
|---|
BID | The offer is live and following the market. |
|---|
SKIP | A limit is holding the offer. The row names the limit; the task resumes on its own when the market moves back inside. |
|---|
STOP | Paused. Pause on the row sets it; Resume sets it back to BID. |
|---|
COMPLETED | The task has finished. |
|---|
Asks
| Status | Meaning |
|---|
CREATED | Accepted. The first listing is being placed. |
|---|
PROCESSING | Listed and following the market. The Asks page opens on this filter. |
|---|
PAUSING | A pause was requested; the listing is being pulled. |
|---|
PAUSED | Paused. Resume sets it back to PROCESSING. |
|---|
CANCELED | Off the book. If the desk stopped it, the reason is on the detail plane. |
|---|
COMPLETED | The 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
| Reason | What happened |
|---|
STOPLOSS | Outbidding would take the bid above your stoploss. |
|---|
MIN PROFIT | Outbidding would leave less than your min profit below the floor. |
|---|
MIN BID | The market sits below your min bid. |
|---|
BALANCE | The wallet does not hold enough WETH for the offer. Swap ETH to WETH or fund the wallet. |
|---|
NO SPREAD | There is no room between the top offer and the floor to bid into. |
|---|
Marketplace error | OpenSea refused the order. The row prints the first words; the full text is on hover. |
|---|
Ask pinned at a limit
| Pinned at | What happened |
|---|
STOPLOSS | The floor is below your stoploss. The ask holds at the stoploss. |
|---|
MIN LIST | The trait floor is below min list. The ask holds at min list. |
|---|
START LIST | The 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].
| Operation | What it does |
|---|
Add wallets | Address, 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. |
|---|
Swap | ETH to WETH or back, on the wallet itself. On-chain. |
|---|
Approve | Lets OpenSea spend WETH from the wallet. On-chain; revoking it is done on chain too. |
|---|
Withdraw | Sends ETH from one wallet to its payout address. |
|---|
Withdraw all | Every 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. |
|---|
Refresh | Re-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.
| Code | Network |
|---|
ETH | Ethereum |
|---|
RBH | Robinhood Chain |
|---|
HYP | HyperEVM |
|---|
— | 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.
| Code | Refusal | What ends it |
|---|
0x40 | Every bot wallet needs an OpenSea username containing "bestbots". | Set the username on OpenSea, then re-run the check |
|---|
0x42 | Too many attempts. | Wait a minute |
|---|
0x44 | An active subscription is required. | Billing |
|---|
0x47 | The vault is sealed. | Try again in a minute |
|---|
0x48 | The backend never confirmed — the action may have gone through. | Check the book or the wallet before retrying |
|---|