Skip to main content

Location keywords validation rules for length, content restrictions, and searchability requirements

Keyword​

KeywordsComponentHasUnsupportedCharacter​

DefinitionSeverityAPISampleMode
Validate that keyword does not include an unsupported character
VIOLATION
POST_AND_PUT
Link
S

Keyword Other​

LocationKeywordsOtherListMustNotIncludeNulls​

DefinitionSeverityAPISampleMode
Validate that a list does not include null
VIOLATION
POST_AND_PUT
S

LocationKeywordsOtherMustNotBeEmptyArray​

DefinitionSeverityAPISampleMode
Validate that other is not an empty array
VIOLATION
POST_AND_PUT
S
Example Validation Report
{
"code": "VALIDATION__LocationKeywordsOtherMustNotBeEmptyArray",
"message": "'{{field}}' must be omitted or contain at least one element; empty arrays are not allowed.",
"severity": "VIOLATION",
"context": {
"field": "other"
},
"details": {
"compared": [],
"expected": [],
"submitted": [
{
"field": "$.locationDetails.keywords.other",
"value": "[]"
}
],
"createdDate": "2026-03-03T13:58:43.946Z"
}
}

KeywordsOtherRequiresAtLeastOneSupportedLocale​

DefinitionSeverityAPISampleMode
Validate that at least one (1) supported locale is present
VIOLATION
POST_AND_PUT
Link
S

KeywordsOther_ExpectedLangTagForCountryNotPresent​

Preconditions
structuredAddress is present
DefinitionSeverityAPISampleMode
Validate that at least one (1) primary language tag is present corresponding to a language expected to be spoken in the Country identified by countryCode in structuredAddress
WARNING
POST_AND_PUT
S

KeywordsOther_ExpectedLangTagForDerivedCountryNotPresent​

Preconditions
displayPoint is present
structuredAddress is not present
DefinitionSeverityAPISampleMode
Validate that at least one (1) primary language tag is present corresponding to a language expected to be spoken in the Country derived from reverse geocoding Display Point coordinates
WARNING
POST_AND_PUT
A

KeywordsOther_ExpectedRegionSubtagForCountryNotPresent​

Preconditions
structuredAddress is present
DefinitionSeverityAPISampleMode
Validate that at least one (1) Region Subtag is present that corresponds with countryCode in structuredAddress
INFO
POST_AND_PUT
Link
S

KeywordsOtherIncludesUnsupportedLocale​

DefinitionSeverityAPISampleMode
Validate that an unsupported locale value is not present
WARNING
POST_AND_PUT
S

KeywordsOtherKeywordMustNotBeDummyCharacters​

DefinitionSeverityAPISampleMode
Validate that keyword is not exclusively dummy characters
VIOLATION
POST_AND_PUT
Link
S

KeywordsOtherKeywordMustNotBeEmpty​

DefinitionSeverityAPISampleMode
Validate that keyword is not an empty string
VIOLATION
POST_AND_PUT
S

KeywordsOtherKeywordMustNotExceedMaximum​

DefinitionSeverityAPISampleMode
Validate that keyword length does not exceed a maximum value (255)
VIOLATION
POST_AND_PUT
S

KeywordsOtherLocaleMustBeDistinct​

DefinitionSeverityAPISampleMode
Validate that each locale is distinct
VIOLATION
POST_AND_PUT
S

KeywordsOtherLocaleMustNotBeEmpty​

DefinitionSeverityAPISampleMode
Validate that locale is not an empty string
VIOLATION
POST_AND_PUT
S

KeywordsOtherKeywordMustNotIncludeURL​

DefinitionSeverityAPISampleMode
Validate that keyword does not include a URL
VIOLATION
POST_AND_PUT
Link
S

KeywordsOther_SuspectedUnintentionalSequentialWordRepetition​

DefinitionSeverityAPISampleMode
Validate that keyword does not include an unintentional repetitive sequence of words
WARNING
POST_AND_PUT
S

Keyword Product​

LocationKeywordsProductsListMustNotIncludeNulls​

DefinitionSeverityAPISampleMode
Validate that a list does not include null
VIOLATION
POST_AND_PUT
S

LocationKeywordsProductsMustNotBeEmptyArray​

DefinitionSeverityAPISampleMode
Validate that products is not an empty array
VIOLATION
POST_AND_PUT
S
Example Validation Report
{
"code": "VALIDATION__LocationKeywordsProductsMustNotBeEmptyArray",
"message": "'{{field}}' must be omitted or contain at least one element; empty arrays are not allowed.",
"severity": "VIOLATION",
"context": {
"field": "products"
},
"details": {
"compared": [],
"expected": [],
"submitted": [
{
"field": "$.locationDetails.keywords.products",
"value": "[]"
}
],
"createdDate": "2026-03-03T13:58:43.946Z"
}
}

