Innkeeper Logo
Get a free demo

API Documentation

api.innkeeper.ai/api/v1

docs / overview

API Overview

Welcome to Innkeeper's Competitor Rate Tracking API. This API allows hotel owners to monitor competitor hotel rates sourced from Booking.com and receive notifications when rates change.

Base URL#

All API requests should be made to:

https://api.innkeeper.ai/api/v1

Authentication#

To use the API, include your API key in the header of each request:

Authorization: Bearer YOUR_API_KEY

You can obtain an API key from your Innkeeper dashboard.

Request Format#

All requests should be sent with the Content-Type: application/json header. Request bodies should be valid JSON.

Response Format#

All API responses are returned in JSON format with appropriate HTTP status codes:

Status CodeDescription
200 OKThe request was successful
201 CreatedA resource was successfully created
400 Bad RequestThe request was invalid or could not be understood
401 UnauthorizedAuthentication failed or credentials missing
404 Not FoundThe specified resource was not found
429 Too Many RequestsRate limit exceeded
500 Internal Server ErrorAn error occurred on the server

Rate Limiting#

The API has a rate limit of 100 requests per minute per API key. If you exceed this limit, you'll receive a 429 Too Many Requests response.

Rate limit information is included in the response headers:

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1628775542

Pagination#

For endpoints that return lists of items, we use cursor-based pagination. You can use the cursor and limit parameters to control pagination:

GET /api/v1/competitors?limit=10&cursor=abcdef123456

The response will include a next_cursor field if there are more results available:

{
  "data": [...],
  "next_cursor": "ghijkl789012"
}

Error Handling#

Error responses include an error code and message:

{
  "error": {
    "code": "resource_not_found",
    "message": "The requested resource could not be found"
  }
}

Available Endpoints#

The Competitor Rate Tracking API includes the following main endpoints:

Competitor Management

POST/api/v1/competitors
GET/api/v1/competitors
GET/api/v1/competitors/:competitor_id
DELETE/api/v1/competitors/:competitor_id

Rate Tracking

GET/api/v1/competitors/:competitor_id/rates

Webhooks

POST/api/v1/webhooks
GET/api/v1/webhooks
DELETE/api/v1/webhooks/:webhook_id

Complete API Reference#

For detailed information on each endpoint, see:

SDK Libraries#

We provide official client libraries for several popular languages:

Support#

API Overview

Welcome to Innkeeper's Competitor Rate Tracking API. This API allows hotel owners to monitor competitor hotel rates sourced from Booking.com and receive notifications when rates change.

Getting Started#

The Competitor Rate Tracking API enables you to:

  • Add competitor hotels to monitor
  • Fetch current rates for monitored competitors
  • Receive webhooks when competitor rates change

All endpoints use standard HTTP status codes to indicate success or failure:

Status CodeDescription
200 OKThe request was successful
400 Bad RequestThe request was invalid
404 Not FoundThe specified resource was not found
500 Internal Server ErrorAn error occurred on the server

All API responses are returned in JSON format.

Base URL#

All API requests should be made to:

https://api.innkeeper.ai/api/v1

Authentication#

To use the API, include your API key in the header of each request:

Authorization: Bearer YOUR_API_KEY

You can obtain an API key from your Innkeeper dashboard once you have access. You'll need to book a demo with us to get access.

Rate Limiting#

The API has a rate limit of 100 requests per minute per API key. If you exceed this limit, you'll receive a 429 Too Many Requests response.

The following headers are included in all API responses to help you manage your rate limits:

HeaderDescription
X-RateLimit-LimitThe maximum number of requests you're permitted to make per minute
X-RateLimit-RemainingThe number of requests remaining in the current rate limit window
X-RateLimit-ResetThe time at which the current rate limit window resets in UTC epoch seconds

Error Handling#

When an error occurs, the API will return an error response with a descriptive message:

{
  "status": "error",
  "message": "Descriptive error message",
  "code": "error_code"
}

Next Steps#

Check out our Competitor Rate API documentation for specific endpoint details and examples.