Review content validation rules for text quality, length limits, and content restrictions
Name
NameMustNotBeDummyCharacters
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that name is not dummy characters | Link |
Example Validation Report
{
"code": "VALIDATION__NameMustNotBeDummyCharacters",
"message": "'{{field}}' value must not be dummy characters",
"severity": "VIOLATION",
"context": {
"field": "name"
},
"details": {
"createdDate": "2026-09-01T21:00:59.865Z",
"submitted": [
{
"field": "$.reviewDetails.review.name",
"value": "0"
}
],
"compared": [],
"expected": []
}
}
NameMustNotBeEmpty
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that name is not an empty string |
Example Validation Report
{
"code": "VALIDATION__NameMustNotBeEmpty",
"severity": "VIOLATION",
"message": "'name' must not be empty string"
}
NameIsEntirelyNumeric
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that name is not entirely numeric |
NameMustNotIncludeURL
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that name does not include a URL | Link |
Example Validation Report
{
"code": "VALIDATION__NameMustNotIncludeURL",
"severity": "VIOLATION",
"message": "'{{field}}' value must not include URL",
"context": {
"field": "name"
},
"details": {
"createdDate": "2026-06-10T11:36:02.00Z",
"submitted": [
{
"field": "$.reviewDetails.review.name",
"value": "Check this out! https://www.example.com"
}
],
"compared": [],
"expected": []
}
}
NameMustNotExceedMaximum
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that name length does not exceed a maximum value (255) |
NameMustNotIncludeVulgarWord
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that name does not include a vulgar word |
Example Validation Report
{
"code": "VALIDATION__NameMustNotIncludeVulgarWord",
"severity": "VIOLATION",
"message": "'name' includes localized or universally vulgar words: '{{vulgarWords}}'",
"context": {
"vulgarWords": ["xxxx"]
}
}
Review Body
ReviewBodyMustBePresent
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that reviewBody is present | Link |
ReviewBodyMustNotBeDummyCharacters
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that reviewBody is not dummy characters | Link |
Example Validation Report
{
"code": "VALIDATION__ReviewBodyMustNotBeDummyCharacters",
"message": "'{{field}}' value must not be dummy characters",
"severity": "VIOLATION",
"context": {
"field": "reviewBody"
},
"details": {
"createdDate": "2026-09-01T21:00:59.865Z",
"submitted": [
{
"field": "$.reviewDetails.review.reviewBody",
"value": "0"
}
],
"compared": [],
"expected": []
}
}
ReviewBodyMustNotBeEmpty
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that reviewBody is not an empty string |
Example Validation Report
{
"code": "VALIDATION__ReviewBodyMustNotBeEmpty",
"severity": "VIOLATION",
"message": "'{{field}}' must not be empty string",
"context": {
"field": "reviewBody"
}
}
ReviewBodyMustNotBeEntirelyNumeric
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that the reviewBody is not entirely numeric |
ReviewBodyMustNotIncludeURL
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that reviewBody does not include a URL | Link |
Example Validation Report
{
"code": "VALIDATION__ReviewBodyMustNotIncludeURL",
"severity": "VIOLATION",
"message": "'{{field}}' value must not include URL",
"context": {
"field": "reviewBody"
},
"details": {
"createdDate": "2026-06-10T11:36:02.00Z",
"submitted": [
{
"field": "$.reviewDetails.review.reviewBody",
"value": "View the full review at https://www.example.com"
}
],
"compared": [],
"expected": []
}
}
ReviewBodyMustNotExceedMaximum
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that reviewBody length does not exceed a maximum value (20,000) |
ReviewBodyMustNotIncludeVulgarWord
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that reviewBody does not include a vulgar word |
Example Validation Report
{
"code": "VALIDATION__ReviewBodyMustNotIncludeVulgarWord",
"severity": "VIOLATION",
"message": "'reviewBody' includes localized or universally vulgar words: '{{vulgarWords}}'",
"context": {
"vulgarWords": ["xxxx"]
}
}
ReviewBodyDuplicatesName
| Preconditions |
|---|
name is present |
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that the reviewBody is not a duplicate of name | Link |
Locale
LocaleMustBePresent
| Preconditions |
|---|
name is present |
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that locale is present |
LocaleNotSupported
| Preconditions |
|---|
| Primary language tag is valid |
| Region subtag is valid |
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that a locale is supported |
Example Validation Report
{
"code": "VALIDATION__LocaleNotSupported",
"severity": "VIOLATION",
"message": "No supported '{{locale}}' is present",
"context": {
"locale": "en-BE"
},
"details": {
"createdDate": "2026-09-01T21:00:59.865Z",
"submitted": [
{
"field": "$.reviewDetails.review.locale",
"value": "en-BE"
}
],
"compared": [],
"expected": []
}
}
LocaleMustNotBeEmpty
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that locale is not an empty string |
LangTagMustBeValidISO639Code
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
| Validate that the primary language tag is a valid, supported ISO 639 code |
Example Validation Report
{
"code": "VALIDATION__LangTagMustBeValidISO639Code",
"severity": "VIOLATION",
"message": "Primary language tag component of '{{value}}' in 'locale' is invalid or not supported",
"context": {
"value": "eng"
},
"details": {
"createdDate": "2026-09-01T21:00:59.865Z",
"submitted": [
{
"field": "$.reviewDetails.review.locale",
"value": "eng"
}
],
"compared": [],
"expected": []
}
}
RegionMustBeValidISO3166Code
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
| Validate that a region subtag is a valid, supported ISO 3166-1 code |
Example Validation Report
{
"code": "VALIDATION__RegionMustBeValidISO3166Code",
"severity": "VIOLATION",
"message": "Region subtag component of '{{value}}' in 'locale' is invalid or not supported",
"context": {
"value": "en-001"
},
"details": {
"createdDate": "2026-09-01T21:00:59.865Z",
"submitted": [
{
"field": "$.reviewDetails.review.locale",
"value": "eng-001"
}
],
"compared": [],
"expected": []
}
}
ScriptMustBeValidISO15924Code
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
| Validate that the script subtag is a valid, supported ISO 15924 code |
Example Validation Report
{
"code": "VALIDATION__ScriptMustBeValidISO15924Code",
"severity": "VIOLATION",
"message": "Script subtag component of '{{value}}' in 'locale' is invalid or not supported",
"context": {
"value": "ar-Arab-AE"
},
"details": {
"createdDate": "2026-09-01T21:00:59.865Z",
"submitted": [
{
"field": "$.reviewDetails.review.locale",
"value": "ar-Arab-AE"
}
],
"compared": [],
"expected": []
}
}
Unsupported Characters
ReviewNameHasUnsupportedCharacter
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that name does not include an unsupported character | Link |
ReviewBodyHasUnsupportedCharacter
| Definition | Severity | API | Sample | Mode |
|---|---|---|---|---|
Validate that reviewBody does not include an unsupported character | Link |