curl --request POST \
--url https://api.gameboost.com/v2/item-offers \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"game_id": 123,
"title": "<string>",
"description": "<string>",
"price": 9.99,
"stock": 50,
"min_quantity": 1,
"delivery_time": {
"duration": 24,
"unit": "hours"
},
"image_urls": [
"https://example.com/item1.jpg"
],
"game": "<string>",
"external_id": "<string>",
"slug": "<string>",
"delivery_instructions": "<string>",
"excluded_delivery_fields": [],
"item_data": {
"rarity": "legendary",
"type": "skin"
}
}
'import requests
url = "https://api.gameboost.com/v2/item-offers"
payload = {
"game_id": 123,
"title": "<string>",
"description": "<string>",
"price": 9.99,
"stock": 50,
"min_quantity": 1,
"delivery_time": {
"duration": 24,
"unit": "hours"
},
"image_urls": ["https://example.com/item1.jpg"],
"game": "<string>",
"external_id": "<string>",
"slug": "<string>",
"delivery_instructions": "<string>",
"excluded_delivery_fields": [],
"item_data": {
"rarity": "legendary",
"type": "skin"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
game_id: 123,
title: '<string>',
description: '<string>',
price: 9.99,
stock: 50,
min_quantity: 1,
delivery_time: {duration: 24, unit: 'hours'},
image_urls: ['https://example.com/item1.jpg'],
game: '<string>',
external_id: '<string>',
slug: '<string>',
delivery_instructions: '<string>',
excluded_delivery_fields: [],
item_data: {rarity: 'legendary', type: 'skin'}
})
};
fetch('https://api.gameboost.com/v2/item-offers', 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://api.gameboost.com/v2/item-offers",
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([
'game_id' => 123,
'title' => '<string>',
'description' => '<string>',
'price' => 9.99,
'stock' => 50,
'min_quantity' => 1,
'delivery_time' => [
'duration' => 24,
'unit' => 'hours'
],
'image_urls' => [
'https://example.com/item1.jpg'
],
'game' => '<string>',
'external_id' => '<string>',
'slug' => '<string>',
'delivery_instructions' => '<string>',
'excluded_delivery_fields' => [
],
'item_data' => [
'rarity' => 'legendary',
'type' => 'skin'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://api.gameboost.com/v2/item-offers"
payload := strings.NewReader("{\n \"game_id\": 123,\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"price\": 9.99,\n \"stock\": 50,\n \"min_quantity\": 1,\n \"delivery_time\": {\n \"duration\": 24,\n \"unit\": \"hours\"\n },\n \"image_urls\": [\n \"https://example.com/item1.jpg\"\n ],\n \"game\": \"<string>\",\n \"external_id\": \"<string>\",\n \"slug\": \"<string>\",\n \"delivery_instructions\": \"<string>\",\n \"excluded_delivery_fields\": [],\n \"item_data\": {\n \"rarity\": \"legendary\",\n \"type\": \"skin\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://api.gameboost.com/v2/item-offers")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"game_id\": 123,\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"price\": 9.99,\n \"stock\": 50,\n \"min_quantity\": 1,\n \"delivery_time\": {\n \"duration\": 24,\n \"unit\": \"hours\"\n },\n \"image_urls\": [\n \"https://example.com/item1.jpg\"\n ],\n \"game\": \"<string>\",\n \"external_id\": \"<string>\",\n \"slug\": \"<string>\",\n \"delivery_instructions\": \"<string>\",\n \"excluded_delivery_fields\": [],\n \"item_data\": {\n \"rarity\": \"legendary\",\n \"type\": \"skin\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gameboost.com/v2/item-offers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"game_id\": 123,\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"price\": 9.99,\n \"stock\": 50,\n \"min_quantity\": 1,\n \"delivery_time\": {\n \"duration\": 24,\n \"unit\": \"hours\"\n },\n \"image_urls\": [\n \"https://example.com/item1.jpg\"\n ],\n \"game\": \"<string>\",\n \"external_id\": \"<string>\",\n \"slug\": \"<string>\",\n \"delivery_instructions\": \"<string>\",\n \"excluded_delivery_fields\": [],\n \"item_data\": {\n \"rarity\": \"legendary\",\n \"type\": \"skin\"\n }\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": 123,
"external_id": "<string>",
"game": {
"id": 123,
"name": "<string>",
"slug": "<string>"
},
"title": "<string>",
"slug": "<string>",
"description": "<string>",
"parameters": {},
"delivery_time": {
"duration": 123,
"format": "<string>",
"format_long": "<string>",
"seconds": 123
},
"delivery_instructions": "<string>",
"excluded_delivery_fields": [],
"delivery_method_data": {},
"stock": 123,
"min_quantity": 123,
"price_eur": "<string>",
"price_usd": "<string>",
"views": 123,
"image_urls": [
"<string>"
],
"created_at": 123,
"updated_at": 123,
"listed_at": 123
}
}{
"message": "Unauthenticated."
}{
"message": "This action is unauthorized."
}{
"message": "The given data was invalid.",
"errors": {
"field": [
"Something is wrong with this field!"
]
}
}{
"message": "Too many requests."
}Create an item offer
Create a new item offer for sale with game-specific parameters, pricing, stock quantity, and images.
curl --request POST \
--url https://api.gameboost.com/v2/item-offers \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"game_id": 123,
"title": "<string>",
"description": "<string>",
"price": 9.99,
"stock": 50,
"min_quantity": 1,
"delivery_time": {
"duration": 24,
"unit": "hours"
},
"image_urls": [
"https://example.com/item1.jpg"
],
"game": "<string>",
"external_id": "<string>",
"slug": "<string>",
"delivery_instructions": "<string>",
"excluded_delivery_fields": [],
"item_data": {
"rarity": "legendary",
"type": "skin"
}
}
'import requests
url = "https://api.gameboost.com/v2/item-offers"
payload = {
"game_id": 123,
"title": "<string>",
"description": "<string>",
"price": 9.99,
"stock": 50,
"min_quantity": 1,
"delivery_time": {
"duration": 24,
"unit": "hours"
},
"image_urls": ["https://example.com/item1.jpg"],
"game": "<string>",
"external_id": "<string>",
"slug": "<string>",
"delivery_instructions": "<string>",
"excluded_delivery_fields": [],
"item_data": {
"rarity": "legendary",
"type": "skin"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
game_id: 123,
title: '<string>',
description: '<string>',
price: 9.99,
stock: 50,
min_quantity: 1,
delivery_time: {duration: 24, unit: 'hours'},
image_urls: ['https://example.com/item1.jpg'],
game: '<string>',
external_id: '<string>',
slug: '<string>',
delivery_instructions: '<string>',
excluded_delivery_fields: [],
item_data: {rarity: 'legendary', type: 'skin'}
})
};
fetch('https://api.gameboost.com/v2/item-offers', 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://api.gameboost.com/v2/item-offers",
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([
'game_id' => 123,
'title' => '<string>',
'description' => '<string>',
'price' => 9.99,
'stock' => 50,
'min_quantity' => 1,
'delivery_time' => [
'duration' => 24,
'unit' => 'hours'
],
'image_urls' => [
'https://example.com/item1.jpg'
],
'game' => '<string>',
'external_id' => '<string>',
'slug' => '<string>',
'delivery_instructions' => '<string>',
'excluded_delivery_fields' => [
],
'item_data' => [
'rarity' => 'legendary',
'type' => 'skin'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://api.gameboost.com/v2/item-offers"
payload := strings.NewReader("{\n \"game_id\": 123,\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"price\": 9.99,\n \"stock\": 50,\n \"min_quantity\": 1,\n \"delivery_time\": {\n \"duration\": 24,\n \"unit\": \"hours\"\n },\n \"image_urls\": [\n \"https://example.com/item1.jpg\"\n ],\n \"game\": \"<string>\",\n \"external_id\": \"<string>\",\n \"slug\": \"<string>\",\n \"delivery_instructions\": \"<string>\",\n \"excluded_delivery_fields\": [],\n \"item_data\": {\n \"rarity\": \"legendary\",\n \"type\": \"skin\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://api.gameboost.com/v2/item-offers")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"game_id\": 123,\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"price\": 9.99,\n \"stock\": 50,\n \"min_quantity\": 1,\n \"delivery_time\": {\n \"duration\": 24,\n \"unit\": \"hours\"\n },\n \"image_urls\": [\n \"https://example.com/item1.jpg\"\n ],\n \"game\": \"<string>\",\n \"external_id\": \"<string>\",\n \"slug\": \"<string>\",\n \"delivery_instructions\": \"<string>\",\n \"excluded_delivery_fields\": [],\n \"item_data\": {\n \"rarity\": \"legendary\",\n \"type\": \"skin\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gameboost.com/v2/item-offers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"game_id\": 123,\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"price\": 9.99,\n \"stock\": 50,\n \"min_quantity\": 1,\n \"delivery_time\": {\n \"duration\": 24,\n \"unit\": \"hours\"\n },\n \"image_urls\": [\n \"https://example.com/item1.jpg\"\n ],\n \"game\": \"<string>\",\n \"external_id\": \"<string>\",\n \"slug\": \"<string>\",\n \"delivery_instructions\": \"<string>\",\n \"excluded_delivery_fields\": [],\n \"item_data\": {\n \"rarity\": \"legendary\",\n \"type\": \"skin\"\n }\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": 123,
"external_id": "<string>",
"game": {
"id": 123,
"name": "<string>",
"slug": "<string>"
},
"title": "<string>",
"slug": "<string>",
"description": "<string>",
"parameters": {},
"delivery_time": {
"duration": 123,
"format": "<string>",
"format_long": "<string>",
"seconds": 123
},
"delivery_instructions": "<string>",
"excluded_delivery_fields": [],
"delivery_method_data": {},
"stock": 123,
"min_quantity": 123,
"price_eur": "<string>",
"price_usd": "<string>",
"views": 123,
"image_urls": [
"<string>"
],
"created_at": 123,
"updated_at": 123,
"listed_at": 123
}
}{
"message": "Unauthenticated."
}{
"message": "This action is unauthorized."
}{
"message": "The given data was invalid.",
"errors": {
"field": [
"Something is wrong with this field!"
]
}
}{
"message": "Too many requests."
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Unique identifier for the game (required if game slug not provided)
Display title for the item offer
255Detailed description of the items and what is included
2048Price per unit in EUR currency, up to 2 decimal places
x >= 0.019.99
Available quantity of items in stock
0 <= x <= 100000000050
Minimum quantity that can be purchased in a single order
1 <= x <= 10000000001
Expected delivery time object
Show child attributes
Show child attributes
{ "duration": 24, "unit": "hours" }
Array of image URLs showcasing the items. Only one image is required. Recommended: transparent square images for best display. Note: Imgur URLs are not supported
1Image URL
["https://example.com/item1.jpg"]
Slug of the game (required if game_id not provided)
External identifier for the item offer, used to map to your own system
255Custom URL-friendly identifier (auto-generated if not provided)
255Special instructions for item delivery, provided to buyer after purchase
Optional delivery method. If null, no item precheckout delivery form is shown.
none, username, login, trade, auction, gift, redeem, mail Optional delivery fields disabled by the seller. Required fields for the selected method cannot be excluded.
username, server, login, password, platform, region Specifics available via the template endpoint. Game-specific item attributes such as rarity, type, or category
{ "rarity": "legendary", "type": "skin" }
Response
A single item offer
Item offer object representing in-game items for sale
Show child attributes
Show child attributes
Was this page helpful?