Розміщуйте, пакетно надсилайте й скасовуйте ордери на Seeryx: лімітні, ринкові й «лише мейкер», ключі ідемпотентності, строки дії, розділення й об’єднання.
Торгуйте через POST /api/orders (один ордер) або POST /api/orders/batch (до 15), скасовуйте через DELETE /api/orders/:id або DELETE /api/orders, а перетворюйте кошти на пари й назад через /api/split і /api/merge. На seeryx.com кожен ордер, розділення й об’єднання містить об’єкт signed, створений ключем вашої торгової сесії: як це зробити, показано на сторінці «Підписання ордерів»; приклади на цій сторінці роблять це за вас.
У кожному торговому POST і DELETE: 8–128 літер, цифр, _ або -, новий для кожної дії. Той самий ключ із тим самим тілом повертає те, що відповів перший запит, і нічого не змінює; з іншим тілом запит відхиляється. Ключі зберігаються 24 години.
Одразу виконується проти пропозицій за його ціною або кращою, а залишок стоїть у книзі, доки не виконається, доки ви його не скасуєте або доки раунд не закриється.
Лімітний, «Лише мейкер»
shares, limit, postOnly: true
Стає в книгу повністю або відхиляється (400 would_take): він ніколи не забирає ліквідність, тож ніколи не сплачує комісію тейкера.
Ринкова купівля
amount, cap
Одразу витрачає до amount USDC (разом із комісією) за цінами не вище за cap; залишок відкидається й ніколи не стає в книгу.
Ринковий продаж
shares, cap
Одразу продає до shares часток за цінами не нижче за cap; залишок відкидається.
Поле
Тип
Опис
slugобов’язкове
string
Раунд, що торгується (поточний або майбутній), чи відкритий подієвий ринок.
sideобов’язкове
up | down
Результат, яким ви торгуєте (на подієвому ринку YES — це up, NO — down).
actionобов’язкове
buy | sell
Для продажу потрібні частки, які у вас є і які не зарезервовано іншим ордером на продаж у книзі.
typeобов’язкове
limit | market
Див. вище.
sharesнеобов’язкове
number
Лімітні ордери й усі продажі.
amountнеобов’язкове
number
Ринкові купівлі: найбільша сума USDC до витрати, разом із комісією тейкера.
limitнеобов’язкове
number
Лімітні ордери: ціна в центах.
capнеобов’язкове
number
Ринкові ордери: найгірша ціна в центах. Купівля не платить більше, продаж не бере менше.
Лімітний ордер, що став у книгу; виконана ринкова купівля на 5 $; ринкова купівля, у якої cap нижчий за найкращу ціну продажу.
order — ідентифікатор того, що стоїть у книзі, або null, якщо нічого не стоїть. filled — частки, проторговані зараз; spent і proceeds — сплачені й отримані USDC разом із комісіями.
Ринковий ордер додає requested, fee, avgPrice (центи, без комісії), unspent або unsold, status (filled, partial або none) і, якщо його виконано не повністю, reason: no_liquidity, beyond_limit (з bestPrice) або share_limit.
Ринковий ордер, який нічого не виконав, однаково повертає 200, а не помилку.
Лімітні ордери підписують до закриття ринку (кінця раунду або closesAt події), і вони стоять у книзі до цього моменту.
Ринкові ордери, розділення й об’єднання проходять розрахунок за лічені секунди, тож підписуйте їх на 5 хвилин, але ніколи не далі закриття. Сервер приймає термін дії від 5 секунд наперед до закриття.
За останні 5 секунд раунду нові ордери не приймаються (400 "Round is closing"). Строк дії ордерів у книзі завершується в момент закриття, і вони відображаються у вашій активності з типом expire.
Раунди наперед. Десять наступних раундів 5m і 15m (один для 1h і 1d) уже приймають ордери, тож бот може виставляти котирування для раунду ще до його початку.
POST /api/orders/batch розміщує до 15 ордерів одним запитом, у заданому порядку, кожен зі своїми перевірками: відповідь містить по одному { status, body } на кожен ордер — рівно те, що відповів би POST /api/orders. Ордер i записується під <your key>-<i>, тож повторна спроба всього пакета з тим самим ключем нічого не розмістить двічі. DELETE /api/orders скасовує всі ваші відкриті ордери, а з ?slug= — ордери одного ринку, однією транзакцією.
curl
# two orders in one request (on seeryx.com each also carries its own "signed")curl-s-X POST https://seeryx.com/api/orders/batch \
-H"X-Auth-Token: $TOKEN"-H"Idempotency-Key: $(uuidgen)"-H"Content-Type: application/json" \
-d'{"orders":[{"slug":"btc-updown-5m-1791916200","side":"up","action":"buy","type":"limit","shares":5,"limit":40},
{"slug":"btc-updown-5m-1791916200","side":"down","action":"buy","type":"limit","shares":5,"limit":40}]}'# {"results":[{"status":200,"body":{"order":21306,...}},{"status":200,"body":{"order":21307,...}}]}# cancel everything still resting in the roundcurl-s-X DELETE "https://seeryx.com/api/orders?slug=btc-updown-5m-1791916200"-H"X-Auth-Token: $TOKEN"-H"Idempotency-Key: $(uuidgen)"# {"success":true,"cancelled":[21306,21307]}
POST /api/split з { slug, amount } перетворює amount USDC на стільки ж часток «Вгору» і «Вниз»; POST /api/merge з { slug, shares } перетворює пари назад, по 1,00 $ за кожну. Без комісії; щонайменше 5 пар; на seeryx.com підписуються повідомленням PMS1.
Кошти. Ордери на купівлю в книзі не блокують коштів, але всі ваші відкриті купівлі на одному ринку разом із комісією тейкера за їхньою лімітною ціною мають покриватися вашими вільними коштами. Кошти рухаються лише тоді, коли ордер виконується; купівлю, яку ви вже не можете оплатити, скасовують.
Ваші власні ордери. Ордер може виконатися проти ваших власних ордерів у книзі й тоді сплачує комісію тейкера, як і будь-який інший; ордер «Лише мейкер» натомість відхиляється.
Ордери в книзі. Щонайбільше 200 на акаунт і 100 на одному ринку (400 open_orders_limit).
Частота запитів. 250 запитів на ордери, скасування, розділення й об’єднання за 10 секунд на акаунт; кожен ордер пакета враховується окремо (429 rate_limited). Див. «Ліміти запитів і помилки».
Якщо GET /api/funds повідомляє onChainTrading (на seeryx.com завжди), тіло також містить "signed", створений ключем вашої торгової сесії: див. «Підписання ордерів».
order — ідентифікатор частини, що стоїть у книзі, або null, якщо нічого не стоїть. filled — частки, проторговані зараз; spent і proceeds — сплачені й отримані USDC разом із комісіями.
Ринковий ордер повертає свій результат повністю: requested, fee, avgPrice (центи, без комісії), unspent (купівля) або unsold (продаж), status "filled", "partial" або "none", а якщо виконання неповне, — reason: "no_liquidity" (у книзі закінчилася ліквідність), "beyond_limit" з bestPrice (решта пропозицій дорожча за ваш cap) або "share_limit" (ринкова купівля, підписана в частках, отримала їх усі нижче за свій cap). Ринковий ордер, який нічого не виконав, однаково повертає 200.
Статус
Коли
400
Неправильні вхідні дані ("Invalid limit", "Invalid slug"), "Round is not live", "Round is closing", "Insufficient balance", "Insufficient free shares", підписаний ордер, що не збігається з запитом
400 below_minimum
Менше часток, ніж minOrderShares; відповідь додатково містить "minimum"
400 would_take
Ордер «Лише мейкер», який виконався б одразу
400 open_orders_limit
Забагато ордерів у книзі; відповідь додатково містить "limit": { account, round }
400 trading_paused
Ключ сесії, який його підписав, закрито: відкрийте нову сесію й підпишіть знову
429 rate_limited
Перевищено кількість запитів на ордери, дозволену за проміжок часу; зачекайте "retryAfter" секунд
503 trading_halted
Торгівлю зупинено для всіх (див. GET /api/notice); скасування й далі працюють
503
Exchange clock unavailable: сервер не може підтвердити час раунду; спробуйте знову за кілька секунд
POST/api/orders/batch
Розмістити до 15 ордерів одним запитом
Вхід + Idempotency-Key
Поле
Тип
Опис
ordersтілообов’язкове
array
Від 1 до 15 ордерів, кожен — рівно тіло POST /api/orders із власним об’єктом signed
Розміщуються в заданому порядку, кожен зі своїми перевірками; відхилений ордер не зупиняє решту. Кожен ордер враховується в ліміті частоти як один запит.
Ордер i записується під ключем ідемпотентності <your key>-<i> (i від 0; ваш ключ — не довше 125 символів), тож повторна спроба всього пакета нічого не розмістить двічі.
Статус
Коли
400
orders — не список від 1 до 15 ордерів
429 rate_limited
Пакет перевищив би кількість запитів на ордери, дозволену за проміжок часу