Docs/Documentation/Connect framework

Node.js

Connect to any vacation rental PMS with Node.js and the Repull SDK.

1

Prerequisites

Node.js 18+ installed on your machine.

You also need a Repull API key. Get one from your dashboard.

2

Install

npm install @repull/sdk
3

Set up environment variables

Add your credentials to a .env file in your project root:

REPULL_API_KEY=sk_live_YOUR_KEY

There is one key type — sk_live_ — created from /dashboard/keys. It acts on whatever channels your workspace has connected.

4

Make your first API call

Initialize the SDK with your API key, then call any endpoint. The example below lists properties and fetches reservations.

import { Repull } from '@repull/sdk'

const repull = new Repull({
  apiKey: process.env.REPULL_API_KEY!,
})

// List all properties across connected PMS platforms
const { data: properties } = await repull.properties.list()
console.log(`Found ${properties.length} properties`)

// Get reservations from Airbnb
const { data: reservations } = await repull.reservations.list({
  platform: 'airbnb',
  status: 'confirmed',
})

// Set a price for two nights — written to the Repull calendar and pushed to
// every connected channel (Airbnb, Booking.com, VRBO). The TypeScript SDK has
// no availability method, so this is a plain HTTP call.
await fetch(`https://api.repull.dev/v1/availability/{propertyId}`.replace('{propertyId}', String(properties[0].id)), {
  method: 'PUT',
  headers: {
    Authorization: `Bearer ${process.env.REPULL_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ dates: ['2026-06-01', '2026-06-02'], price: 250 }),
})
AI