> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get one ExtraServiceTimeSlot

> Retrieve a single ExtraServiceTimeSlot record by its Id.

An **ExtraServiceTimeSlot** defines the days and times during which an `ExtraService` (resource pricing rule) is available for booking. Each time slot specifies a day of the week and a from/to time window.

The year, month, and day components of `FromTime` and `ToTime` are always `1976-01-01` — only the time-of-day portion is meaningful.

When no time slots are defined for an extra service, the price applies at all times. Adding time slots restricts the price to the specified windows only.

## Authentication

<Note>
  This endpoint requires OAuth2 authentication. Include a valid bearer token in the `Authorization` header.
  The authenticated user must be a full unrestricted administrator or have the **`ExtraServiceTimeSlot-Read`** role.
</Note>

## Path Parameters

<ParamField path="id" type="integer" required>
  The Id of the ExtraServiceTimeSlot record to retrieve.
</ParamField>

## Code Examples

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET \
    "https://spaces.nexudus.com/api/billing/extraservicetimeslots/87654321" \
    -H "Authorization: Bearer YOUR_TOKEN"
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'https://spaces.nexudus.com/api/billing/extraservicetimeslots/87654321',
    {
      headers: {
        'Authorization': 'Bearer YOUR_TOKEN'
      }
    }
  );

  const record = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      'https://spaces.nexudus.com/api/billing/extraservicetimeslots/87654321',
      headers={
          'Authorization': 'Bearer YOUR_TOKEN'
      }
  )

  record = response.json()
  ```
</CodeGroup>

## Response

### 200

<ResponseField name="ExtraServiceId" type="integer">
  Extra Service Id.
</ResponseField>

<ResponseField name="FromTime" type="string">
  Start time of the availability window. Only the time-of-day component is used; the date component is always 1976-01-01..
</ResponseField>

<ResponseField name="ToTime" type="string">
  End time of the availability window. Only the time-of-day component is used; the date component is always 1976-01-01..
</ResponseField>

<ResponseField name="DayOfWeek" type="integer">
  Day Of Week.
</ResponseField>

<ResponseField name="Available" type="boolean">
  Whether the extra service is available for booking during this time slot. When false, the slot acts as an explicit block..
</ResponseField>

<ResponseField name="Id" type="integer">
  Unique record identifier.
</ResponseField>

<ResponseField name="UniqueId" type="string">
  UUID of the record.
</ResponseField>

<ResponseField name="CreatedOn" type="string">
  Date and time the record was created (ISO 8601).
</ResponseField>

<ResponseField name="UpdatedOn" type="string">
  Date and time the record was last updated (ISO 8601).
</ResponseField>

<ResponseField name="UpdatedBy" type="string">
  Email of the user who last updated this record.
</ResponseField>

<ResponseField name="IsNew" type="boolean">
  Whether the record was recently created.
</ResponseField>

<ResponseField name="SystemId" type="string">
  External system identifier.
</ResponseField>

```json Example Response theme={null}
{
  "ExtraServiceId": 0,
  "FromTime": "2025-01-15T10:30:00Z",
  "ToTime": "2025-01-15T10:30:00Z",
  "DayOfWeek": 0,
  "Available": null,
  "Id": 87654321,
  "UpdatedOn": "2025-01-15T10:30:00Z",
  "CreatedOn": "2025-01-10T08:00:00Z",
  "UniqueId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "UpdatedBy": "admin@example.com",
  "IsNew": false,
  "SystemId": null,
  "ToStringText": "ExtraServiceTimeSlot Example",
  "LocalizationDetails": null,
  "CustomFields": null
}
```
