Skip to main content

Overview

The Promotions List API retrieves all active promotions across all properties accessible to your distribution channel, grouped by property ID. This is useful for building a promotions overview page or bulk-syncing promotion data.

Retrieving All Promotions

GET /v1/properties/promotions

Example Request

curl -X GET "https://api.elivaas.com/api/v1/properties/promotions" \
  -H "Api-Key: YOUR_API_KEY" \
  -H "Channel-Id: YOUR_CHANNEL_ID"

Example Response

{
  "prop_456": [
    {
      "id": "promo_001",
      "code": "SUMMER20",
      "title": "Summer Discount",
      "description": "Get 20% off on stays during summer season",
      "discountMethod": "PERCENTAGE",
      "discountPercentage": 20.0,
      "maximumDiscountAllowed": 5000,
      "status": "ACTIVE",
      "type": "COUPON",
      "rank": 1
    },
    {
      "id": "promo_002",
      "code": "EARLY15",
      "title": "Early Bird Offer",
      "description": "Book 30 days in advance and get 15% off",
      "discountMethod": "PERCENTAGE",
      "discountPercentage": 15.0,
      "status": "ACTIVE",
      "type": "EARLY_BOOKER",
      "earlyBookerValueInDays": 30,
      "rank": 2
    }
  ],
  "prop_789": [
    {
      "id": "promo_003",
      "code": "WEEKEND10",
      "title": "Weekend Special",
      "description": "10% off on weekend stays",
      "discountMethod": "PERCENTAGE",
      "discountPercentage": 10.0,
      "status": "ACTIVE",
      "type": "COUPON",
      "weekendOnly": true,
      "rank": 1
    }
  ]
}

Response Format

The response is a JSON object where:
  • Keys are property ID strings
  • Values are arrays of promotion objects for that property
Each promotion object follows the same schema as the Promotions Retrieve endpoint.

Use Cases

  • Bulk sync: Pull all promotions across your portfolio in a single API call
  • Cross-property comparison: Compare available promotions across properties
  • Marketing pages: Build a centralized deals/offers page showing promotions by property

Authentication

All requests must include the following headers:
  • Api-Key: Your API key for authentication
  • Channel-Id: Identifier for the channel making the request

Error Handling

The API returns standard HTTP status codes:
  • 200: Success
  • 401: Unauthorized
  • 500: Internal Server Error