---
title: "Publish a custom-channel review"
method: POST
path: "/reviews/custom-channel-reviews"
tags: ["Review"]
---

# Publish a custom-channel review

`POST /reviews/custom-channel-reviews`

## Request

- Base URL: `https://open-api.guesty.com/v1`
- URL: `https://open-api.guesty.com/v1/reviews/custom-channel-reviews`
- Auth: API key in header `authorization`

Publish a custom-channel review

## Request body

- object
  - `customChannelName` string, string, required
  - `internalReservationId` string, string, required: Guesty Reservation ID
  - `externalReviewId` string, string, required: Custom Source Review ID
  - `createdAt` string, date-time, required: Review creation date and time
  - `updatedAt` string, date-time, required: Review last update date and time
  - `rating` number, required: Rating
  - `bodyText` string, string, required: Review Body Text
  - `reviewerName` string, string, required: Reviewer Name
  - `titleText` string, string: Review Title Text
  - `locale` string, string: Review Texts Locale
  - `categoryRatings` object: A map of category names to their rating scores (integer, 1-5)

## Response `200`

Upsert Review Response

- object
  - `_id` object, required
  - `accountId` object, required
  - `externalReviewId` string, string, required
  - `channelId` 'bookingCom' | 'airbnb2' | 'homeaway2' | 'custom', string, required
  - `customChannelName` string, string
  - `subListingId` object
  - `listingId` object, required
  - `complexId` object
  - `externalListingId` string, string
  - `externalComplexId` string, string
  - `reservationId` object
  - `externalReservationId` string, string
  - `guestId` object
  - `createdAt` string, date-time
  - `updatedAt` string, date-time
  - `createdAtGuesty` string, date-time
  - `updatedAtGuesty` string, date-time
  - `rawReview` object, required
  - `contents` object: Review contents. For custom-channels reviews only
    - `body` string, string, required
    - `reviewerName` string, string, required
    - `title` string, string
    - `locale` string, string
    - `rating` number, required: Rating from 1 to 10
  - `reviewReplies` object[]
    - `status` 'PENDING' | 'FAILED' | 'COMPLETED' | 'NOT_FOUND', required
    - `reviewReply` string, required
    - `replyAt` string, date-time, required

## Other responses

- `201`
- `401`: Unauthorized
- `404`: Not Found

## Changes

- **2026-11-03** `3122b8618183`: 1 info
  - the endpoint scheme security `authorization-token` was removed from the API

[Operation history](https://skmtc.dev/guesty/apis/guesty-open-api/changes/reviews/custom-channel-reviews/post.md)

---

[API](https://skmtc.dev/guesty/apis/guesty-open-api.md) - [All operations](https://skmtc.dev/guesty/apis/guesty-open-api/llms.txt) - [OpenAPI document](https://skmtc.dev/guesty/apis/guesty-open-api/revisions/3122b8618183?raw)