KeywordsProductsRequiresAtLeastOneSupportedLocale​

DefinitionSeverityAPISampleMode
Validate that at least one (1) supported locale is present
VIOLATION
POST_AND_PUT
S

KeywordsProducts_ExpectedLangTagForCountryNotPresent​

Preconditions
structuredAddress is present
DefinitionSeverityAPISampleMode
Validate that at least one (1) primary language tag is present corresponding to a language expected to be spoken in the Country identified by countryCode in structuredAddress
WARNING
POST_AND_PUT
S

KeywordsProducts_ExpectedLangTagForDerivedCountryNotPresent​

Preconditions
displayPoint is present
structuredAddress is not present
DefinitionSeverityAPISampleMode
Validate that at least one (1) primary language tag is present corresponding to a language expected to be spoken in the Country derived from reverse geocoding Display Point coordinates
WARNING
POST_AND_PUT
A

KeywordsProducts_ExpectedRegionSubtagForCountryNotPresent​

Preconditions
structuredAddress is present
DefinitionSeverityAPISampleMode
Validate that at least one (1) Region Subtag is present that corresponds with countryCode in structuredAddress
INFO
POST_AND_PUT
Link
S

KeywordsProductsIncludesUnsupportedLocale​

DefinitionSeverityAPISampleMode
Validate that an unsupported locale value is not present
WARNING
POST_AND_PUT
S

KeywordsProductsKeywordMustNotBeDummyCharacters​

DefinitionSeverityAPISampleMode
Validate that keyword is not exclusively dummy characters
VIOLATION
POST_AND_PUT
Link
S

KeywordsProductsKeywordMustNotBeEmpty​

DefinitionSeverityAPISampleMode
Validate that keyword is not an empty string
VIOLATION
POST_AND_PUT
S

KeywordsProductsKeywordMustNotIncludeURL​

DefinitionSeverityAPISampleMode
Validate that keyword does not include a URL
VIOLATION
POST_AND_PUT
Link
S

KeywordsProductsKeywordMustNotExceedMaximum​

DefinitionSeverityAPISampleMode
Validate that keyword length does not exceed a maximum value (255)
VIOLATION
POST_AND_PUT
S

KeywordsProductsLocaleMustNotBeEmpty​

DefinitionSeverityAPISampleMode
Validate that locale is not an empty string
VIOLATION
POST_AND_PUT
S

KeywordsProductsLocaleMustBeDistinct​

DefinitionSeverityAPISampleMode
Validate that each locale is distinct
VIOLATION
POST_AND_PUT
S

KeywordsProductsKeywordHasSuspectedUnintentionalSequentialWordRepetition​

DefinitionSeverityAPISampleMode
Validate that keyword does not include an unintentional repetitive sequence of words
WARNING
POST_AND_PUT
Link
S

Keyword Service​

LocationKeywordsServicesListMustNotIncludeNulls​

DefinitionSeverityAPISampleMode
Validate that a list does not include null
VIOLATION
POST_AND_PUT
S

LocationKeywordsServicesMustNotBeEmptyArray​

DefinitionSeverityAPISampleMode
Validate that services is not an empty array
VIOLATION
POST_AND_PUT
S
Example Validation Report
{
"code": "VALIDATION__LocationKeywordsServicesMustNotBeEmptyArray",
"message": "'{{field}}' must be omitted or contain at least one element; empty arrays are not allowed.",
"severity": "VIOLATION",
"context": {
"field": "services"
},
"details": {
"compared": [],
"expected": [],
"submitted": [
{
"field": "$.locationDetails.keywords.services",
"value": "[]"
}
],
"createdDate": "2026-03-03T13:58:43.946Z"
}
}

KeywordsServicesRequiresAtLeastOneSupportedLocale​

DefinitionSeverityAPISampleMode
Validate that at least one (1) supported locale is present
VIOLATION
POST_AND_PUT
S

KeywordsServices_ExpectedLangTagForCountryNotPresent​

Preconditions
structuredAddress is present
DefinitionSeverityAPISampleMode
Validate that at least one (1) primary language tag is present corresponding to a language expected to be spoken in the Country identified by countryCode in structuredAddress
WARNING
POST_AND_PUT
S

KeywordsProducts_ExpectedRegionSubtagForDerivedCountryNotPresent​

