cURL
curl -X POST "$EXSITED_BASE_URL/api/v4/rental_asset_profiles" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"rental_asset_profile": {
"name": "Standard daily rate",
"display_name": "Standard daily rate",
"currency": "AUD",
"rental_asset_profile_sessions": [
{
"name": "Spring season",
"start_date": "2026-11-02",
"end_date": "2026-12-30",
"rental_asset_profile_session_prices": [
{
"price": 1.0,
"price_type": "DAILY",
"enabled_pro_rata": false
}
],
"rental_asset_profile_session_availability": [
{
"preferred_day": "Monday",
"available": true,
"start_time": "09:00",
"end_time": "17:00"
}
]
}
]
}
}'from exsited import build_client
client = build_client()
response = client.rental_assets.create_rental_asset_profile(
{
"rental_asset_profile": {
"name": "Standard daily rate",
"display_name": "Standard daily rate",
"currency": "AUD",
"rental_asset_profile_sessions": [
{
"name": "Spring season",
"start_date": "2026-11-02",
"end_date": "2026-12-30",
"rental_asset_profile_session_prices": [
{"price": 1.0, "price_type": "DAILY", "enabled_pro_rata": False}
],
"rental_asset_profile_session_availability": [
{
"preferred_day": "Monday",
"available": True,
"start_time": "09:00",
"end_time": "17:00",
}
],
}
],
}
}
)
print(response.data)
import {buildClient} from 'exsited';
const client = await buildClient();
const response = await client.rentalAssets.createRentalAssetProfile({
rental_asset_profile: {
name: 'Standard daily rate',
display_name: 'Standard daily rate',
currency: 'AUD',
rental_asset_profile_sessions: [
{
name: 'Spring season',
start_date: '2026-11-02',
end_date: '2026-12-30',
rental_asset_profile_session_prices: [{price: 1.0, price_type: 'DAILY', enabled_pro_rata: false}],
rental_asset_profile_session_availability: [
{preferred_day: 'Monday', available: true, start_time: '09:00', end_time: '17:00'},
],
},
],
},
});
console.log(response.data);
use Exsited\Client\ClientRegistry;
$client = ClientRegistry::buildClient();
$response = $client->rentalAssets->createRentalAssetProfile([
'rental_asset_profile' => [
'name' => 'Standard daily rate',
'display_name' => 'Standard daily rate',
'currency' => 'AUD',
'rental_asset_profile_sessions' => [
[
'name' => 'Spring season',
'start_date' => '2026-11-02',
'end_date' => '2026-12-30',
'rental_asset_profile_session_prices' => [
['price' => 1.0, 'price_type' => 'DAILY', 'enabled_pro_rata' => false],
],
'rental_asset_profile_session_availability' => [
[
'preferred_day' => 'Monday',
'available' => true,
'start_time' => '09:00',
'end_time' => '17:00',
],
],
],
],
],
]);
print_r($response->data);
import com.exsited.client.ApiResponse;
import com.exsited.client.ClientRegistry;
import com.exsited.client.ExsitedClient;
import com.exsited.resources.rental_assets.rental_assets_dto.RentalAssetsDto.RentalAssetProfileView;
import java.util.List;
import java.util.Map;
ExsitedClient client = ClientRegistry.buildClient();
ApiResponse<RentalAssetProfileView> response = client.rentalAssets().createRentalAssetProfile(
Map.of(
"rental_asset_profile", Map.of(
"name", "Standard daily rate",
"display_name", "Standard daily rate",
"currency", "AUD",
"rental_asset_profile_sessions", List.of(
Map.of(
"name", "Spring season",
"start_date", "2026-11-02",
"end_date", "2026-12-30",
"rental_asset_profile_session_prices", List.of(
Map.of(
"price", 1.0,
"price_type", "DAILY",
"enabled_pro_rata", false)),
"rental_asset_profile_session_availability", List.of(
Map.of(
"preferred_day", "Monday",
"available", true,
"start_time", "09:00",
"end_time", "17:00")))))));
System.out.println(response.getMap());
using Exsited.Client;
await using var client = ExsitedClient.BuildClient();
var response = await client.RentalAssets.CreateRentalAssetProfileAsync(new Dictionary<string, object?>
{
["rental_asset_profile"] = new Dictionary<string, object?>
{
["name"] = "Standard daily rate",
["display_name"] = "Standard daily rate",
["currency"] = "AUD",
["rental_asset_profile_sessions"] = new List<object?>
{
new Dictionary<string, object?>
{
["name"] = "Spring season",
["start_date"] = "2026-11-02",
["end_date"] = "2026-12-30",
["rental_asset_profile_session_prices"] = new List<object?>
{
new Dictionary<string, object?>
{
["price"] = 1.0,
["price_type"] = "DAILY",
["enabled_pro_rata"] = false,
},
},
["rental_asset_profile_session_availability"] = new List<object?>
{
new Dictionary<string, object?>
{
["preferred_day"] = "Monday",
["available"] = true,
["start_time"] = "09:00",
["end_time"] = "17:00",
},
},
},
},
},
});
Console.WriteLine(response.Json);
import 'package:exsited/exsited.dart';
final client = buildClient();
final response = await client.rentalAssets.createRentalAssetProfile({
'rental_asset_profile': {
'name': 'Standard daily rate',
'display_name': 'Standard daily rate',
'currency': 'AUD',
'rental_asset_profile_sessions': [
{
'name': 'Spring season',
'start_date': '2026-11-02',
'end_date': '2026-12-30',
'rental_asset_profile_session_prices': [
{'price': 1.0, 'price_type': 'DAILY', 'enabled_pro_rata': false},
],
'rental_asset_profile_session_availability': [
{
'preferred_day': 'Monday',
'available': true,
'start_time': '09:00',
'end_time': '17:00',
},
],
},
],
},
});
print(response.map);
import (
"context"
"fmt"
"log"
exsited "github.com/exsited/exsited-sdk-go/v4"
)
client, err := exsited.BuildClient(nil)
if err != nil {
log.Fatal(err)
}
defer client.Close()
response, err := client.RentalAssets().CreateRentalAssetProfile(context.Background(), map[string]any{
"rental_asset_profile": map[string]any{
"name": "Standard daily rate",
"display_name": "Standard daily rate",
"currency": "AUD",
"rental_asset_profile_sessions": []any{
map[string]any{
"name": "Spring season",
"start_date": "2026-11-02",
"end_date": "2026-12-30",
"rental_asset_profile_session_prices": []any{
map[string]any{
"price": 1.0,
"price_type": "DAILY",
"enabled_pro_rata": false,
},
},
"rental_asset_profile_session_availability": []any{
map[string]any{
"preferred_day": "Monday",
"available": true,
"start_time": "09:00",
"end_time": "17:00",
},
},
},
},
},
}, nil)
if err != nil {
log.Fatal(err)
}
fmt.Println(response.Map)
{
"rental_asset_profile": {
"activity_logs": "<array>",
"created_by": {
"name": "<string>",
"object": "<string>"
},
"created_on": "<string>",
"currency": {
"object": "<string>",
"id": "<string>",
"name": "<string>",
"href": "<string>"
},
"display_name": "<string>",
"href": "<string>",
"id": "<string>",
"is_tax_inclusive": true,
"last_updated_by": {
"name": "<string>",
"object": "<string>"
},
"last_updated_on": "<string>",
"max_booking_limit": null,
"name": "<string>",
"object": "<string>",
"rental_asset_profile_sessions": [
{
"end_date": "<string>",
"id": "<string>",
"name": "<string>",
"object": "<string>",
"rental_asset_profile_session_availability": [
{
"available": true,
"end_time": "<string>",
"id": "<string>",
"object": "<string>",
"preferred_day": "<string>",
"start_time": "<string>",
"status": "<string>"
}
],
"rental_asset_profile_session_prices": [
{
"id": "<string>",
"is_enabled_pro_rata": true,
"object": "<string>",
"price": 123,
"price_type": "<string>",
"pricing_level": null,
"rental_asset_profile_session_price_hours": "<array>",
"rental_asset_profile_session_price_peak_hourly": "<array>",
"status": "<string>"
}
],
"rental_asset_profile_session_working_hours": [
{
"end_time": "<string>",
"id": "<string>",
"object": "<string>",
"start_time": "<string>",
"status": "<string>"
}
],
"start_date": "<string>",
"status": "<string>"
}
],
"rental_assets": [
{
"display_name": "<string>",
"href": "<string>",
"id": "<string>",
"image_name": null,
"name": "<string>",
"object": "<string>",
"status": "<string>",
"use_custom_availability": true
}
],
"status": "<string>",
"tax": null,
"version": 123
}
}{
"object": "<string>",
"request_id": "<string>",
"status": 123,
"code": "<string>",
"message": "<string>",
"doc_url": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>",
"doc_url": "<string>"
}
]
}Rental assets
Create a rental asset profile
Creates a rental asset profile and returns it under rental_asset_profile.
POST
/
rental_asset_profiles
cURL
curl -X POST "$EXSITED_BASE_URL/api/v4/rental_asset_profiles" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"rental_asset_profile": {
"name": "Standard daily rate",
"display_name": "Standard daily rate",
"currency": "AUD",
"rental_asset_profile_sessions": [
{
"name": "Spring season",
"start_date": "2026-11-02",
"end_date": "2026-12-30",
"rental_asset_profile_session_prices": [
{
"price": 1.0,
"price_type": "DAILY",
"enabled_pro_rata": false
}
],
"rental_asset_profile_session_availability": [
{
"preferred_day": "Monday",
"available": true,
"start_time": "09:00",
"end_time": "17:00"
}
]
}
]
}
}'from exsited import build_client
client = build_client()
response = client.rental_assets.create_rental_asset_profile(
{
"rental_asset_profile": {
"name": "Standard daily rate",
"display_name": "Standard daily rate",
"currency": "AUD",
"rental_asset_profile_sessions": [
{
"name": "Spring season",
"start_date": "2026-11-02",
"end_date": "2026-12-30",
"rental_asset_profile_session_prices": [
{"price": 1.0, "price_type": "DAILY", "enabled_pro_rata": False}
],
"rental_asset_profile_session_availability": [
{
"preferred_day": "Monday",
"available": True,
"start_time": "09:00",
"end_time": "17:00",
}
],
}
],
}
}
)
print(response.data)
import {buildClient} from 'exsited';
const client = await buildClient();
const response = await client.rentalAssets.createRentalAssetProfile({
rental_asset_profile: {
name: 'Standard daily rate',
display_name: 'Standard daily rate',
currency: 'AUD',
rental_asset_profile_sessions: [
{
name: 'Spring season',
start_date: '2026-11-02',
end_date: '2026-12-30',
rental_asset_profile_session_prices: [{price: 1.0, price_type: 'DAILY', enabled_pro_rata: false}],
rental_asset_profile_session_availability: [
{preferred_day: 'Monday', available: true, start_time: '09:00', end_time: '17:00'},
],
},
],
},
});
console.log(response.data);
use Exsited\Client\ClientRegistry;
$client = ClientRegistry::buildClient();
$response = $client->rentalAssets->createRentalAssetProfile([
'rental_asset_profile' => [
'name' => 'Standard daily rate',
'display_name' => 'Standard daily rate',
'currency' => 'AUD',
'rental_asset_profile_sessions' => [
[
'name' => 'Spring season',
'start_date' => '2026-11-02',
'end_date' => '2026-12-30',
'rental_asset_profile_session_prices' => [
['price' => 1.0, 'price_type' => 'DAILY', 'enabled_pro_rata' => false],
],
'rental_asset_profile_session_availability' => [
[
'preferred_day' => 'Monday',
'available' => true,
'start_time' => '09:00',
'end_time' => '17:00',
],
],
],
],
],
]);
print_r($response->data);
import com.exsited.client.ApiResponse;
import com.exsited.client.ClientRegistry;
import com.exsited.client.ExsitedClient;
import com.exsited.resources.rental_assets.rental_assets_dto.RentalAssetsDto.RentalAssetProfileView;
import java.util.List;
import java.util.Map;
ExsitedClient client = ClientRegistry.buildClient();
ApiResponse<RentalAssetProfileView> response = client.rentalAssets().createRentalAssetProfile(
Map.of(
"rental_asset_profile", Map.of(
"name", "Standard daily rate",
"display_name", "Standard daily rate",
"currency", "AUD",
"rental_asset_profile_sessions", List.of(
Map.of(
"name", "Spring season",
"start_date", "2026-11-02",
"end_date", "2026-12-30",
"rental_asset_profile_session_prices", List.of(
Map.of(
"price", 1.0,
"price_type", "DAILY",
"enabled_pro_rata", false)),
"rental_asset_profile_session_availability", List.of(
Map.of(
"preferred_day", "Monday",
"available", true,
"start_time", "09:00",
"end_time", "17:00")))))));
System.out.println(response.getMap());
using Exsited.Client;
await using var client = ExsitedClient.BuildClient();
var response = await client.RentalAssets.CreateRentalAssetProfileAsync(new Dictionary<string, object?>
{
["rental_asset_profile"] = new Dictionary<string, object?>
{
["name"] = "Standard daily rate",
["display_name"] = "Standard daily rate",
["currency"] = "AUD",
["rental_asset_profile_sessions"] = new List<object?>
{
new Dictionary<string, object?>
{
["name"] = "Spring season",
["start_date"] = "2026-11-02",
["end_date"] = "2026-12-30",
["rental_asset_profile_session_prices"] = new List<object?>
{
new Dictionary<string, object?>
{
["price"] = 1.0,
["price_type"] = "DAILY",
["enabled_pro_rata"] = false,
},
},
["rental_asset_profile_session_availability"] = new List<object?>
{
new Dictionary<string, object?>
{
["preferred_day"] = "Monday",
["available"] = true,
["start_time"] = "09:00",
["end_time"] = "17:00",
},
},
},
},
},
});
Console.WriteLine(response.Json);
import 'package:exsited/exsited.dart';
final client = buildClient();
final response = await client.rentalAssets.createRentalAssetProfile({
'rental_asset_profile': {
'name': 'Standard daily rate',
'display_name': 'Standard daily rate',
'currency': 'AUD',
'rental_asset_profile_sessions': [
{
'name': 'Spring season',
'start_date': '2026-11-02',
'end_date': '2026-12-30',
'rental_asset_profile_session_prices': [
{'price': 1.0, 'price_type': 'DAILY', 'enabled_pro_rata': false},
],
'rental_asset_profile_session_availability': [
{
'preferred_day': 'Monday',
'available': true,
'start_time': '09:00',
'end_time': '17:00',
},
],
},
],
},
});
print(response.map);
import (
"context"
"fmt"
"log"
exsited "github.com/exsited/exsited-sdk-go/v4"
)
client, err := exsited.BuildClient(nil)
if err != nil {
log.Fatal(err)
}
defer client.Close()
response, err := client.RentalAssets().CreateRentalAssetProfile(context.Background(), map[string]any{
"rental_asset_profile": map[string]any{
"name": "Standard daily rate",
"display_name": "Standard daily rate",
"currency": "AUD",
"rental_asset_profile_sessions": []any{
map[string]any{
"name": "Spring season",
"start_date": "2026-11-02",
"end_date": "2026-12-30",
"rental_asset_profile_session_prices": []any{
map[string]any{
"price": 1.0,
"price_type": "DAILY",
"enabled_pro_rata": false,
},
},
"rental_asset_profile_session_availability": []any{
map[string]any{
"preferred_day": "Monday",
"available": true,
"start_time": "09:00",
"end_time": "17:00",
},
},
},
},
},
}, nil)
if err != nil {
log.Fatal(err)
}
fmt.Println(response.Map)
{
"rental_asset_profile": {
"activity_logs": "<array>",
"created_by": {
"name": "<string>",
"object": "<string>"
},
"created_on": "<string>",
"currency": {
"object": "<string>",
"id": "<string>",
"name": "<string>",
"href": "<string>"
},
"display_name": "<string>",
"href": "<string>",
"id": "<string>",
"is_tax_inclusive": true,
"last_updated_by": {
"name": "<string>",
"object": "<string>"
},
"last_updated_on": "<string>",
"max_booking_limit": null,
"name": "<string>",
"object": "<string>",
"rental_asset_profile_sessions": [
{
"end_date": "<string>",
"id": "<string>",
"name": "<string>",
"object": "<string>",
"rental_asset_profile_session_availability": [
{
"available": true,
"end_time": "<string>",
"id": "<string>",
"object": "<string>",
"preferred_day": "<string>",
"start_time": "<string>",
"status": "<string>"
}
],
"rental_asset_profile_session_prices": [
{
"id": "<string>",
"is_enabled_pro_rata": true,
"object": "<string>",
"price": 123,
"price_type": "<string>",
"pricing_level": null,
"rental_asset_profile_session_price_hours": "<array>",
"rental_asset_profile_session_price_peak_hourly": "<array>",
"status": "<string>"
}
],
"rental_asset_profile_session_working_hours": [
{
"end_time": "<string>",
"id": "<string>",
"object": "<string>",
"start_time": "<string>",
"status": "<string>"
}
],
"start_date": "<string>",
"status": "<string>"
}
],
"rental_assets": [
{
"display_name": "<string>",
"href": "<string>",
"id": "<string>",
"image_name": null,
"name": "<string>",
"object": "<string>",
"status": "<string>",
"use_custom_availability": true
}
],
"status": "<string>",
"tax": null,
"version": 123
}
}{
"object": "<string>",
"request_id": "<string>",
"status": 123,
"code": "<string>",
"message": "<string>",
"doc_url": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>",
"doc_url": "<string>"
}
]
}Send the profile under
rental_asset_profile: name, display_name, currency and rental_asset_profile_sessions. Each session needs at least one price in rental_asset_profile_session_prices; a session without one is refused with 400.
The SDK samples get their client from credentials your app registers once when it starts, as shown in Authentication. To try the call here, click Try it, set
host to your Exsited API host name and paste an access token from Get an access token. To send a raw JSON body instead of filling in fields, copy the cURL sample and edit its -d payload.Authorizations
An access token from POST /api/v4/oauth2/token. The SDKs get and renew it for you.
Body
application/json
Show child attributes
Show child attributes
Response
The new profile, under rental_asset_profile.
Show child attributes
Show child attributes