---
title: "Returns a specific block."
method: GET
path: "/booking/v0-nsfw/blocks/{id}"
tags: ["Block"]
---

# Returns a specific block.

`GET /booking/v0-nsfw/blocks/{id}`

## Request

- Base URL: `https://api.apaleo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.apaleo.com/booking/v0-nsfw/blocks/{id}`
- Auth: OAuth 2
  - Implicit: `https://identity.apaleo.com/connect/authorize`
  - Scopes: `blocks.read`, `reservations.read`, `reservations.manage`, `admin`

Retrieves a block, specified by its ID.<br>You must have at least one of these scopes: 'blocks.read, reservations.read, reservations.manage'.<br>For fine-grained clients, you must have this permission: 'core.blocks.read'.

## Path parameters

- `id` string, required

## Query parameters

- `expand` string[]

## Response `200`

Success

- BlockModel
  - `id` string, required: Block id
  - `group` EmbeddedGroupModel, required
    - `id` string, required: Group booking id
    - `name` string, nullable: Name of the group
  - `status` 'Tentative' | 'Definite' | 'Canceled' | 'Optional', required: Status of the block. Tentative will just mark inventory as requested, but still allows to sell it through other channels. Definite will block the inventory for selling through other channels
  - `property` EmbeddedPropertyModel, required
    - `id` string, required: The property id
    - `code` string, nullable: The code for the property that can be shown in reports and table views
    - `name` string, nullable: The name for the property
    - `description` string, nullable: The description for the property
  - `ratePlan` EmbeddedRatePlanModel, required
    - `id` string, required: The rate plan id
    - `code` string, nullable: The code for the rate plan that can be shown in reports and table views
    - `name` string, nullable: The name for the rate plan
    - `description` string, nullable: The description for the rate plan
    - `isSubjectToCityTax` boolean, required: Whether the rate plan is subject to city tax or not
  - `unitGroup` EmbeddedUnitGroupModel, required
    - `id` string, required: The unit group id
    - `code` string, nullable: The code for the unit group that can be shown in reports and table views
    - `name` string, nullable: The name for the unit group
    - `description` string, nullable: The description for the unit group
    - `type` 'BedRoom' | 'MeetingRoom' | 'EventSpace' | 'ParkingLot' | 'Other', nullable: The unit group type
  - `grossDailyRate` MonetaryValueModel, required
    - `amount` number, double, required
    - `currency` string, required
  - `rateIncludesCityTax` boolean: Whether the gross daily rate includes the city taxes that are configured as included in the rate. They're deducted from it for the guests of a picked up reservation. Blocks created before this was introduced don't include them, until their gross daily rate is changed
  - `from` string, date-time, required: Start date and time from which the inventory will be blocked<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
  - `to` string, date-time, required: End date and time until which the inventory will be blocked<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
  - `pickedReservations` integer, required: Number of reservations already picked from this block
  - `marketSegment` EmbeddedMarketSegmentModel: The market segment identifier to help categorize your bookings for revenue management and reporting purposes.
    - `id` string, required: The market segment id
    - `code` string, nullable: The market segment code
    - `name` string, nullable: The market segment name
  - `promoCode` string, nullable: The promo code associated with a certain special offer used to create the block
  - `corporateCode` string, nullable: The corporate code associated with a certain special offer used to create the block
  - `created` string, date-time, required: Date of creation<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
  - `modified` string, date-time, required: Date of last modification<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
  - `timeSlices` BlockTimeSliceModel[], nullable: The list of time slices for this block
    - `from` string, date-time, required: Start date and time from which units will be blocked<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `to` string, date-time, required: End date and time until which units will be blocked<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `blockedUnits` integer, required: Number of units blocked for this time slice
    - `pickedUnits` integer, required: Number of units which have picked reservations for this time slice
    - `baseAmount` AmountModel, required
      - `grossAmount` number, double, required
      - `netAmount` number, double, required
      - `vatType` 'Null' | 'VeryReduced' | 'Reduced' | 'Normal' | 'Without' | 'Special' | 'Special1' | 'Special2' | 'ReducedCovid19' | 'NormalCovid19' | 'Mixed', required
      - `vatPercent` number, double, required
      - `currency` string, required
    - `totalGrossAmount` MonetaryValueModel, required
      - `amount` number, double, required
      - `currency` string, required
  - `actions` ActionModelBlockActionNotAllowedBlockActionReason[], nullable: The list of actions for this block
    - `action` 'Delete' | 'Confirm' | 'Release' | 'Cancel' | 'Pickup' | 'Modify' | 'Wash' | 'SetToOptional', required
    - `isAllowed` boolean, required
    - `reasons` ActionReasonModelNotAllowedBlockActionReason[], nullable
      - `code` 'DeleteNotAllowedForBlockWithReservations' | 'ReleaseNotAllowedForBlockWithReservations' | 'ReleaseNotAllowedForBlockInThePast' | 'ReleaseNotAllowedForBlockNotInStatusDefinite' | 'ConfirmNotAllowedForBlockNotInStatusTentative' | 'ConfirmNotAllowedForBlockInThePast' | 'CancelNotAllowedForBlockWithNotCancelledReservations' | 'CancelNotAllowedForBlockNotInStatusDefiniteOrTentative' | 'PickupNotAllowedForBlockNotInStatusDefinite' | 'PickupNotAllowedForBlockInThePast' | 'PickupNotAllowedForFullyPickedBlock' | 'ModifyNotAllowedForBlockInThePast' | 'ModifyNotAllowedForBlockInStatusCanceled' | 'WashNotAllowedForBlockNotInStatusDefinite' | 'WashNotAllowedForBlockWithoutReservations' | 'SetToOptionalNotAllowedForBlockNotInStatusTentative' | 'SetToOptionalNotAllowedForBlockInThePast', required
      - `message` string, required
  - `optionalCutoff` string, date-time, nullable: Optional cutoff date, populated only when the block is in status Optional<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
  - `optionalCutoffBehavior` 'DoNothing' | 'AutoRelease', nullable: Optional cutoff behavior, populated only when the block is in status Optional
  - `isOptionalDeductingInventory` boolean, nullable: Whether this optional block reduces availability, populated only when the block is in status Optional

## Other responses

- `400`: Bad request.
- `401`: You are unauthorized.
- `403`: Forbidden.
- `404`: The Request-URI could not be found.
- `422`: Validation errors in the request body or query params.
- `499`: Client closed request.
- `500`: An unexpected error occurred.
- `503`: The server is currently unavailable. Please try later.

---

[API](https://skmtc.dev/apaleo/apis/apaleo-booking-api-not-safe-for-work.md) - [All operations](https://skmtc.dev/apaleo/apis/apaleo-booking-api-not-safe-for-work/llms.txt) - [OpenAPI document](https://skmtc.dev/apaleo/apis/apaleo-booking-api-not-safe-for-work/revisions/a1b6a2f6b879?raw)
