Skip to main content
POST
/
place-orders
Place betting orders
curl --request POST \
  --url https://v2.55-tech.com/place-orders \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "orders": [
    {
      "requestUuid": "eb45b192-317b-42d5-9f65-af497b9fa8c1",
      "fixtureId": "id1000004461512432",
      "outcomeId": 103,
      "playerId": 0,
      "orderPrice": 1.95,
      "orderStake": 10,
      "userRef": "bettor1234",
      "testOrder": false
    },
    {
      "requestUuid": "fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d",
      "fixtureId": "id1000000758265385",
      "outcomeId": 101,
      "playerId": 0,
      "orderPrice": 1.88,
      "orderStake": 250.25,
      "userRef": "bettor1234",
      "testOrder": false,
      "bookmakers": "pinnacle,vertex",
      "orderCurrency": "USD",
      "back": true,
      "expiresAt": "2026-02-07T22:26:05Z",
      "acceptBetterOdds": true,
      "acceptPartialStake": true,
      "meta": {
        "strategy": "value",
        "source": "api"
      }
    }
  ]
}
'
import requests

url = "https://v2.55-tech.com/place-orders"

payload = { "orders": [
{
"requestUuid": "eb45b192-317b-42d5-9f65-af497b9fa8c1",
"fixtureId": "id1000004461512432",
"outcomeId": 103,
"playerId": 0,
"orderPrice": 1.95,
"orderStake": 10,
"userRef": "bettor1234",
"testOrder": False
},
{
"requestUuid": "fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d",
"fixtureId": "id1000000758265385",
"outcomeId": 101,
"playerId": 0,
"orderPrice": 1.88,
"orderStake": 250.25,
"userRef": "bettor1234",
"testOrder": False,
"bookmakers": "pinnacle,vertex",
"orderCurrency": "USD",
"back": True,
"expiresAt": "2026-02-07T22:26:05Z",
"acceptBetterOdds": True,
"acceptPartialStake": True,
"meta": {
"strategy": "value",
"source": "api"
}
}
] }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
orders: [
{
requestUuid: 'eb45b192-317b-42d5-9f65-af497b9fa8c1',
fixtureId: 'id1000004461512432',
outcomeId: 103,
playerId: 0,
orderPrice: 1.95,
orderStake: 10,
userRef: 'bettor1234',
testOrder: false
},
{
requestUuid: 'fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d',
fixtureId: 'id1000000758265385',
outcomeId: 101,
playerId: 0,
orderPrice: 1.88,
orderStake: 250.25,
userRef: 'bettor1234',
testOrder: false,
bookmakers: 'pinnacle,vertex',
orderCurrency: 'USD',
back: true,
expiresAt: '2026-02-07T22:26:05Z',
acceptBetterOdds: true,
acceptPartialStake: true,
meta: {strategy: 'value', source: 'api'}
}
]
})
};

