Skip to content

Inventory Reservation Search API

Inventory Reservation Search API can be used to search reservations owned by your company in the Mediani platform.

Search example
Search by resource and date example
Get supported filter fields

Endpoint supports POST for search and GET for listing supported filter fields.

Inventory reservation search request

POST /api/inventory-reservation-search/

Search filters are sent as JSON payload.

Attribute Type Description
page Number Page number starting from 1. Defaults to 1.
items_per_page Number Number of results per page. Defaults to 25.
order String Sorting field. Defaults to -name.
search_query String Full text search query.
active_reservations Boolean Include currently active reservations.
upcoming_reservations Boolean Include upcoming reservations.
past_reservations Boolean Include past reservations.
selected_date Date Date used together with resource_id to fetch reservations for one resource on one day.
resource_id UUID Resource ID used together with selected_date.

Reservation search response

Attribute Type Description
reservations Array List of Reservation objects.
page Number Current page number.
count Number Total number of matches.
num_pages Number Total number of pages.
items_per_page Number Page size.
next Number/null Next page number, or null.
prev Number/null Previous page number, or null.

Reservation

Reservation object serialized with InventoryReservationSearchSerializer.

Attribute Type Description
id UUID Reservation ID.
company Number Company ID.
last_updated_by Number User ID of last updater.
created_at DateTime Creation timestamp.
modified_at DateTime Last modification timestamp.
name String Reservation name.
description String Reservation description.
related_order UUID/null Related order ID if reservation is connected to an order.
get_absolute_url String Absolute URL for reservation in Mediani.
reserved_resources Array List of Allocated resource objects.
resources Array Write-only field used when creating reservations. Not included in search response.
allow_overbook Boolean Whether overbooking is allowed.
reservation_type String Reservation type value.
is_reserving_capacity Boolean Whether reservation is reserving capacity.

Allocated resource

Allocated resource object serialized with NestedInventoryResourceReservationSerializer.

Attribute Type Description
id UUID Allocation ID.
inventory_resource Resource Reserved resource object.
created_at DateTime Creation timestamp.
modified_at DateTime Last modification timestamp.
start_date Date Reservation start date.
end_date Date Reservation end date.
start_hour Number Start hour from 0 to 23.
end_hour Number End hour from 0 to 23.
saturation Number Saturation multiplier.
original_reserved_capacity Number Original capacity before saturation multiplier.
reserved_capacity Number Reserved capacity after multiplier.
is_group Boolean Is this allocation against a group resource.
is_nested Boolean Whether resource belongs to a nested group allocation.
media_price Number Media price for this allocation.
media_price_vat Number Media price including VAT.
production_fees Number Production fees for this allocation.
production_fees_vat Number Production fees including VAT.

Resource

Resource object nested under allocated resource.inventory_resource.

Attribute Type Description
id UUID Resource ID.
name String Resource name.
capacity Number Resource capacity.
capacity_unit Number Capacity unit, values are:
1 = Seconds
2 = Concurrent
image_file String Image URL/path.
type Number Resource type. Values are:
1 = Resource
2 = Group
resources Array Nested resource IDs for groups.
map_point_markers Array List of Map point objects.
tags Array List of tag names.

Map point

Attribute Type Description
id Number Map point marker ID.
name String Map point name.
lat Decimal Latitude.
lng Decimal Longitude.
created_at DateTime Creation timestamp.
modified_at DateTime Last modification timestamp.
resources Array List of resources linked to this marker.

Search example

POST /api/inventory-reservation-search/
{
    "page": 1,
    "items_per_page": 25,
    "order": "-name",
    "search_query": "campaign",
    "active_reservations": true,
    "upcoming_reservations": true,
    "past_reservations": false
}
{
    "reservations": [
        {
            "id": "7ec52f27-64ef-4992-a1d8-5f27b4f52f28",
            "company": 120,
            "last_updated_by": 918,
            "created_at": "2026-05-20T12:00:00.000000Z",
            "modified_at": "2026-05-26T10:30:00.000000Z",
            "name": "June campaign reservation",
            "description": "Main summer campaign",
            "related_order": "db18dbba-fc75-44ef-8ca8-fdcf796a2328",
            "get_absolute_url": "/reservation/june-campaign-reservation/",
            "reserved_resources": [
                {
                    "id": "9c854455-a72b-46f6-9d6f-4f78d9d01b8f",
                    "inventory_resource": {
                        "id": "3dbca171-6dcf-4c7b-a8a4-f96067f46f75",
                        "name": "Main street billboard",
                        "capacity": 10,
                        "capacity_unit": 2,
                        "image_file": null,
                        "type": 1,
                        "resources": [],
                        "map_point_markers": [
                            {
                                "id": 52,
                                "name": "Helsinki center",
                                "lat": "60.170833000000000",
                                "lng": "24.937500000000000",
                                "created_at": "2026-05-01T09:00:00.000000Z",
                                "modified_at": "2026-05-26T10:30:00.000000Z",
                                "resources": []
                            }
                        ],
                        "tags": [
                            "outdoor",
                            "led"
                        ]
                    },
                    "created_at": "2026-05-20T12:00:00.000000Z",
                    "modified_at": "2026-05-26T10:30:00.000000Z",
                    "start_date": "2026-06-01",
                    "end_date": "2026-06-30",
                    "start_hour": 8,
                    "end_hour": 20,
                    "saturation": 1.0,
                    "original_reserved_capacity": 1,
                    "reserved_capacity": 1,
                    "is_group": false,
                    "is_nested": false,
                    "media_price": 1200.0,
                    "media_price_vat": 1488.0,
                    "production_fees": 150.0,
                    "production_fees_vat": 186.0
                }
            ],
            "allow_overbook": false,
            "reservation_type": "default",
            "is_reserving_capacity": true
        }
    ],
    "page": 1,
    "count": 1,
    "num_pages": 1,
    "items_per_page": 25,
    "next": null,
    "prev": null
}

Search by resource and date example

POST /api/inventory-reservation-search/
{
    "resource_id": "3dbca171-6dcf-4c7b-a8a4-f96067f46f75",
    "selected_date": "2026-06-15",
    "active_reservations": true,
    "upcoming_reservations": true,
    "past_reservations": true
}

Returns reservations linked to the given resource for the selected date.

Get supported filter fields

GET /api/inventory-reservation-search/

Returns 405 Method not allowed and includes supported_filter_fields so you can inspect currently accepted filter names.