curl --request POST \
--url https://api.opencals.com/storefront/cart \
--header 'X-Cart-Id: <x-cart-id>'import requests
url = "https://api.opencals.com/storefront/cart"
headers = {"X-Cart-Id": "<x-cart-id>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'X-Cart-Id': '<x-cart-id>'}};
fetch('https://api.opencals.com/storefront/cart', 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.opencals.com/storefront/cart",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"X-Cart-Id: <x-cart-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.opencals.com/storefront/cart"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("X-Cart-Id", "<x-cart-id>")
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.opencals.com/storefront/cart")
.header("X-Cart-Id", "<x-cart-id>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.opencals.com/storefront/cart")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Cart-Id"] = '<x-cart-id>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"storeId": "<string>",
"customerId": "<string>",
"status": "active",
"paymentCurrencyCode": "<string>",
"taxesIncluded": true,
"expiresAt": "2023-11-07T05:31:56Z",
"extensionsCount": 123,
"appliedDiscountCode": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"subtotal": 100,
"totalTax": 20,
"total": 120,
"appliedDiscounts": [
{
"id": "<string>",
"title": "<string>",
"totalAmount": 123,
"code": "<string>"
}
],
"customer": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "1234567890",
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com",
"phone": "+12135550123",
"password": "<string>",
"storeId": "store-uuid",
"language": "en",
"createdAt": "2023-01-15T10:30:00Z",
"updatedAt": "2023-02-20T14:15:00Z",
"emailVerifiedAt": "2023-01-02T00:00:00Z",
"deletedAt": "2023-06-03T09:45:00Z",
"isEmailVerified": true,
"isPasswordSet": true,
"addresses": [
{
"id": "<string>",
"storeId": "<string>",
"customerId": "<string>",
"isDefault": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"formattedAddress": "123 Main Street, Suite 456, New York, NY, 10001, USA",
"firstName": "<string>",
"lastName": "<string>",
"companyName": "<string>",
"companyVatNumber": "<string>",
"addressLine1": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
}
],
"defaultAddress": {
"id": "<string>",
"storeId": "<string>",
"customerId": "<string>",
"isDefault": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"formattedAddress": "123 Main Street, Suite 456, New York, NY, 10001, USA",
"firstName": "<string>",
"lastName": "<string>",
"companyName": "<string>",
"companyVatNumber": "<string>",
"addressLine1": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
}
},
"items": [
{
"id": "<string>",
"cartId": "<string>",
"appointmentId": "<string>",
"originalUnitPrice": 123,
"discountedUnitPrice": 123,
"unitTaxAmount": 123,
"quantity": 1,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"discounts": [
{
"discountId": "<string>",
"title": "<string>",
"amountPerUnit": 123,
"valueType": "percentage",
"value": 123,
"targetType": "base"
}
],
"originalSubtotal": 225,
"totalDiscount": 100,
"discountedSubtotal": 125,
"totalTax": 0,
"discountedTotal": 125,
"addOnSubtotal": 0,
"addOnTotalTax": 0,
"appointment": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "1001",
"productId": "123e4567-e89b-12d3-a456-426614174001",
"staffMemberId": "123e4567-e89b-12d3-a456-426614174002",
"locationId": "123e4567-e89b-12d3-a456-426614174003",
"storeId": "123e4567-e89b-12d3-a456-426614174004",
"customerId": "123e4567-e89b-12d3-a456-426614174005",
"externalOrderId": "12345678",
"externalOrderName": "#1001",
"from": "2023-06-15T09:00:00Z",
"to": "2023-06-15T10:00:00Z",
"addressLine1": "123 Main Street",
"addressLine2": "Suite 456",
"city": "New York",
"state": "NY",
"postalCode": "10001",
"country": "USA",
"displayAddress": "Podcast House, Floor 3, 87 Turmill Street, London, EC1M 5QU",
"status": "scheduled",
"internalNote": "Customer requested extra attention for specific needs",
"createdBy": "customer",
"reminderSentAt": "2023-06-14T09:00:00Z",
"numberOfAttendees": 1,
"createdAt": "2023-06-01T10:30:00Z",
"updatedAt": "2023-06-02T14:15:00Z",
"deletedAt": "2023-06-03T09:45:00Z",
"product": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"productId": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "1234567890",
"externalVariantId": "9876543210",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"slug": "haircut-basic",
"scheduleId": "<string>",
"productPoolId": "<string>",
"title": "Haircut Service",
"variantTitle": "Short Hair",
"description": "<string>",
"imageId": "<string>",
"color": "BLUE",
"price": 250,
"taxable": false,
"duration": 3600,
"allowCustomDuration": false,
"maxDuration": -1,
"maxAttendees": 1,
"maxGuests": 123,
"allowGuests": false,
"allowCustomerReschedule": false,
"allowCustomerCancel": false,
"rescheduleGap": 123,
"cancelGap": 123,
"beforeGap": 123,
"afterGap": 123,
"fixedTimes": false,
"fixedStartTime": "09:00:00",
"fixedEndTime": "17:00:00",
"advanceScheduleThreshold": 0,
"sendConfirmationEmail": true,
"sendReminderEmail": false,
"sendFeedbackEmail": false,
"skipCheckout": false,
"status": "ACTIVE",
"createdAt": "<string>",
"updatedAt": "<string>",
"deletedAt": "<string>",
"schedule": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"name": "Standard Business Hours",
"timezone": "UTC",
"scheduleGap": "every-15-minutes",
"appointmentsGap": 900,
"advanceScheduleDays": 60,
"availabilityType": "recurring",
"status": "active",
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-06-03T09:45:00Z"
},
"image": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "img_123456",
"url": "https://storage.example.com/images/product-image.jpg",
"filename": "product-image.jpg",
"mime": "image/jpeg",
"createdAt": "2023-01-01T12:00:00Z",
"updatedAt": "2023-01-02T12:00:00Z",
"deletedAt": "2023-01-03T12:00:00Z",
"storeId": "store-uuid"
}
},
"staffMember": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174111",
"userId": "user-uuid",
"scheduleId": "123e4567-e89b-12d3-a456-426614174000",
"imageId": "123e4567-e89b-12d3-a456-426614174000",
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"slug": "mike",
"refreshToken": "abc123xyz456",
"createdAt": "2025-05-01T12:00:00Z",
"updatedAt": "2025-05-15T14:30:00Z",
"deletedAt": "2025-06-01T09:15:00Z",
"schedule": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"name": "Standard Business Hours",
"timezone": "UTC",
"scheduleGap": "every-15-minutes",
"appointmentsGap": 900,
"advanceScheduleDays": 60,
"availabilityType": "recurring",
"status": "active",
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-06-03T09:45:00Z"
},
"image": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "img_123456",
"url": "https://storage.example.com/images/product-image.jpg",
"filename": "product-image.jpg",
"mime": "image/jpeg",
"createdAt": "2023-01-01T12:00:00Z",
"updatedAt": "2023-01-02T12:00:00Z",
"deletedAt": "2023-01-03T12:00:00Z",
"storeId": "store-uuid"
}
},
"location": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"scheduleId": "123e4567-e89b-12d3-a456-426614174002",
"title": "Main Office",
"description": "Our main downtown office location with 3 treatment rooms",
"slug": "new-york",
"type": "physical",
"link": "https://zoom.us/j/123456789",
"addressLine1": "123 Main Street",
"addressLine2": "Suite 200",
"city": "San Francisco",
"state": "CA",
"postalCode": "94105",
"country": "United States",
"addressPlaceId": "ChIJIQBpAG2ahYAR_6128GcTUEo",
"latitude": 37.4224764,
"longitude": -122.0842499,
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-03-10T11:45:00Z",
"address": "<string>",
"schedule": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"name": "Standard Business Hours",
"timezone": "UTC",
"scheduleGap": "every-15-minutes",
"appointmentsGap": 900,
"advanceScheduleDays": 60,
"availabilityType": "recurring",
"status": "active",
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-06-03T09:45:00Z"
},
"displayAddress": "Podcast House, Floor 3, 87 Turmill Street, London, EC1M 5QU"
},
"customAttributes": {
"source": "widget",
"party_size": "4"
}
},
"addOnItems": [
{
"id": "<string>",
"cartId": "<string>",
"cartItemId": "<string>",
"addOnId": "<string>",
"originalUnitPrice": 123,
"discountedUnitPrice": 123,
"unitTaxAmount": 123,
"quantity": 1,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"discounts": [
{
"discountId": "<string>",
"title": "<string>",
"amountPerUnit": 123,
"valueType": "percentage",
"value": 123,
"targetType": "base"
}
],
"originalSubtotal": 123,
"totalDiscount": 123,
"discountedSubtotal": 123,
"totalTax": 123,
"discountedTotal": 123,
"addOn": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "1234567890",
"externalVariantId": "9876543210",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"slug": "child-seat",
"title": "Child Seat",
"description": "<string>",
"imageId": "<string>",
"color": "slate",
"price": 15,
"taxable": true,
"durationMultiplied": false,
"maxQuantity": 4,
"status": "active",
"createdAt": "<string>",
"updatedAt": "<string>",
"deletedAt": "<string>",
"image": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "img_123456",
"url": "https://storage.example.com/images/product-image.jpg",
"filename": "product-image.jpg",
"mime": "image/jpeg",
"createdAt": "2023-01-01T12:00:00Z",
"updatedAt": "2023-01-02T12:00:00Z",
"deletedAt": "2023-01-03T12:00:00Z",
"storeId": "store-uuid"
}
}
}
]
}
],
"payments": [
{
"id": "<string>",
"cartId": "<string>",
"orderId": "<string>",
"provider": {},
"providerReference": "<string>",
"status": "created",
"amount": 123,
"currency": "<string>",
"capturedAmount": 123,
"authorizedUntil": "2023-11-07T05:31:56Z",
"clientSecret": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"customerFirstName": "<string>",
"customerLastName": "<string>",
"customerEmail": "<string>",
"customerPhone": "<string>",
"billingFirstName": "<string>",
"billingLastName": "<string>",
"billingCompanyName": "<string>",
"billingCompanyVatNumber": "<string>",
"billingAddressLine1": "<string>",
"billingAddressLine2": "<string>",
"billingCity": "<string>",
"billingState": "<string>",
"billingPostalCode": "<string>",
"billingCountry": "<string>",
"creditCovered": 123,
"creditRemaining": 123,
"creditValueType": "<string>"
}Create or fetch cart
curl --request POST \
--url https://api.opencals.com/storefront/cart \
--header 'X-Cart-Id: <x-cart-id>'import requests
url = "https://api.opencals.com/storefront/cart"
headers = {"X-Cart-Id": "<x-cart-id>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'X-Cart-Id': '<x-cart-id>'}};
fetch('https://api.opencals.com/storefront/cart', 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.opencals.com/storefront/cart",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"X-Cart-Id: <x-cart-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.opencals.com/storefront/cart"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("X-Cart-Id", "<x-cart-id>")
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.opencals.com/storefront/cart")
.header("X-Cart-Id", "<x-cart-id>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.opencals.com/storefront/cart")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Cart-Id"] = '<x-cart-id>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"storeId": "<string>",
"customerId": "<string>",
"status": "active",
"paymentCurrencyCode": "<string>",
"taxesIncluded": true,
"expiresAt": "2023-11-07T05:31:56Z",
"extensionsCount": 123,
"appliedDiscountCode": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"subtotal": 100,
"totalTax": 20,
"total": 120,
"appliedDiscounts": [
{
"id": "<string>",
"title": "<string>",
"totalAmount": 123,
"code": "<string>"
}
],
"customer": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "1234567890",
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com",
"phone": "+12135550123",
"password": "<string>",
"storeId": "store-uuid",
"language": "en",
"createdAt": "2023-01-15T10:30:00Z",
"updatedAt": "2023-02-20T14:15:00Z",
"emailVerifiedAt": "2023-01-02T00:00:00Z",
"deletedAt": "2023-06-03T09:45:00Z",
"isEmailVerified": true,
"isPasswordSet": true,
"addresses": [
{
"id": "<string>",
"storeId": "<string>",
"customerId": "<string>",
"isDefault": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"formattedAddress": "123 Main Street, Suite 456, New York, NY, 10001, USA",
"firstName": "<string>",
"lastName": "<string>",
"companyName": "<string>",
"companyVatNumber": "<string>",
"addressLine1": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
}
],
"defaultAddress": {
"id": "<string>",
"storeId": "<string>",
"customerId": "<string>",
"isDefault": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"formattedAddress": "123 Main Street, Suite 456, New York, NY, 10001, USA",
"firstName": "<string>",
"lastName": "<string>",
"companyName": "<string>",
"companyVatNumber": "<string>",
"addressLine1": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
}
},
"items": [
{
"id": "<string>",
"cartId": "<string>",
"appointmentId": "<string>",
"originalUnitPrice": 123,
"discountedUnitPrice": 123,
"unitTaxAmount": 123,
"quantity": 1,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"discounts": [
{
"discountId": "<string>",
"title": "<string>",
"amountPerUnit": 123,
"valueType": "percentage",
"value": 123,
"targetType": "base"
}
],
"originalSubtotal": 225,
"totalDiscount": 100,
"discountedSubtotal": 125,
"totalTax": 0,
"discountedTotal": 125,
"addOnSubtotal": 0,
"addOnTotalTax": 0,
"appointment": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "1001",
"productId": "123e4567-e89b-12d3-a456-426614174001",
"staffMemberId": "123e4567-e89b-12d3-a456-426614174002",
"locationId": "123e4567-e89b-12d3-a456-426614174003",
"storeId": "123e4567-e89b-12d3-a456-426614174004",
"customerId": "123e4567-e89b-12d3-a456-426614174005",
"externalOrderId": "12345678",
"externalOrderName": "#1001",
"from": "2023-06-15T09:00:00Z",
"to": "2023-06-15T10:00:00Z",
"addressLine1": "123 Main Street",
"addressLine2": "Suite 456",
"city": "New York",
"state": "NY",
"postalCode": "10001",
"country": "USA",
"displayAddress": "Podcast House, Floor 3, 87 Turmill Street, London, EC1M 5QU",
"status": "scheduled",
"internalNote": "Customer requested extra attention for specific needs",
"createdBy": "customer",
"reminderSentAt": "2023-06-14T09:00:00Z",
"numberOfAttendees": 1,
"createdAt": "2023-06-01T10:30:00Z",
"updatedAt": "2023-06-02T14:15:00Z",
"deletedAt": "2023-06-03T09:45:00Z",
"product": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"productId": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "1234567890",
"externalVariantId": "9876543210",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"slug": "haircut-basic",
"scheduleId": "<string>",
"productPoolId": "<string>",
"title": "Haircut Service",
"variantTitle": "Short Hair",
"description": "<string>",
"imageId": "<string>",
"color": "BLUE",
"price": 250,
"taxable": false,
"duration": 3600,
"allowCustomDuration": false,
"maxDuration": -1,
"maxAttendees": 1,
"maxGuests": 123,
"allowGuests": false,
"allowCustomerReschedule": false,
"allowCustomerCancel": false,
"rescheduleGap": 123,
"cancelGap": 123,
"beforeGap": 123,
"afterGap": 123,
"fixedTimes": false,
"fixedStartTime": "09:00:00",
"fixedEndTime": "17:00:00",
"advanceScheduleThreshold": 0,
"sendConfirmationEmail": true,
"sendReminderEmail": false,
"sendFeedbackEmail": false,
"skipCheckout": false,
"status": "ACTIVE",
"createdAt": "<string>",
"updatedAt": "<string>",
"deletedAt": "<string>",
"schedule": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"name": "Standard Business Hours",
"timezone": "UTC",
"scheduleGap": "every-15-minutes",
"appointmentsGap": 900,
"advanceScheduleDays": 60,
"availabilityType": "recurring",
"status": "active",
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-06-03T09:45:00Z"
},
"image": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "img_123456",
"url": "https://storage.example.com/images/product-image.jpg",
"filename": "product-image.jpg",
"mime": "image/jpeg",
"createdAt": "2023-01-01T12:00:00Z",
"updatedAt": "2023-01-02T12:00:00Z",
"deletedAt": "2023-01-03T12:00:00Z",
"storeId": "store-uuid"
}
},
"staffMember": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174111",
"userId": "user-uuid",
"scheduleId": "123e4567-e89b-12d3-a456-426614174000",
"imageId": "123e4567-e89b-12d3-a456-426614174000",
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"slug": "mike",
"refreshToken": "abc123xyz456",
"createdAt": "2025-05-01T12:00:00Z",
"updatedAt": "2025-05-15T14:30:00Z",
"deletedAt": "2025-06-01T09:15:00Z",
"schedule": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"name": "Standard Business Hours",
"timezone": "UTC",
"scheduleGap": "every-15-minutes",
"appointmentsGap": 900,
"advanceScheduleDays": 60,
"availabilityType": "recurring",
"status": "active",
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-06-03T09:45:00Z"
},
"image": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "img_123456",
"url": "https://storage.example.com/images/product-image.jpg",
"filename": "product-image.jpg",
"mime": "image/jpeg",
"createdAt": "2023-01-01T12:00:00Z",
"updatedAt": "2023-01-02T12:00:00Z",
"deletedAt": "2023-01-03T12:00:00Z",
"storeId": "store-uuid"
}
},
"location": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"scheduleId": "123e4567-e89b-12d3-a456-426614174002",
"title": "Main Office",
"description": "Our main downtown office location with 3 treatment rooms",
"slug": "new-york",
"type": "physical",
"link": "https://zoom.us/j/123456789",
"addressLine1": "123 Main Street",
"addressLine2": "Suite 200",
"city": "San Francisco",
"state": "CA",
"postalCode": "94105",
"country": "United States",
"addressPlaceId": "ChIJIQBpAG2ahYAR_6128GcTUEo",
"latitude": 37.4224764,
"longitude": -122.0842499,
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-03-10T11:45:00Z",
"address": "<string>",
"schedule": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"name": "Standard Business Hours",
"timezone": "UTC",
"scheduleGap": "every-15-minutes",
"appointmentsGap": 900,
"advanceScheduleDays": 60,
"availabilityType": "recurring",
"status": "active",
"createdAt": "2023-01-20T08:30:00Z",
"updatedAt": "2023-02-15T14:20:00Z",
"deletedAt": "2023-06-03T09:45:00Z"
},
"displayAddress": "Podcast House, Floor 3, 87 Turmill Street, London, EC1M 5QU"
},
"customAttributes": {
"source": "widget",
"party_size": "4"
}
},
"addOnItems": [
{
"id": "<string>",
"cartId": "<string>",
"cartItemId": "<string>",
"addOnId": "<string>",
"originalUnitPrice": 123,
"discountedUnitPrice": 123,
"unitTaxAmount": 123,
"quantity": 1,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"discounts": [
{
"discountId": "<string>",
"title": "<string>",
"amountPerUnit": 123,
"valueType": "percentage",
"value": 123,
"targetType": "base"
}
],
"originalSubtotal": 123,
"totalDiscount": 123,
"discountedSubtotal": 123,
"totalTax": 123,
"discountedTotal": 123,
"addOn": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "1234567890",
"externalVariantId": "9876543210",
"storeId": "123e4567-e89b-12d3-a456-426614174001",
"slug": "child-seat",
"title": "Child Seat",
"description": "<string>",
"imageId": "<string>",
"color": "slate",
"price": 15,
"taxable": true,
"durationMultiplied": false,
"maxQuantity": 4,
"status": "active",
"createdAt": "<string>",
"updatedAt": "<string>",
"deletedAt": "<string>",
"image": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "img_123456",
"url": "https://storage.example.com/images/product-image.jpg",
"filename": "product-image.jpg",
"mime": "image/jpeg",
"createdAt": "2023-01-01T12:00:00Z",
"updatedAt": "2023-01-02T12:00:00Z",
"deletedAt": "2023-01-03T12:00:00Z",
"storeId": "store-uuid"
}
}
}
]
}
],
"payments": [
{
"id": "<string>",
"cartId": "<string>",
"orderId": "<string>",
"provider": {},
"providerReference": "<string>",
"status": "created",
"amount": 123,
"currency": "<string>",
"capturedAmount": 123,
"authorizedUntil": "2023-11-07T05:31:56Z",
"clientSecret": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"customerFirstName": "<string>",
"customerLastName": "<string>",
"customerEmail": "<string>",
"customerPhone": "<string>",
"billingFirstName": "<string>",
"billingLastName": "<string>",
"billingCompanyName": "<string>",
"billingCompanyVatNumber": "<string>",
"billingAddressLine1": "<string>",
"billingAddressLine2": "<string>",
"billingCity": "<string>",
"billingState": "<string>",
"billingPostalCode": "<string>",
"billingCountry": "<string>",
"creditCovered": 123,
"creditRemaining": 123,
"creditValueType": "<string>"
}Headers
Response
Cart created or fetched
Unique identifier of the cart
ID of the store that owns the cart
ID of the customer who owns the cart
Cart status
active, converted, abandoned Payment currency code for the cart totals
Whether taxes are included in prices
When cart should expire
Number of times the cart expiration has been extended
Applied promo/discount code for this cart
Created at timestamp
Updated at timestamp
Subtotal amount of the cart
100
Total tax amount of the cart
20
Grand total of the cart
120
Applied discounts aggregated across all cart items
Show child attributes
Show child attributes
Customer who owns the cart
Show child attributes
Show child attributes
Items in the cart
Show child attributes
Show child attributes
Payment records associated with the cart
Show child attributes
Show child attributes
Snapshot of the customer first name captured at checkout
Snapshot of the customer last name captured at checkout
Snapshot of the customer email captured at checkout
Snapshot of the customer phone captured at checkout
Billing address snapshot: bill-to first name
Billing address snapshot: bill-to last name
Billing address snapshot: company name
Billing address snapshot: company VAT number
Billing address snapshot: address line 1
Billing address snapshot: address line 2
Billing address snapshot: city
Billing address snapshot: state/province
Billing address snapshot: postal/zip code
Billing address snapshot: country
Amount of credit consumed by this cart (minutes or currency; null if no credit applied)
Credit balance remaining after this booking (minutes or currency; null if none)
Value type of the applied credit ('time' or 'fixed_amount'); null if none
Was this page helpful?