ข้ามไปยังเนื้อหา

API สำหรับพาร์ทเนอร์

อัปโหลดรายการจากระบบของคุณเอง รายการแบบเดียวกัน ตรวจสอบแบบเดียวกัน เอกสารทางเทคนิคด้านล่างเป็นภาษาอังกฤษ รับคีย์ได้ในโปรไฟล์

Authentication

Every request carries your key: Authorization: Bearer slp_.... Create it in your profile; it is shown once, and creating a new one replaces the old. Up to 120 requests a minute and 200 photos an hour per key. Answers are JSON: {"data": ...} or {"error": {"message": "...", "fields": {"path": "..."}}}.

Endpoints

  • GET /api/partner/v1/meYour account.
  • GET /api/partner/v1/schemaThe fields of a card in every category, with the allowed values of each select.
  • GET /api/partner/v1/cardsYour cards, newest first.
  • POST /api/partner/v1/cardsA new draft: {"category": "cars", "listing": {...}, "partnerNote": "..."}.
  • GET /api/partner/v1/cards/{id}One card.
  • PUT /api/partner/v1/cards/{id}Replaces the card's fields: {"listing": {...}, "partnerNote": "..."}. The card becomes a draft again; an approved card stays on the site as approved until the next review.
  • POST /api/partner/v1/cards/{id}/submitSends the card for review. Needs every required field and at least 3 photos.
  • POST /api/partner/v1/cards/{id}/retractTakes the card back from review.
  • POST /api/partner/v1/cards/{id}/unpublishTakes a live card off the site at once, for example when the car is sold.
  • DELETE /api/partner/v1/cards/{id}Deletes a card that is not on the site.
  • POST /api/partner/v1/photosUploads one photo (multipart, field "file"; JPEG, PNG or WebP up to 10 MB). Put the returned URL into listing.images; the first photo is the cover.

A card

A card has the shape of a listing on the site. Texts are objects by language, {"en": "...", "ru": "...", "th": "..."}; fill in at least one language. l10n-lines is one text per language with an item per line, l10n-list a list of texts per language. Prices are your prices for guests; our team checks them before a card goes live. Statuses: draft, pending (under review), changes (we asked for changes, see reviewNote), approved, rejected, withdrawn (taken off the site). A card answers with live: true while it is on the site.

curl -X POST https://siam-luxury.com/api/partner/v1/cards \
  -H "Authorization: Bearer slp_..." \
  -H "Content-Type: application/json" \
  -d '{
    "category": "cars",
    "listing": {
      "name": { "en": "Toyota Fortuner 2025" },
      "category": "suv",
      "price": 2500,
      "currency": "THB",
      "seats": 7,
      "transmission": "Automatic",
      "images": ["https://siam-luxury.com/uploads/....jpg"]
    }
  }'

Fields by category

* required for review. Photos go in listing.images: at least 3, at most 20.

cars

pathkindvalues
name *l10n-text
category *selectsupercar, sports-car, convertible, suv, sedan, electric, minivan, pickup
price *number
currencyselectTHB, USD, EUR, RUB
priceFromswitch
shortDescriptionl10n-textarea
descriptionl10n-textarea
depositnumber
yearnumber
seatsnumber
transmissionselectAutomatic, Manual
fuelselectPetrol, Diesel, Hybrid, Electric
specs.powertext
specs.accelerationtext
specs.topSpeedtext
specs.enginel10n-text
featuresl10n-list
includedl10n-lines
notIncludedl10n-lines
requirementsl10n-lines

boats

pathkindvalues
name *l10n-text
category *selectluxury-yacht, catamaran, speedboat, sailing-yacht, jetski
price *number
currencyselectTHB, USD, EUR, RUB
priceFromswitch
shortDescriptionl10n-textarea
descriptionl10n-textarea
durationl10n-text
locationl10n-text
lengthnumber
capacitynumber
cabinsnumber
crewnumber
yearnumber
featuresl10n-list
includedl10n-lines
notIncludedl10n-lines

properties

pathkindvalues
name *l10n-text
category *selectvilla, condo, apartment, house, penthouse
price *number
currencyselectTHB, USD, EUR, RUB
priceFromswitch
shortDescriptionl10n-textarea
descriptionl10n-textarea
type *selectrent, buy
locationl10n-text
price_nightlynumber
price_monthly_shortnumber
price_monthly_longnumber
price_salenumber
bedroomsnumber
bathroomsnumber
areanumber
guestsnumber
beachDistancenumber
featuresl10n-list
includedl10n-lines
notIncludedl10n-lines

bikes

pathkindvalues
name *l10n-text
category *selectsuperbike, sport, naked, cruiser, adventure, touring, scooter, maxi-scooter
price *number
currencyselectTHB, USD, EUR, RUB
priceFromswitch
shortDescriptionl10n-textarea
descriptionl10n-textarea
depositnumber
enginenumber
powernumber
yearnumber
specs.weighttext
specs.topSpeedtext
specs.accelerationtext
featuresl10n-list
includedl10n-lines
notIncludedl10n-lines
requirementsl10n-lines

aircraft

pathkindvalues
name *l10n-text
category *selecthelicopter, private-jet, sightseeing, seaplane, charter, private-flight
price *number
currencyselectTHB, USD, EUR, RUB
priceFromswitch
shortDescriptionl10n-textarea
descriptionl10n-textarea
priceUnitselectflight, person
aircraftModeltext
durationl10n-text
maxGroupSizenumber
locationl10n-text
schedulel10n-lines
featuresl10n-list
includedl10n-lines
notIncludedl10n-lines

tours

pathkindvalues
name *l10n-text
category *selectisland-hopping, sightseeing, wildlife, adventure, cultural, gastronomy, cruise, water-sports, wellness, private
price *number
currencyselectTHB, USD, EUR, RUB
priceFromswitch
shortDescriptionl10n-textarea
descriptionl10n-textarea
priceUnitselectperson, group
durationl10n-text
maxGroupSizenumber
locationl10n-text
startLocationl10n-text
highlightsl10n-list
schedulel10n-lines
includedl10n-lines
notIncludedl10n-lines

services

pathkindvalues
name *l10n-text
category *selectchef, nanny, driver, photographer, massage, event, other
price *number
currencyselectTHB, USD, EUR, RUB
priceFromswitch
shortDescriptionl10n-textarea
descriptionl10n-textarea
priceUnitselectservice, hour, day, person, event
durationl10n-text
maxGroupSizenumber
locationl10n-text
featuresl10n-list
includedl10n-lines
notIncludedl10n-lines