Skip to content

cloudbeds/cloudbeds-api-python

Repository files navigation

Cloudbeds PMS

Welcome to the documentation for Cloudbeds API Version v2! If you are looking to learn how to use the Cloudbeds API to access guest information, reservations, or similar data for your Cloudbeds customers, then you've come to the right place.

In this document you will find all the API methods we provide along with explanations for parameters and response examples.

If you have questions about different implementation steps (e.g. how to implement OAuth 2.0), please refer to our Integrations Portal.

Be sure to subscribe to the monthly Cloudbeds API announcement mailing list to receive information on new additions and improvements to the Cloudbeds API and related developer tools.

Endpoint: https://api.cloudbeds.com/{method}

HTTPS: Our API requires HTTPS. We'll respond with an appropriate error if you're not using it.

Request Format: HTTP GET, POST and PUT (Content-Type: application/x-www-form-urlencoded)

Response Format: JSON

Response Header: X-Request-ID is added to response headers in all calls to help accelerate support and troubleshooting.

Run in Postman use this link to access our Public collection in Postman.

The cloudbeds_pms package is automatically generated by the OpenAPI Generator project:

  • API version: v2
  • Package version: 2.7.0
  • Generator version: 7.11.0
  • Build package: org.openapitools.codegen.languages.PythonClientCodegen

Requirements.

Python 3.8+

Installation & Usage

This python library package is generated without supporting files like setup.py or requirements files

To be able to use it, you will need these dependencies in your own package that uses this library:

  • urllib3 >= 1.25.3, < 3.0.0
  • python-dateutil >= 2.8.2
  • pydantic >= 2
  • typing-extensions >= 4.7.1

Getting Started

In your own code, to use this library to connect and interact with Cloudbeds PMS, you can run the following:

