> For the complete documentation index, see [llms.txt](https://developer.ivvy.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.ivvy.com/venues/venuedata/get-available-function-spaces.md).

# Get Available Function Spaces

<mark style="color:green;">`POST`</mark> `[PlatformAddress]/api/1.0/venue?action=getAvailableFunctionSpaces`

Returns the availability of function spaces in a specific venue based on some filtering criteria. This API is different to [Get Function Space Availability](/venues/venuedata/get-function-space-availability.md) in that besides allowing extra filtering, it returns the availability of function spaces for a maximum date-time range of 24 hours only. Availability timeslots are not returned.

#### Request Body

| Name          | Type      | Description                                                                                                                                 |
| ------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| venueId       | integer   | The id of the venue                                                                                                                         |
| startDatetime | timestamp | The start date and time of the activity. Format is Y-m-d H:i:s                                                                              |
| endDatetime   | timestamp | The end date and time of the activity. Format is Y-m-d H:i:s. The date and time range that of availability that can be fetched is 24 hours. |
| eventType     | integer   | The event type id applied to the function space                                                                                             |
| pax           | integer   | The number of attendees that the function space will be used for                                                                            |
| layoutType    | integer   | The layout type of the function space                                                                                                       |
| spaceIds      | array     | Optionally the list of space ids to which availability will be limited.                                                                     |

{% tabs %}
{% tab title="200 " %}

```
{
    "meta": {
        "totalResults": 2,
        "start": 0,
        "perPage": 100,
        "count": 2
    },
    "results": [
        {
            "id": 5991,
            "name": "Main Hall",
            "isAvailable": true,
            "reason": null,
            "conflict": null
        },
        {
            "id": 6048,
            "name": "Music hall",
            "isAvailable": false,
            "reason": 3,
            "conflict": {
                "venueId": 1,
                "bookingId": 30167,
                "sessionId": 25728,
                "spaceId": 6048,
                "startDate": "2025-07-20 09:00:00",
                "endDate": "2025-07-20 10:00:00",
                "pax": 10
            }
        }
    ]
}
```

{% endtab %}
{% endtabs %}

### Example Request

`Get Available function spaces`

```javascript
{
    "venueId":1,
    "startDatetime": "2025-11-26 09:00:00",
    "endDatetime": "2025-11-26 10:00:00",
    "eventType": 1,
    "pax": 10,
    "layoutType": 1,
    "spaceIds": [1]
}
```

### Returns

| Property    | Data Type | Description                                                                                  |
| ----------- | --------- | -------------------------------------------------------------------------------------------- |
| id          | integer   | The id of space to which the time slots belong.                                              |
| name        | string    | The name of space                                                                            |
| isAvailable | boolean   | Whether the space is available                                                               |
| reason      | integer   | The [reason](#conflict-reason) why the space is unavailable                                  |
| conflict    | object    | The [conflict](#conflict) object if there is a conflict with an existing booking reservation |

### Conflict Reason

| Value | Description                                                                                    |
| ----- | ---------------------------------------------------------------------------------------------- |
| 1     | The reservation is unavailable because the space has been blocked                              |
| 2     | The reservation is unavailable because the max pax on space has been crossed                   |
| 3     | The reservation is unavailable because there is a conflict with an exiting booking reservation |

### Conflict

| Property  | Data Type | Description                                                      |
| --------- | --------- | ---------------------------------------------------------------- |
| venueId   | integer   | The id of venue                                                  |
| bookingId | integer   | The id of booking                                                |
| sessionId | integer   | The id of session                                                |
| spaceId   | integer   | The id of space                                                  |
| startDate | string    | The start date of the conflict                                   |
| endDate   | string    | The end date of the conflict                                     |
| pax       | integer   | The number of attendees that the function space will be used for |
