curl -X PUT "https://api.playground.try.be/shop/sessions/abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"id": "5dcb47800000000000000010",
"bookings": [
{
"id": "5dcb47800000000000000000",
"checked_in_at": "2022-03-02T09:00:00+00:00",
"customer_id": "5dcb47800000000000000020",
"email": "janedoe@example.com",
"first_name": "Jane",
"guests": [
{
"id": "5dcb47800000000000000000",
"checked_in_at": "2025-10-01T12:00:00+00:00",
"checked_out_at": "2025-10-01T16:30:00+00:00",
"customer_id": "5f8a1b2c-9d3e-4a5b-8c6d-7e8f9a0b1c2d",
"email": "jane.doe@example.com",
"first_name": "Jane",
"intake_form_submission_id": "5dcb47800000000000000010",
"intake_form_complete": false,
"is_lead_booker": true,
"last_name": "Doe",
"name": "Jane Doe"
}
],
"intake_forms_completed": false,
"intake_form_required": true,
"is_no_show": true,
"last_name": "Doe",
"order_id": "5dcb47800000000000000009",
"order_item_id": "5dcb47800000000000000019",
"order_ref": "TRY00",
"organisation_id": "00000000-0000-0000-0000-000000000000",
"phone": "+447727123456",
"session_id": "5dcb47800000000000001111",
"session_type_id": "5dcb47800000000000001234",
"session_type_name": "Spa access",
"site_id": "00000000-0000-0000-0000-111111111111",
"stage": "not_arrived",
"status": "none",
"created_at": "2026-01-15T09:30:00+00:00",
"updated_at": "2026-01-15T09:30:00+00:00"
}
],
"capacity": 10,
"currency": "gbp",
"duration": 60,
"end_time": "2019-01-15T12:00:00+01:00",
"max_baskets": 1,
"num_checked_in": 12,
"num_no_show": 2,
"num_waitlisted": 2,
"organisation_id": "00000000-0000-0000-0000-000000000000",
"practitioner": {
"id": "5dcb47800000000000000000",
"name": "Jane Doe"
},
"practitioner_id": "5dcb47800000000000000010",
"price": 595,
"remaining_capacity": 4,
"room": {
"id": "5dcb47800000000000000000",
"capacity": 1,
"name": "Alex Morgan"
},
"room_id": "5dcb47800000000000000010",
"session_type_id": "5dcb47800000000000000010",
"session_type_name": "Spa access",
"site_id": "5dcb47800000000000000010",
"start_time": "2019-01-15T11:00:00+01:00",
"waitlist_enabled": true,
"created_at": "2019-01-15T12:00:00+01:00",
"deleted_at": "2019-01-15T12:00:00+01:00",
"updated_at": "2019-01-15T12:00:00+01:00"
}'
const response = await fetch('https://api.playground.try.be/shop/sessions/abc123', {
method: 'PUT',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
Accept: 'application/json',
},
body: JSON.stringify({
"id": "5dcb47800000000000000010",
"bookings": [
{
"id": "5dcb47800000000000000000",
"checked_in_at": "2022-03-02T09:00:00+00:00",
"customer_id": "5dcb47800000000000000020",
"email": "janedoe@example.com",
"first_name": "Jane",
"guests": [
{
"id": "5dcb47800000000000000000",
"checked_in_at": "2025-10-01T12:00:00+00:00",
"checked_out_at": "2025-10-01T16:30:00+00:00",
"customer_id": "5f8a1b2c-9d3e-4a5b-8c6d-7e8f9a0b1c2d",
"email": "jane.doe@example.com",
"first_name": "Jane",
"intake_form_submission_id": "5dcb47800000000000000010",
"intake_form_complete": false,
"is_lead_booker": true,
"last_name": "Doe",
"name": "Jane Doe"
}
],
"intake_forms_completed": false,
"intake_form_required": true,
"is_no_show": true,
"last_name": "Doe",
"order_id": "5dcb47800000000000000009",
"order_item_id": "5dcb47800000000000000019",
"order_ref": "TRY00",
"organisation_id": "00000000-0000-0000-0000-000000000000",
"phone": "+447727123456",
"session_id": "5dcb47800000000000001111",
"session_type_id": "5dcb47800000000000001234",
"session_type_name": "Spa access",
"site_id": "00000000-0000-0000-0000-111111111111",
"stage": "not_arrived",
"status": "none",
"created_at": "2026-01-15T09:30:00+00:00",
"updated_at": "2026-01-15T09:30:00+00:00"
}
],
"capacity": 10,
"currency": "gbp",
"duration": 60,
"end_time": "2019-01-15T12:00:00+01:00",
"max_baskets": 1,
"num_checked_in": 12,
"num_no_show": 2,
"num_waitlisted": 2,
"organisation_id": "00000000-0000-0000-0000-000000000000",
"practitioner": {
"id": "5dcb47800000000000000000",
"name": "Jane Doe"
},
"practitioner_id": "5dcb47800000000000000010",
"price": 595,
"remaining_capacity": 4,
"room": {
"id": "5dcb47800000000000000000",
"capacity": 1,
"name": "Alex Morgan"
},
"room_id": "5dcb47800000000000000010",
"session_type_id": "5dcb47800000000000000010",
"session_type_name": "Spa access",
"site_id": "5dcb47800000000000000010",
"start_time": "2019-01-15T11:00:00+01:00",
"waitlist_enabled": true,
"created_at": "2019-01-15T12:00:00+01:00",
"deleted_at": "2019-01-15T12:00:00+01:00",
"updated_at": "2019-01-15T12:00:00+01:00"
}),
})
if (!response.ok) {
throw new Error(`Trybe API ${response.status}: ${await response.text()}`)
}
const data = await response.json()
import httpx
response = httpx.put(
"https://api.playground.try.be/shop/sessions/abc123",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
"Content-Type": "application/json",
},
json={
"id": "5dcb47800000000000000010",
"bookings": [
{
"id": "5dcb47800000000000000000",
"checked_in_at": "2022-03-02T09:00:00+00:00",
"customer_id": "5dcb47800000000000000020",
"email": "janedoe@example.com",
"first_name": "Jane",
"guests": [
{
"id": "5dcb47800000000000000000",
"checked_in_at": "2025-10-01T12:00:00+00:00",
"checked_out_at": "2025-10-01T16:30:00+00:00",
"customer_id": "5f8a1b2c-9d3e-4a5b-8c6d-7e8f9a0b1c2d",
"email": "jane.doe@example.com",
"first_name": "Jane",
"intake_form_submission_id": "5dcb47800000000000000010",
"intake_form_complete": False,
"is_lead_booker": True,
"last_name": "Doe",
"name": "Jane Doe"
}
],
"intake_forms_completed": False,
"intake_form_required": True,
"is_no_show": True,
"last_name": "Doe",
"order_id": "5dcb47800000000000000009",
"order_item_id": "5dcb47800000000000000019",
"order_ref": "TRY00",
"organisation_id": "00000000-0000-0000-0000-000000000000",
"phone": "+447727123456",
"session_id": "5dcb47800000000000001111",
"session_type_id": "5dcb47800000000000001234",
"session_type_name": "Spa access",
"site_id": "00000000-0000-0000-0000-111111111111",
"stage": "not_arrived",
"status": "none",
"created_at": "2026-01-15T09:30:00+00:00",
"updated_at": "2026-01-15T09:30:00+00:00"
}
],
"capacity": 10,
"currency": "gbp",
"duration": 60,
"end_time": "2019-01-15T12:00:00+01:00",
"max_baskets": 1,
"num_checked_in": 12,
"num_no_show": 2,
"num_waitlisted": 2,
"organisation_id": "00000000-0000-0000-0000-000000000000",
"practitioner": {
"id": "5dcb47800000000000000000",
"name": "Jane Doe"
},
"practitioner_id": "5dcb47800000000000000010",
"price": 595,
"remaining_capacity": 4,
"room": {
"id": "5dcb47800000000000000000",
"capacity": 1,
"name": "Alex Morgan"
},
"room_id": "5dcb47800000000000000010",
"session_type_id": "5dcb47800000000000000010",
"session_type_name": "Spa access",
"site_id": "5dcb47800000000000000010",
"start_time": "2019-01-15T11:00:00+01:00",
"waitlist_enabled": True,
"created_at": "2019-01-15T12:00:00+01:00",
"deleted_at": "2019-01-15T12:00:00+01:00",
"updated_at": "2019-01-15T12:00:00+01:00"
},
)
response.raise_for_status()
data = response.json()
<?php
$client = new \GuzzleHttp\Client();
$response = $client->request('PUT', 'https://api.playground.try.be/shop/sessions/abc123', [
'headers' => [
'Authorization' => 'Bearer YOUR_API_KEY',
'Accept' => 'application/json',
'Content-Type' => 'application/json',
],
'json' => [
'id' => '5dcb47800000000000000010',
'bookings' => [
[
'id' => '5dcb47800000000000000000',
'checked_in_at' => '2022-03-02T09:00:00+00:00',
'customer_id' => '5dcb47800000000000000020',
'email' => 'janedoe@example.com',
'first_name' => 'Jane',
'guests' => [
[
'id' => '5dcb47800000000000000000',
'checked_in_at' => '2025-10-01T12:00:00+00:00',
'checked_out_at' => '2025-10-01T16:30:00+00:00',
'customer_id' => '5f8a1b2c-9d3e-4a5b-8c6d-7e8f9a0b1c2d',
'email' => 'jane.doe@example.com',
'first_name' => 'Jane',
'intake_form_submission_id' => '5dcb47800000000000000010',
'intake_form_complete' => false,
'is_lead_booker' => true,
'last_name' => 'Doe',
'name' => 'Jane Doe'
]
],
'intake_forms_completed' => false,
'intake_form_required' => true,
'is_no_show' => true,
'last_name' => 'Doe',
'order_id' => '5dcb47800000000000000009',
'order_item_id' => '5dcb47800000000000000019',
'order_ref' => 'TRY00',
'organisation_id' => '00000000-0000-0000-0000-000000000000',
'phone' => '+447727123456',
'session_id' => '5dcb47800000000000001111',
'session_type_id' => '5dcb47800000000000001234',
'session_type_name' => 'Spa access',
'site_id' => '00000000-0000-0000-0000-111111111111',
'stage' => 'not_arrived',
'status' => 'none',
'created_at' => '2026-01-15T09:30:00+00:00',
'updated_at' => '2026-01-15T09:30:00+00:00'
]
],
'capacity' => 10,
'currency' => 'gbp',
'duration' => 60,
'end_time' => '2019-01-15T12:00:00+01:00',
'max_baskets' => 1,
'num_checked_in' => 12,
'num_no_show' => 2,
'num_waitlisted' => 2,
'organisation_id' => '00000000-0000-0000-0000-000000000000',
'practitioner' => [
'id' => '5dcb47800000000000000000',
'name' => 'Jane Doe'
],
'practitioner_id' => '5dcb47800000000000000010',
'price' => 595,
'remaining_capacity' => 4,
'room' => [
'id' => '5dcb47800000000000000000',
'capacity' => 1,
'name' => 'Alex Morgan'
],
'room_id' => '5dcb47800000000000000010',
'session_type_id' => '5dcb47800000000000000010',
'session_type_name' => 'Spa access',
'site_id' => '5dcb47800000000000000010',
'start_time' => '2019-01-15T11:00:00+01:00',
'waitlist_enabled' => true,
'created_at' => '2019-01-15T12:00:00+01:00',
'deleted_at' => '2019-01-15T12:00:00+01:00',
'updated_at' => '2019-01-15T12:00:00+01:00'
],
]);
$data = json_decode($response->getBody(), true);
package main
import (
"bytes"
"encoding/json"
"net/http"
)
func main() {
payload, _ := json.Marshal(map[string]interface{}{
"id": "5dcb47800000000000000010",
"bookings": []interface{}{
map[string]interface{}{
"id": "5dcb47800000000000000000",
"checked_in_at": "2022-03-02T09:00:00+00:00",
"customer_id": "5dcb47800000000000000020",
"email": "janedoe@example.com",
"first_name": "Jane",
"guests": []interface{}{
map[string]interface{}{
"id": "5dcb47800000000000000000",
"checked_in_at": "2025-10-01T12:00:00+00:00",
"checked_out_at": "2025-10-01T16:30:00+00:00",
"customer_id": "5f8a1b2c-9d3e-4a5b-8c6d-7e8f9a0b1c2d",
"email": "jane.doe@example.com",
"first_name": "Jane",
"intake_form_submission_id": "5dcb47800000000000000010",
"intake_form_complete": false,
"is_lead_booker": true,
"last_name": "Doe",
"name": "Jane Doe",
},
},
"intake_forms_completed": false,
"intake_form_required": true,
"is_no_show": true,
"last_name": "Doe",
"order_id": "5dcb47800000000000000009",
"order_item_id": "5dcb47800000000000000019",
"order_ref": "TRY00",
"organisation_id": "00000000-0000-0000-0000-000000000000",
"phone": "+447727123456",
"session_id": "5dcb47800000000000001111",
"session_type_id": "5dcb47800000000000001234",
"session_type_name": "Spa access",
"site_id": "00000000-0000-0000-0000-111111111111",
"stage": "not_arrived",
"status": "none",
"created_at": "2026-01-15T09:30:00+00:00",
"updated_at": "2026-01-15T09:30:00+00:00",
},
},
"capacity": 10,
"currency": "gbp",
"duration": 60,
"end_time": "2019-01-15T12:00:00+01:00",
"max_baskets": 1,
"num_checked_in": 12,
"num_no_show": 2,
"num_waitlisted": 2,
"organisation_id": "00000000-0000-0000-0000-000000000000",
"practitioner": map[string]interface{}{
"id": "5dcb47800000000000000000",
"name": "Jane Doe",
},
"practitioner_id": "5dcb47800000000000000010",
"price": 595,
"remaining_capacity": 4,
"room": map[string]interface{}{
"id": "5dcb47800000000000000000",
"capacity": 1,
"name": "Alex Morgan",
},
"room_id": "5dcb47800000000000000010",
"session_type_id": "5dcb47800000000000000010",
"session_type_name": "Spa access",
"site_id": "5dcb47800000000000000010",
"start_time": "2019-01-15T11:00:00+01:00",
"waitlist_enabled": true,
"created_at": "2019-01-15T12:00:00+01:00",
"deleted_at": "2019-01-15T12:00:00+01:00",
"updated_at": "2019-01-15T12:00:00+01:00",
})
req, _ := http.NewRequest("PUT", "https://api.playground.try.be/shop/sessions/abc123", bytes.NewBuffer(payload))
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
var data map[string]interface{}
json.NewDecoder(resp.Body).Decode(&data)
}