import cloudbeds_pms
from cloudbeds_pms.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.cloudbeds.com
# See configuration.py for a list of all supported configuration parameters.
configuration = cloudbeds_pms.Configuration(
    host = "https://api.cloudbeds.com"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

configuration.access_token = os.environ["ACCESS_TOKEN"]


# Enter a context with an instance of the API client
with cloudbeds_pms.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = cloudbeds_pms.ApplicationsApi(api_client)
    x_property_id = '1,2,3' # str | A numeric, comma-separated string representing the property IDs, sent in the header.
    scopes = ['[\"read:reservation,write:appError\"]'] # List[str] | List of OAuth scopes to filter by. Only API clients that have all specified scopes will be returned. (optional)

    try:
        # Get all connected API clients for a property
        api_response = api_instance.api_client_controller_connected_api_clients(x_property_id, scopes=scopes)
        print("The response of ApplicationsApi->api_client_controller_connected_api_clients:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling ApplicationsApi->api_client_controller_connected_api_clients: %s\n" % e)

Documentation for API Endpoints

All URIs are relative to https://api.cloudbeds.com

Class Method HTTP request Description
ApplicationsApi api_client_controller_connected_api_clients GET /integration/v1/connected-applications Get all connected API clients for a property
DoorLocksApi door_lock_key_controller_batch_delete DELETE /doorlock/v1/keys Delete a list of doorlock keys.
DoorLocksApi door_lock_key_controller_create POST /doorlock/v1/keys Create a new doorlock key.
DoorLocksApi door_lock_key_controller_delete DELETE /doorlock/v1/keys/{id} Delete a doorlock key.
DoorLocksApi door_lock_key_controller_index GET /doorlock/v1/keys/{propertyId} Get a list of doorlock keys for a specific app client and property.
DoorLocksApi door_lock_key_controller_update PATCH /doorlock/v1/keys/{id} Update a doorlock key.
DoorLocksApi door_lock_settings_controller_delete DELETE /doorlock/v1/settings/{propertyId} Delete doorlock settings for property for specific application client.
DoorLocksApi door_lock_settings_controller_single GET /doorlock/v1/settings/{propertyId} Get doorlock settings for property for specific application client.
DoorLocksApi door_lock_settings_controller_upsert PUT /doorlock/v1/settings/{propertyId} Upsert doorlock settings for property for specific application client.
HousekeepingApi call_27abd48cb30106ec3251cf3baf34174c GET /housekeeping/v1/inspections/{propertyId} Housekeeping inspection list
IntegrationEventsApi integration_event_controller_create POST /integration/v1/events Create a new integration event.
IntegrationEventsApi integration_event_controller_index GET /integration/v1/events Get a list of integration events for a specific property.
IntegrationEventsApi integration_event_controller_retry POST /integration/v1/events/{id}/retry Retry an integration event.
IntegrationEventsApi integration_event_controller_update PATCH /integration/v1/events/{id} Update an integration event.
ItemsApi custom_item_controller_index GET /item/v1/custom-items Get a list of custom items for a specific property.
MarketSegmentationApi group_controller_create POST /market-segmentation/v1/groups Create a new Market Segmentation Group.
MarketSegmentationApi group_controller_delete DELETE /market-segmentation/v1/groups/{id} Delete a Market Segmentation Group.
MarketSegmentationApi group_controller_disable POST /market-segmentation/v1/groups/{id}/disable Disable a Market Segmentation Group.
MarketSegmentationApi group_controller_enable POST /market-segmentation/v1/groups/{id}/enable Enable a Market Segmentation Group.
MarketSegmentationApi group_controller_index GET /market-segmentation/v1/groups Get a list of Market Segmentation Groups.
MarketSegmentationApi group_controller_single GET /market-segmentation/v1/groups/{id} Get Market Segmentation Group data.
MarketSegmentationApi group_controller_update PATCH /market-segmentation/v1/groups/{id} Update a Market Segmentation Group.
MarketSegmentationApi segment_controller_create POST /market-segmentation/v1/segments Create a new Market Segmentation Segment.
MarketSegmentationApi segment_controller_default POST /market-segmentation/v1/segments/{id}/default Set Market Segmentation Segment as Default.
MarketSegmentationApi segment_controller_delete DELETE /market-segmentation/v1/segments/{id} Delete a Market Segmentation Segment.
MarketSegmentationApi segment_controller_disable POST /market-segmentation/v1/segments/{id}/disable Disable a Market Segmentation Segment.
MarketSegmentationApi segment_controller_enable POST /market-segmentation/v1/segments/{id}/enable Enable a Market Segmentation Segment.
MarketSegmentationApi segment_controller_index GET /market-segmentation/v1/segments/{enabled} Get a list of Market Segmentation Segments.
MarketSegmentationApi segment_controller_reservations GET /market-segmentation/v1/segments/{id}/reservations/{active} Get a list of reservations linked to a Market Segmentation Segment.
MarketSegmentationApi segment_controller_single GET /market-segmentation/v1/segments/{id} Get Market Segmentation Segment data.
MarketSegmentationApi segment_controller_update PATCH /market-segmentation/v1/segments/{id} Update a Market Segmentation Segment.
PropertyApi system_controller_get_system GET /property/v1/system Retrieves the property's system component versions
ReservationsApi reservation_room_controller_update_room PATCH /reservation/v1/reservations/{reservationId}/rooms/{reservationRoomId} Update room assignment for a reservation
RoomsApi out_of_service_controller_make POST /rooms/v1/out-of-service Room out of service

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

api_key

  • Type: API key
  • API key parameter name: x-api-key
  • Location: HTTP header

default

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL: https://api.cloudbeds.com/auth/oauth/authorize
  • Scopes:
  • read:doorLockKey: Read DoorLock keys and settings
  • write:doorLockKey: Write DoorLock keys and settings
  • delete:doorLockKey: Delete DoorLock keys and settings
  • read:housekeeping: Read Housekeeping inspections
  • read:marketsegment: Read Market Segmentation groups and segments
  • write:marketsegment: Write Market Segmentation groups and segments
  • delete:marketsegment: Delete Market Segmentation groups and segments
  • write:importTask: Create new data imports
  • read:importTask: Read data imports
  • hotel:read: Read Hotel information
  • hotel:write: Write Hotel information
  • hotel:delete: Delete Hotel information
  • write:appError: Write AppError information
  • read:agePolicy: Read Age Policy information
  • write:agePolicy: Write Age Policy information
  • delete:agePolicy: Delete Age Policy information
  • write:allotmentBlocks: Write AllotmentBlock information
  • read:allotmentBlocks: Read AllotmentBlock information
  • delete:allotmentBlocks: Delete AllotmentBlock information

Author

About

Cloudbeds Python API (managed by Terraform)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages