> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.duve.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.duve.com/_mcp/server.

This is **Duve** Open API to access your hotel data    

![image info](https://connect.duve.com/pub/developers/open-api.png)

## Gettings started


On your Duve platform account create a new sync source of type **Duve Open
API**  

In case you are missing this type of sync source please contact our [integration team](mailto:integrations@duve.com)


## Rate Limits


All API requests have rate limits and your system will need to make sure to
know to handle 429 response in case of too many requests


The rate limits are 60 req a minute.


## API authentication


Via Bearer token recived from the Authorization Oauth2 flow

## Example Request
All requests to the Duve API must be in JSON format and sent using the `POST` method. Below is an example request for retrieving configuration details for a test property.
### Example Request
**Endpoint**:
`GET {{apiUrl}}/openapi/v1/reservations/links?externalId={{reservationId}}&includeLastMessage=1`

### Example Response
```bash
{
    "guestApp": "https://m.duve.co/g/pTwpOIS5w",
    "chatLink": "https://m.duve.co/g/pTwpOIS5w?id=chat",
    "onlineCheckInLink": "https://m.duve.co/p/pTwpOIS5w",
    "chatLastMessage": {
        "body": "Everything fly", // Plain text of the mesasge content
        "author": "Duve Test", // Name of the guest sent the message
        "authorType": "admin", // user is for guest, admin is for host
        "time": "2024-06-21T12:59:09.684Z",
        "sentVia": "Chat",
        "hasAttachment": false,
        "seen": false // If the last message is from the guest and a host saw it it will be true othewise false. Vice versa when the host written the message and if the guest saw it or not
    }
}
```