Retrieve a package

GET
/packages/{product_id}

Returns a single package by its prefixed ID. Any API key (app-installation-scoped or dashboard-user-scoped) can read any package within the company.

A package's composition arrives inline. included_items are the bookables every guest receives; steps are the ordered choices a guest configures. Each step's options are package_step_option objects carrying a listable flag and their underlying bookable. A bookable is an experience variant, accommodation variant, or extra — extras are add-ons, not variants, but are valid package content — and carries the name of its parent experience or accommodation as product_name.

These collections are embedded rather than linked: no endpoint backs them, so each is a complete list (url: null, has_more: false) rather than a reference to fetch later.

Path Parameters

product_id*string

Prefixed ID of the package (e.g. pkg_9fKbV3aQx7).

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/packages/string" \  -H "Easol-API-Version: 2026-11-01"
{
  "object": "package",
  "id": "string",
  "name": "string",
  "tagline": "string",
  "multi_date": true,
  "min_adult_count": 0,
  "max_adult_count": 0,
  "off_sale_copy": "string",
  "state": "draft",
  "dashboard_url": "../dictionary",
  "pricing_strategy": "transparent",
  "hero_image_url": "http://example.com",
  "per_person_home_amount": {
    "amount": 0,
    "currency": "string"
  },
  "included_items": {
    "object": "list",
    "url": "string",
    "has_more": false,
    "next_cursor": "string",
    "data": [
      {
        "object": "package_item",
        "id": "string",
        "quantity": 0,
        "bookable": {
          "object": "experience_variant",
          "id": "string",
          "name": "string",
          "tagline": "string",
          "product_name": "string"
        }
      }
    ]
  },
  "steps": {
    "object": "list",
    "url": "string",
    "has_more": false,
    "next_cursor": "string",
    "data": [
      {
        "object": "package_step",
        "id": "string",
        "name": "string",
        "tagline": "string",
        "required": true,
        "selection": "single",
        "step_type": "experience",
        "options": {
          "object": "list",
          "url": "string",
          "has_more": false,
          "next_cursor": "string",
          "data": [
            {
              "object": "package_step_option",
              "id": "string",
              "listable": true,
              "bookable": {
                "object": "experience_variant",
                "id": "string",
                "name": "string",
                "tagline": "string",
                "product_name": "string"
              }
            }
          ]
        }
      }
    ]
  }
}
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
{
  "error": {
    "code": "string",
    "message": "string"
  }
}
{
  "error": {
    "code": "string",
    "message": "string"
  }
}