> For the complete documentation index, see [llms.txt](https://docs.okendo.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.okendo.io/merchant-rest-api/endpoints/reviews.md).

# Reviews

## Reviews

## List Reviews

> Returns a list of Reviews for the requested store

```json
{"openapi":"3.0.1","info":{"title":"Okendo Enterprise API","version":"1.2.1"},"tags":[{"name":"reviews"}],"servers":[{"url":"https://api.okendo.io/enterprise"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}}},"paths":{"/reviews":{"get":{"tags":["reviews"],"summary":"List Reviews","description":"Returns a list of Reviews for the requested store","parameters":[{"description":"A limit on the number of items returned. Between 1 and 100. Default 25.","in":"query","name":"limit","required":false,"schema":{"type":"integer","format":"int32"}},{"name":"lastEvaluated","description":"The URL-encoded JSON object representing the cursor for the next page of results.","in":"query","required":false,"schema":{"type":"string"}},{"name":"orderBy","description":"The sort order of the reviews. Format: '(date|rating) (asc|desc)'. Default 'date desc'","in":"query","required":false,"schema":{"type":"string"}},{"name":"status","description":"A filter on the Reviews based on the review's moderation status. The value must be one of 'approved', 'pending', 'rejected'. Default 'approved'.","in":"query","required":false,"schema":{"type":"string","enum":["approved","pending","rejected"],"description":"The moderation status of the review."}}],"responses":{"200":{"description":"An object containing a list of Reviews and a relative link to the next page of results if available.","content":{"application/json":{"schema":{"type":"object","properties":{"reviews":{"type":"array","items":{"type":"object","properties":{"subscriberId":{"type":"string","description":"Your user id within Okendo.","format":"uuid"},"reviewId":{"type":"string","format":"uuid"},"productId":{"type":"string","description":"The product ID prefixed by a platform identifier."},"attributesWithRating":{"type":"array","items":{"type":"object","properties":{"minLabel":{"type":"string","description":"The label for the leading edge of an attribute bar."},"midLabel":{"type":"string","description":"The label for the midpoint of a centered-range attribute bar."},"maxLabel":{"type":"string","description":"The label for the trailing edge of an attribute bar."},"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["centered-range","range"]},"value":{"type":"number","description":"The value selected on the attribute scale. For attribute of type 'range' this is between 1 and 5. For 'centered-range', between -1 and 1."}},"required":["title","type","value"]}},"body":{"type":"string","description":"The content of the review."},"containsProfanity":{"type":"boolean","description":"true if the title or body contain words on the profanity list, otherwise false."},"dateCreated":{"type":"string","format":"date-time"},"helpfulCount":{"type":"integer","format":"int32","description":"The number of upvotes a review has received."},"isIncentivized":{"type":"boolean"},"isRecommended":{"type":"boolean"},"media":{"type":"array","items":{"type":"object","properties":{"streamId":{"type":"string","format":"uuid"},"fullSizeUrl":{"type":"string","format":"uri"},"largeUrl":{"type":"string","format":"uri"},"thumbnailUrl":{"type":"string","format":"uri"},"type":{"type":"string","enum":["image","video"]},"isHidden":{"type":"boolean"}},"required":["fullSizeUrl","thumbnailUrl","type","streamId","isHidden"]},"minItems":1},"productAttributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"productName":{"type":"string"},"order":{"type":"object","properties":{"orderId":{"type":"string"},"orderNumber":{"type":"string"}}},"rating":{"type":"integer","format":"int32","minimum":1,"maximum":5,"description":"The number of stars a review has received."},"reply":{"type":"object","properties":{"body":{"type":"string","format":"html","description":"The html representation of the review reply."},"dateCreated":{"type":"string","format":"date-time"},"rawBody":{"type":"string","description":"The reply entered by the user. (Note: can include markdown syntax)."},"isPrivate":{"type":"boolean","description":"true if the reply is unpublished otherwise false."}},"required":["body"]},"reviewer":{"type":"object","properties":{"attributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"avatarUrl":{"type":"string","format":"uri"},"displayName":{"type":"string","description":"The full name entered by the reviewer with the last name truncated."},"email":{"type":"string","format":"email"},"isVerified":{"type":"boolean"},"location":{"type":"object","properties":{"country":{"type":"object","properties":{"code":{"type":"string"},"name":{"type":"string"}}},"zoneCode":{"type":"string"}}},"name":{"type":"string","description":"The full name entered by the reviewer."},"socialConnection":{"type":"string","enum":["facebook","google"]},"verifiedStatus":{"type":"string","enum":["Verified Buyer","Verified Reviewer"],"description":"'Verified Buyer' if the reviewer could be connected to a valid order. 'Verified Reviewer' if the reviewer could not be connected to a valid order but verified their email address."}},"required":["displayName","name"]},"reward":{"type":"object","properties":{"description":{"type":"string"},"integration":{"type":"string"},"type":{"type":"string","enum":["coupon","points","event"]},"value":{"type":"string"},"isCouponUpgrade":{"type":"boolean"}},"required":["type","value"]},"sentiment":{"type":"string","enum":["positive","negative","neutral","mixed"],"description":"The natural language sentiment of the review title and body."},"status":{"type":"string","enum":["approved","pending","rejected"],"description":"The moderation status of the review."},"tags":{"type":"array","items":{"type":"string"},"description":"The names of any tags added to the review."},"title":{"type":"string","description":"The title of the review."},"unhelpfulCount":{"type":"integer","format":"int32","description":"The number of downvotes a review has received."},"variantId":{"type":"string","description":"The id of the reviewed Shopify product variant."},"variantName":{"type":"string","description":"The name of the reviewed Shopify product variant."}},"required":["subscriberId","reviewId","productId","body","dateCreated","rating","reviewer","status","title","unhelpfulCount"]}},"nextUrl":{"type":"string","format":"uri"}}}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}},"401":{"description":"Authentication credentials are missing or incorrect."}}}}}}
```

## GET /reviews/{reviewId}

> Retrieve a Review

```json
{"openapi":"3.0.1","info":{"title":"Okendo Enterprise API","version":"1.2.1"},"tags":[{"name":"reviews"}],"servers":[{"url":"https://api.okendo.io/enterprise"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}}},"paths":{"/reviews/{reviewId}":{"get":{"tags":["reviews"],"summary":"Retrieve a Review","parameters":[{"name":"reviewId","description":"The ID of the Review to retrieve.","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"A Review object","content":{"application/json":{"schema":{"type":"object","properties":{"review":{"type":"object","properties":{"subscriberId":{"type":"string","description":"Your user id within Okendo.","format":"uuid"},"reviewId":{"type":"string","format":"uuid"},"productId":{"type":"string","description":"The product ID prefixed by a platform identifier."},"attributesWithRating":{"type":"array","items":{"type":"object","properties":{"minLabel":{"type":"string","description":"The label for the leading edge of an attribute bar."},"midLabel":{"type":"string","description":"The label for the midpoint of a centered-range attribute bar."},"maxLabel":{"type":"string","description":"The label for the trailing edge of an attribute bar."},"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["centered-range","range"]},"value":{"type":"number","description":"The value selected on the attribute scale. For attribute of type 'range' this is between 1 and 5. For 'centered-range', between -1 and 1."}},"required":["title","type","value"]}},"body":{"type":"string","description":"The content of the review."},"containsProfanity":{"type":"boolean","description":"true if the title or body contain words on the profanity list, otherwise false."},"dateCreated":{"type":"string","format":"date-time"},"helpfulCount":{"type":"integer","format":"int32","description":"The number of upvotes a review has received."},"isIncentivized":{"type":"boolean"},"isRecommended":{"type":"boolean"},"media":{"type":"array","items":{"type":"object","properties":{"streamId":{"type":"string","format":"uuid"},"fullSizeUrl":{"type":"string","format":"uri"},"largeUrl":{"type":"string","format":"uri"},"thumbnailUrl":{"type":"string","format":"uri"},"type":{"type":"string","enum":["image","video"]},"isHidden":{"type":"boolean"}},"required":["fullSizeUrl","thumbnailUrl","type","streamId","isHidden"]},"minItems":1},"productAttributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"productName":{"type":"string"},"order":{"type":"object","properties":{"orderId":{"type":"string"},"orderNumber":{"type":"string"}}},"rating":{"type":"integer","format":"int32","minimum":1,"maximum":5,"description":"The number of stars a review has received."},"reply":{"type":"object","properties":{"body":{"type":"string","format":"html","description":"The html representation of the review reply."},"dateCreated":{"type":"string","format":"date-time"},"rawBody":{"type":"string","description":"The reply entered by the user. (Note: can include markdown syntax)."},"isPrivate":{"type":"boolean","description":"true if the reply is unpublished otherwise false."}},"required":["body"]},"reviewer":{"type":"object","properties":{"attributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"avatarUrl":{"type":"string","format":"uri"},"displayName":{"type":"string","description":"The full name entered by the reviewer with the last name truncated."},"email":{"type":"string","format":"email"},"isVerified":{"type":"boolean"},"location":{"type":"object","properties":{"country":{"type":"object","properties":{"code":{"type":"string"},"name":{"type":"string"}}},"zoneCode":{"type":"string"}}},"name":{"type":"string","description":"The full name entered by the reviewer."},"socialConnection":{"type":"string","enum":["facebook","google"]},"verifiedStatus":{"type":"string","enum":["Verified Buyer","Verified Reviewer"],"description":"'Verified Buyer' if the reviewer could be connected to a valid order. 'Verified Reviewer' if the reviewer could not be connected to a valid order but verified their email address."}},"required":["displayName","name"]},"reward":{"type":"object","properties":{"description":{"type":"string"},"integration":{"type":"string"},"type":{"type":"string","enum":["coupon","points","event"]},"value":{"type":"string"},"isCouponUpgrade":{"type":"boolean"}},"required":["type","value"]},"sentiment":{"type":"string","enum":["positive","negative","neutral","mixed"],"description":"The natural language sentiment of the review title and body."},"status":{"type":"string","enum":["approved","pending","rejected"],"description":"The moderation status of the review."},"tags":{"type":"array","items":{"type":"string"},"description":"The names of any tags added to the review."},"title":{"type":"string","description":"The title of the review."},"unhelpfulCount":{"type":"integer","format":"int32","description":"The number of downvotes a review has received."},"variantId":{"type":"string","description":"The id of the reviewed Shopify product variant."},"variantName":{"type":"string","description":"The name of the reviewed Shopify product variant."}},"required":["subscriberId","reviewId","productId","body","dateCreated","rating","reviewer","status","title","unhelpfulCount"]}}}}}},"401":{"description":"Authentication credentials are missing or incorrect."},"404":{"description":"The requested resource could not be found.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}}}}}}}
```

## PUT /reviews/{reviewId}

> Update a Review

```json
{"openapi":"3.0.1","info":{"title":"Okendo Enterprise API","version":"1.2.1"},"tags":[{"name":"reviews"}],"servers":[{"url":"https://api.okendo.io/enterprise"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}}},"paths":{"/reviews/{reviewId}":{"put":{"tags":["reviews"],"summary":"Update a Review","parameters":[{"name":"reviewId","description":"The ID of the Review to update.","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","description":"The moderation status of the review."}},"required":["status"]}}},"required":true},"responses":{"200":{"description":"A Review object","content":{"application/json":{"schema":{"type":"object","properties":{"review":{"type":"object","properties":{"subscriberId":{"type":"string","description":"Your user id within Okendo.","format":"uuid"},"reviewId":{"type":"string","format":"uuid"},"productId":{"type":"string","description":"The product ID prefixed by a platform identifier."},"attributesWithRating":{"type":"array","items":{"type":"object","properties":{"minLabel":{"type":"string","description":"The label for the leading edge of an attribute bar."},"midLabel":{"type":"string","description":"The label for the midpoint of a centered-range attribute bar."},"maxLabel":{"type":"string","description":"The label for the trailing edge of an attribute bar."},"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["centered-range","range"]},"value":{"type":"number","description":"The value selected on the attribute scale. For attribute of type 'range' this is between 1 and 5. For 'centered-range', between -1 and 1."}},"required":["title","type","value"]}},"body":{"type":"string","description":"The content of the review."},"containsProfanity":{"type":"boolean","description":"true if the title or body contain words on the profanity list, otherwise false."},"dateCreated":{"type":"string","format":"date-time"},"helpfulCount":{"type":"integer","format":"int32","description":"The number of upvotes a review has received."},"isIncentivized":{"type":"boolean"},"isRecommended":{"type":"boolean"},"media":{"type":"array","items":{"type":"object","properties":{"streamId":{"type":"string","format":"uuid"},"fullSizeUrl":{"type":"string","format":"uri"},"largeUrl":{"type":"string","format":"uri"},"thumbnailUrl":{"type":"string","format":"uri"},"type":{"type":"string","enum":["image","video"]},"isHidden":{"type":"boolean"}},"required":["fullSizeUrl","thumbnailUrl","type","streamId","isHidden"]},"minItems":1},"productAttributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"productName":{"type":"string"},"order":{"type":"object","properties":{"orderId":{"type":"string"},"orderNumber":{"type":"string"}}},"rating":{"type":"integer","format":"int32","minimum":1,"maximum":5,"description":"The number of stars a review has received."},"reply":{"type":"object","properties":{"body":{"type":"string","format":"html","description":"The html representation of the review reply."},"dateCreated":{"type":"string","format":"date-time"},"rawBody":{"type":"string","description":"The reply entered by the user. (Note: can include markdown syntax)."},"isPrivate":{"type":"boolean","description":"true if the reply is unpublished otherwise false."}},"required":["body"]},"reviewer":{"type":"object","properties":{"attributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"avatarUrl":{"type":"string","format":"uri"},"displayName":{"type":"string","description":"The full name entered by the reviewer with the last name truncated."},"email":{"type":"string","format":"email"},"isVerified":{"type":"boolean"},"location":{"type":"object","properties":{"country":{"type":"object","properties":{"code":{"type":"string"},"name":{"type":"string"}}},"zoneCode":{"type":"string"}}},"name":{"type":"string","description":"The full name entered by the reviewer."},"socialConnection":{"type":"string","enum":["facebook","google"]},"verifiedStatus":{"type":"string","enum":["Verified Buyer","Verified Reviewer"],"description":"'Verified Buyer' if the reviewer could be connected to a valid order. 'Verified Reviewer' if the reviewer could not be connected to a valid order but verified their email address."}},"required":["displayName","name"]},"reward":{"type":"object","properties":{"description":{"type":"string"},"integration":{"type":"string"},"type":{"type":"string","enum":["coupon","points","event"]},"value":{"type":"string"},"isCouponUpgrade":{"type":"boolean"}},"required":["type","value"]},"sentiment":{"type":"string","enum":["positive","negative","neutral","mixed"],"description":"The natural language sentiment of the review title and body."},"status":{"type":"string","enum":["approved","pending","rejected"],"description":"The moderation status of the review."},"tags":{"type":"array","items":{"type":"string"},"description":"The names of any tags added to the review."},"title":{"type":"string","description":"The title of the review."},"unhelpfulCount":{"type":"integer","format":"int32","description":"The number of downvotes a review has received."},"variantId":{"type":"string","description":"The id of the reviewed Shopify product variant."},"variantName":{"type":"string","description":"The name of the reviewed Shopify product variant."}},"required":["subscriberId","reviewId","productId","body","dateCreated","rating","reviewer","status","title","unhelpfulCount"]}}}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}},"401":{"description":"Authentication credentials are missing or incorrect."},"404":{"description":"The requested resource could not be found.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}}}}}}}
```

## POST /reviews/{reviewId}/reply

> Reply to a Review

```json
{"openapi":"3.0.1","info":{"title":"Okendo Enterprise API","version":"1.2.1"},"tags":[{"name":"reviews"}],"servers":[{"url":"https://api.okendo.io/enterprise"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}}},"paths":{"/reviews/{reviewId}/reply":{"post":{"tags":["reviews"],"summary":"Reply to a Review","parameters":[{"name":"reviewId","description":"The ID of the Review to reply to.","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"reply":{"type":"object","properties":{"body":{"type":"string","description":"The message to reply with."},"isPrivate":{"type":"boolean","description":"Whether the reply should be visible to the public."}},"required":["body"]},"shouldEmailReply":{"type":"boolean","description":"Whether the Customer should be notified of the reply via email."}},"required":["reply"]}}},"required":true},"responses":{"200":{"description":"The updated Review with the reply included.","content":{"application/json":{"schema":{"type":"object","properties":{"review":{"type":"object","properties":{"subscriberId":{"type":"string","description":"Your user id within Okendo.","format":"uuid"},"reviewId":{"type":"string","format":"uuid"},"productId":{"type":"string","description":"The product ID prefixed by a platform identifier."},"attributesWithRating":{"type":"array","items":{"type":"object","properties":{"minLabel":{"type":"string","description":"The label for the leading edge of an attribute bar."},"midLabel":{"type":"string","description":"The label for the midpoint of a centered-range attribute bar."},"maxLabel":{"type":"string","description":"The label for the trailing edge of an attribute bar."},"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["centered-range","range"]},"value":{"type":"number","description":"The value selected on the attribute scale. For attribute of type 'range' this is between 1 and 5. For 'centered-range', between -1 and 1."}},"required":["title","type","value"]}},"body":{"type":"string","description":"The content of the review."},"containsProfanity":{"type":"boolean","description":"true if the title or body contain words on the profanity list, otherwise false."},"dateCreated":{"type":"string","format":"date-time"},"helpfulCount":{"type":"integer","format":"int32","description":"The number of upvotes a review has received."},"isIncentivized":{"type":"boolean"},"isRecommended":{"type":"boolean"},"media":{"type":"array","items":{"type":"object","properties":{"streamId":{"type":"string","format":"uuid"},"fullSizeUrl":{"type":"string","format":"uri"},"largeUrl":{"type":"string","format":"uri"},"thumbnailUrl":{"type":"string","format":"uri"},"type":{"type":"string","enum":["image","video"]},"isHidden":{"type":"boolean"}},"required":["fullSizeUrl","thumbnailUrl","type","streamId","isHidden"]},"minItems":1},"productAttributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"productName":{"type":"string"},"order":{"type":"object","properties":{"orderId":{"type":"string"},"orderNumber":{"type":"string"}}},"rating":{"type":"integer","format":"int32","minimum":1,"maximum":5,"description":"The number of stars a review has received."},"reply":{"type":"object","properties":{"body":{"type":"string","format":"html","description":"The html representation of the review reply."},"dateCreated":{"type":"string","format":"date-time"},"rawBody":{"type":"string","description":"The reply entered by the user. (Note: can include markdown syntax)."},"isPrivate":{"type":"boolean","description":"true if the reply is unpublished otherwise false."}},"required":["body"]},"reviewer":{"type":"object","properties":{"attributes":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the attribute."},"type":{"type":"string","enum":["drop-down","multi-value","single-value"]},"value":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"The selected value(s) for the attribute. For types 'drop-down' and 'single-select' this is a single value. For type 'multi-select' it is an array."}},"required":["title","type","value"]}},"avatarUrl":{"type":"string","format":"uri"},"displayName":{"type":"string","description":"The full name entered by the reviewer with the last name truncated."},"email":{"type":"string","format":"email"},"isVerified":{"type":"boolean"},"location":{"type":"object","properties":{"country":{"type":"object","properties":{"code":{"type":"string"},"name":{"type":"string"}}},"zoneCode":{"type":"string"}}},"name":{"type":"string","description":"The full name entered by the reviewer."},"socialConnection":{"type":"string","enum":["facebook","google"]},"verifiedStatus":{"type":"string","enum":["Verified Buyer","Verified Reviewer"],"description":"'Verified Buyer' if the reviewer could be connected to a valid order. 'Verified Reviewer' if the reviewer could not be connected to a valid order but verified their email address."}},"required":["displayName","name"]},"reward":{"type":"object","properties":{"description":{"type":"string"},"integration":{"type":"string"},"type":{"type":"string","enum":["coupon","points","event"]},"value":{"type":"string"},"isCouponUpgrade":{"type":"boolean"}},"required":["type","value"]},"sentiment":{"type":"string","enum":["positive","negative","neutral","mixed"],"description":"The natural language sentiment of the review title and body."},"status":{"type":"string","enum":["approved","pending","rejected"],"description":"The moderation status of the review."},"tags":{"type":"array","items":{"type":"string"},"description":"The names of any tags added to the review."},"title":{"type":"string","description":"The title of the review."},"unhelpfulCount":{"type":"integer","format":"int32","description":"The number of downvotes a review has received."},"variantId":{"type":"string","description":"The id of the reviewed Shopify product variant."},"variantName":{"type":"string","description":"The name of the reviewed Shopify product variant."}},"required":["subscriberId","reviewId","productId","body","dateCreated","rating","reviewer","status","title","unhelpfulCount"]}}}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}},"401":{"description":"Authentication credentials are missing or incorrect."},"404":{"description":"The requested resource could not be found.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}}}}}}}
```

## Groups

## POST /groups

> Create a Shopify backed group and return the group created

```json
{"openapi":"3.0.1","info":{"title":"Okendo Enterprise API","version":"1.2.1"},"tags":[],"servers":[{"url":"https://api.okendo.io/enterprise"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"type":"http","scheme":"basic"}}},"paths":{"/groups":{"post":{"tags":["groups"],"summary":"Create a Shopify backed group and return the group created","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the group.","type":"string"},"isAutoAssignProductsEnabled":{"description":"Indicates if the products in the group are automatically assigned to show reviews from other products within the same group.","type":"boolean"},"shopifyCollectionId":{"type":"string","description":"The ID of Shopify collection that will be used to create the group."}},"required":["name","isAutoAssignProductsEnabled","shopifyCollectionId"]}}},"required":true},"responses":{"200":{"description":"An object containing the group that was just created.","content":{"application/json":{"schema":{"type":"object","properties":{"group":{"type":"object","allOf":[{"type":"object","properties":{"subscriberId":{"type":"string","description":"Your user id within Okendo.","format":"uuid"},"groupId":{"type":"string","description":"The unique group id.","format":"uuid"},"dateCreated":{"description":"The date when the group was created.","format":"date-time","type":"string"},"isAutoAssignProductsEnabled":{"description":"Indicates if the products in the group are automatically assigned to show reviews from other products within the same group.","type":"boolean"},"name":{"description":"The name of the group.","type":"string"}},"required":["subscriberId","groupId","dateCreated","name","type"]}],"properties":{"shopifyCollectionId":{"type":"string","description":"The ID of Shopify collection that will be used to create the group."}},"required":["shopifyCollectionId"]}}}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}},"401":{"description":"Authentication credentials are missing or incorrect."},"409":{"description":"This response is sent when a request conflicts with the current state of the server.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}},"422":{"description":"The request was well-formed but was unable to be followed due to semantic errors.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"description":{"type":"string"}}}}}}}}}}}}}
```