fetch('https://v2.55-tech.com/place-orders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://v2.55-tech.com/place-orders",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'orders' => [
[
'requestUuid' => 'eb45b192-317b-42d5-9f65-af497b9fa8c1',
'fixtureId' => 'id1000004461512432',
'outcomeId' => 103,
'playerId' => 0,
'orderPrice' => 1.95,
'orderStake' => 10,
'userRef' => 'bettor1234',
'testOrder' => false
],
[
'requestUuid' => 'fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d',
'fixtureId' => 'id1000000758265385',
'outcomeId' => 101,
'playerId' => 0,
'orderPrice' => 1.88,
'orderStake' => 250.25,
'userRef' => 'bettor1234',
'testOrder' => false,
'bookmakers' => 'pinnacle,vertex',
'orderCurrency' => 'USD',
'back' => true,
'expiresAt' => '2026-02-07T22:26:05Z',
'acceptBetterOdds' => true,
'acceptPartialStake' => true,
'meta' => [
'strategy' => 'value',
'source' => 'api'
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://v2.55-tech.com/place-orders"

payload := strings.NewReader("{\n \"orders\": [\n {\n \"requestUuid\": \"eb45b192-317b-42d5-9f65-af497b9fa8c1\",\n \"fixtureId\": \"id1000004461512432\",\n \"outcomeId\": 103,\n \"playerId\": 0,\n \"orderPrice\": 1.95,\n \"orderStake\": 10,\n \"userRef\": \"bettor1234\",\n \"testOrder\": false\n },\n {\n \"requestUuid\": \"fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d\",\n \"fixtureId\": \"id1000000758265385\",\n \"outcomeId\": 101,\n \"playerId\": 0,\n \"orderPrice\": 1.88,\n \"orderStake\": 250.25,\n \"userRef\": \"bettor1234\",\n \"testOrder\": false,\n \"bookmakers\": \"pinnacle,vertex\",\n \"orderCurrency\": \"USD\",\n \"back\": true,\n \"expiresAt\": \"2026-02-07T22:26:05Z\",\n \"acceptBetterOdds\": true,\n \"acceptPartialStake\": true,\n \"meta\": {\n \"strategy\": \"value\",\n \"source\": \"api\"\n }\n }\n ]\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://v2.55-tech.com/place-orders")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"orders\": [\n {\n \"requestUuid\": \"eb45b192-317b-42d5-9f65-af497b9fa8c1\",\n \"fixtureId\": \"id1000004461512432\",\n \"outcomeId\": 103,\n \"playerId\": 0,\n \"orderPrice\": 1.95,\n \"orderStake\": 10,\n \"userRef\": \"bettor1234\",\n \"testOrder\": false\n },\n {\n \"requestUuid\": \"fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d\",\n \"fixtureId\": \"id1000000758265385\",\n \"outcomeId\": 101,\n \"playerId\": 0,\n \"orderPrice\": 1.88,\n \"orderStake\": 250.25,\n \"userRef\": \"bettor1234\",\n \"testOrder\": false,\n \"bookmakers\": \"pinnacle,vertex\",\n \"orderCurrency\": \"USD\",\n \"back\": true,\n \"expiresAt\": \"2026-02-07T22:26:05Z\",\n \"acceptBetterOdds\": true,\n \"acceptPartialStake\": true,\n \"meta\": {\n \"strategy\": \"value\",\n \"source\": \"api\"\n }\n }\n ]\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://v2.55-tech.com/place-orders")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"orders\": [\n {\n \"requestUuid\": \"eb45b192-317b-42d5-9f65-af497b9fa8c1\",\n \"fixtureId\": \"id1000004461512432\",\n \"outcomeId\": 103,\n \"playerId\": 0,\n \"orderPrice\": 1.95,\n \"orderStake\": 10,\n \"userRef\": \"bettor1234\",\n \"testOrder\": false\n },\n {\n \"requestUuid\": \"fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d\",\n \"fixtureId\": \"id1000000758265385\",\n \"outcomeId\": 101,\n \"playerId\": 0,\n \"orderPrice\": 1.88,\n \"orderStake\": 250.25,\n \"userRef\": \"bettor1234\",\n \"testOrder\": false,\n \"bookmakers\": \"pinnacle,vertex\",\n \"orderCurrency\": \"USD\",\n \"back\": true,\n \"expiresAt\": \"2026-02-07T22:26:05Z\",\n \"acceptBetterOdds\": true,\n \"acceptPartialStake\": true,\n \"meta\": {\n \"strategy\": \"value\",\n \"source\": \"api\"\n }\n }\n ]\n}"

response = http.request(request)
puts response.read_body
{
  "status": "partial-success",
  "acceptedOrders": [
    {
      "orderId": 327,
      "requestUuid": "eb45b192-317b-42d5-9f65-af497b9fa8c1",
      "allowedBookmakers": "*",
      "fixtureId": "id1000004461512432",
      "outcomeId": 103,
      "playerId": 0,
      "orderPrice": 1.95,
      "orderStake": 10,
      "filledStake": 10,
      "userRef": "bettor1234",
      "testOrder": false,
      "orderCurrency": "USD",
      "back": true,
      "expiresAt": "2026-02-07T17:29:37.311377+00:00",
      "acceptBetterOdds": true,
      "acceptPartialStake": true,
      "clientName": "demo",
      "orderStatus": "FILLED",
      "createdAt": "2026-02-07T17:29:32.265368+00:00",
      "updatedAt": "2026-02-07T17:29:32.265368+00:00",
      "meta": null,
      "bets": [
        {
          "betId": 73,
          "orderId": 327,
          "bookmaker": "pinnacle",
          "bookmakerBetId": "3332684214",
          "placedPrice": 1.98,
          "placedStake": 10,
          "placedCurrency": "USD",
          "placedAt": "2026-02-07T17:29:32+00:00",
          "betStatus": "CONFIRMED",
          "settlementStatus": "UNSETTLED",
          "clientName": "demo",
          "testBet": false,
          "userRef": "bettor1234",
          "requestUuid": "eb45b192-317b-42d5-9f65-af497b9fa8c1",
          "declineReason": null
        }
      ],
      "fixtureInfo": {
        "fixtureId": "id1000004461512432",
        "status": {
          "live": false,
          "statusId": 0,
          "statusName": "Pre-Game"
        },
        "sport": {
          "sportId": 10,
          "sportName": "Soccer"
        },
        "tournament": {
          "tournamentId": 44,
          "tournamentName": "2. Bundesliga",
          "categoryName": "Germany"
        },
        "startTime": 1754159400,
        "participants": {
          "participant1Id": 2540,
          "participant1Name": "Arminia Bielefeld",
          "participant2Id": 2588,
          "participant2Name": "Fortuna Dusseldorf"
        }
      },
      "outcomeInfo": {
        "marketId": 101,
        "marketName": "Full Time Result",
        "marketNameShort": "1X2",
        "marketType": "1x2",
        "period": "fulltime",
        "playerProp": false,
        "handicap": 0,
        "outcomeId": 103,
        "outcomeName": "2"
      },
      "playerInfo": null,
      "currencyInfo": {
        "currency": "USD",
        "currencyValue": 1,
        "updatedAt": "2026-02-07T17:29:32+00:00"
      }
    }
  ],
  "declinedOrders": [
    {
      "requestUuid": "fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d",
      "allowedBookmakers": "vertex",
      "fixtureId": "id1000004461512432",
      "outcomeId": 103,
      "playerId": 0,
      "orderPrice": 1.95,
      "orderStake": 10,
      "userRef": "bettor1234",
      "testOrder": false,
      "orderCurrency": "USD",
      "back": true,
      "clientName": "demo",
      "declineReason": "Odds temporarily unavailable; please retry",
      "bets": []
    }
  ]
}
{
"status": "declined",
"acceptedOrders": [],
"declinedOrders": [
{
"requestUuid": "fb5f2dd9-c855-4ba9-8ef9-4c2278ca2f1d",
"fixtureId": "id1000004461512432",
"outcomeId": 103,
"declineReason": "Order stake 100.00 USD exceeds available limit 50.00 USD",
"bets": []
}
]
}
{
"detail": {
"error": "All orders are duplicates",
"duplicateUuids": [
"eb45b192-317b-42d5-9f65-af497b9fa8c1"
],
"inProgressUuids": []
}
}
{
"detail": "Futures order placement is not yet implemented"
}

Authorizations

x-api-key
string
header
required

API key for authentication. Contact contact@55-tech.com to obtain a key.

Body

application/json
orders
object[]
required

List of orders to place (max 100 per request)

Required array length: 1 - 100 elements

Response

Order placement results with accepted and declined orders

status
enum<string>

Overall result: accepted (all OK), partial-success (some declined), declined (all failed)

Available options:
accepted,
partial-success,
declined
acceptedOrders
object[]

Enriched orders that passed validation

declinedOrders
object[]

Orders that failed validation with declineReason