Preconditions
displayPoint is present
mainAddress is not present
DefinitionSeverityAPISampleMode
Validate that at least one (1) Region Subtag is present that corresponds with a country derived from displayPoint
INFO
POST_AND_PUT
A

KeywordsServices_ExpectedLangTagForDerivedCountryNotPresent​

Preconditions
displayPoint is present
structuredAddress is not present
DefinitionSeverityAPISampleMode
Validate that at least one (1) primary language tag is present corresponding to a language expected to be spoken in the Country derived from reverse geocoding Display Point coordinates
WARNING
POST_AND_PUT
A

KeywordsServices_ExpectedRegionSubtagForCountryNotPresent​

Preconditions
structuredAddress is present
DefinitionSeverityAPISampleMode
Validate that at least one (1) Region Subtag is present that corresponds with countryCode in structuredAddress
INFO
POST_AND_PUT
Link
S

KeywordsServices_ExpectedRegionSubtagForDerivedCountryNotPresent​

Preconditions
displayPoint is present
mainAddress is not present
DefinitionSeverityAPISampleMode
Validate that at least one (1) Region Subtag is present that corresponds with a country derived from displayPoint
INFO
POST_AND_PUT
A

KeywordsOther_ExpectedRegionSubtagForDerivedCountryNotPresent​

Preconditions
displayPoint is present
mainAddress is not present
DefinitionSeverityAPISampleMode
Validate that at least one (1) Region Subtag is present that corresponds with a country derived from displayPoint
INFO
POST_AND_PUT
A

KeywordsServicesIncludesUnsupportedLocale​

DefinitionSeverityAPISampleMode
Validate that an unsupported locale value is not present
WARNING
POST_AND_PUT
S

KeywordsServicesKeywordMustNotBeEmpty​

DefinitionSeverityAPISampleMode
Validate that keyword is not an empty string
VIOLATION
POST_AND_PUT
Link
S

KeywordsServicesLocaleMustBeDistinct​

DefinitionSeverityAPISampleMode
Validate that each locale is distinct
VIOLATION
POST_AND_PUT
S

KeywordsServicesKeywordMustNotBeDummyCharacters​

DefinitionSeverityAPISampleMode
Validate that keyword is not exclusively dummy characters
VIOLATION
POST_AND_PUT
Link
S

KeywordsServicesKeywordMustNotIncludeURL​

DefinitionSeverityAPISampleMode
Validate that keyword does not include a URL
VIOLATION
POST_AND_PUT
Link
S

KeywordsServicesKeywordMustNotExceedMaximum​

DefinitionSeverityAPISampleMode
Validate that keyword length does not exceed a maximum value (255)
VIOLATION
POST_AND_PUT
Link
S

KeywordsServicesLocaleMustNotBeEmpty​

DefinitionSeverityAPISampleMode
Validate that locale is not an empty string
VIOLATION
POST_AND_PUT
S

KeywordsServicesKeywordHasSuspectedUnintentionalSequentialWordRepetition​

DefinitionSeverityAPISampleMode
Validate that keyword does not include an unintentional repetitive sequence of words
WARNING
POST_AND_PUT
S

KeywordValueDuplicatedAcrossLists​

DefinitionSeverityAPISampleMode
Validate that no keyword value is duplicated across different lists
VIOLATION
POST_AND_PUT
Link
S

KeywordsOtherLocaleMustBeValid​

DefinitionSeverityAPISampleMode
Validate that locale is valid
VIOLATION
POST_AND_PUT
Link
S

KeywordsProductsLocaleMustBeValid​

DefinitionSeverityAPISampleMode
Validate that locale is valid
VIOLATION
POST_AND_PUT
Link
S

KeywordsServicesLocaleMustBeValid​

DefinitionSeverityAPISampleMode
Validate that locale is valid
VIOLATION
POST_AND_PUT
Link
S

SuspiciousRemovalOfKeywords​

DefinitionSeverityAPISampleMode
Validate that locationKeywords is present when previously submitted
WARNING
PUT
S

Vulgar Text​

KeywordsOtherMustNotIncludeVulgarWord​

DefinitionSeverityAPISampleMode
Validate that keyword does not include a vulgar word
VIOLATION
POST_AND_PUT
A

KeywordsProductsMustNotIncludeVulgarWord​

DefinitionSeverityAPISampleMode
Validate that keyword does not include a vulgar word
VIOLATION
POST_AND_PUT
A

KeywordsServicesMustNotIncludeVulgarWord​

DefinitionSeverityAPISampleMode
Validate that keyword does not include a vulgar word
VIOLATION
POST_AND_PUT
A