Skip to main content
POST
/
api
/
v1
/
integration-account
Create integration account
curl --request POST \
  --url https://api.example.com/api/v1/integration-account \
  --header 'Content-Type: application/json' \
  --header 'x-calry-api-key: <api-key>' \
  --data '
{
  "name": "My Hostaway Account",
  "accountIdentifier": "hostaway-12345",
  "provider": "HOSTAWAY",
  "authType": "OAUTH",
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "version": "1.0",
  "authConfig": {},
  "clientRedirectURL": "<string>",
  "notificationURL": "<string>",
  "defaultDiscountPercentage": 10,
  "markupPercentage": 5,
  "distributionMarkupPercentage": 15,
  "allowImport": true,
  "requireListingApproval": true
}
'
"<unknown>"

Authorizations

x-calry-api-key
string
header
required

Headers

x-calry-tenant-id
string

Optional tenant ID to specify which tenant to operate as. Controls access to integration accounts. If not provided, the default tenant will be used.

Body

application/json
name
string
required

Name for the integration account

Example:

"My Hostaway Account"

accountIdentifier
string
required

Unique identifier for this account

Example:

"hostaway-12345"

provider
enum<string>
required

The integration provider

Available options:
BOOKINGSYNC,
GUESTY,
HOSTAWAY,
HOSTFULLY,
HOSTIFY,
INTERHOME,
LODGIFY,
OWNERREZ,
HOSTHUB,
UPLISTING,
BEDS24,
HOST_TOOLS,
HOSTFULLYSANDBOX,
HOSPITABLE,
TOKEET
Example:

"HOSTAWAY"

authType
enum<string>
required

Type of authentication for this account

Available options:
ACCESS_TOKEN,
API_KEY,
OAUTH,
EMAIL_PASSWORD,
PARTNER_TOKEN
Example:

"OAUTH"

id
string

Optional ID for the integration account (usually auto-generated)

Example:

"123e4567-e89b-12d3-a456-426614174000"

version
string

Version of the integration to use

Example:

"1.0"

authConfig
object

Authentication configuration. Refer to documentation for specific authConfig for provider

clientRedirectURL
string

The OAuth authentication URL where the user is redirected to do the successful authentication. Required when IntegrationAccountAuthType is OAUTH

notificationURL
string

The URL where the server should send a POST notification after OAuth flow completion. Required when IntegrationAccountAuthType is OAUTH

defaultDiscountPercentage
number

Default discount percentage to apply for this integration account

Required range: 0 <= x <= 100
Example:

10

markupPercentage
number

Markup percentage to apply for this integration account

Required range: x >= 0
Example:

5

distributionMarkupPercentage
number

Markup percentage to apply when other tenants use this integration account listings

Required range: 0 <= x <= 100
Example:

15

allowImport
boolean

Whether listings from this integration account can be imported by other tenants

Example:

true

requireListingApproval
boolean

Whether new listings from sync require manual approval before being marked active

Example:

true

Response

Integration account created successfully

Response for non-OAuth authentication methods