Contains information defining a custom attribute. Custom attributes are intended to store additional information about a catalog object or to associate a catalog object with an entity in another system. Do not use custom attributes to store any sensitive information (personally identifiable information, card details, etc.). Read more about custom attributes
CatalogCustomAttributeDefinition
Name | Type | Tags | Description | Getter | Setter |
---|---|---|---|---|---|
type |
string(CatalogCustomAttributeDefinitionType) |
Required | Defines the possible types for a custom attribute. | getType(): string | setType(string type): void |
name |
string |
Required | The name of this definition for API and seller-facing UI purposes. The name must be unique within the (merchant, application) pair. Required. May not be empty and may not exceed 255 characters. Can be modified after creation. Constraints: Minimum Length: 1 , Maximum Length: 255 |
getName(): string | setName(string name): void |
description |
?string |
Optional | Seller-oriented description of the meaning of this Custom Attribute, any constraints that the seller should observe, etc. May be displayed as a tooltip in Square UIs. Constraints: Maximum Length: 255 |
getDescription(): ?string | setDescription(?string description): void |
sourceApplication |
?SourceApplication |
Optional | Represents information about the application used to generate a change. | getSourceApplication(): ?SourceApplication | setSourceApplication(?SourceApplication sourceApplication): void |
allowedObjectTypes |
string(CatalogObjectType)[] |
Required | The set of CatalogObject types that this custom atttribute may be applied to.Currently, only ITEM , ITEM_VARIATION , MODIFIER , MODIFIER_LIST , and CATEGORY are allowed. At least one type must be included.See CatalogObjectType for possible values |
getAllowedObjectTypes(): array | setAllowedObjectTypes(array allowedObjectTypes): void |
sellerVisibility |
?string(CatalogCustomAttributeDefinitionSellerVisibility) |
Optional | Defines the visibility of a custom attribute to sellers in Square client applications, Square APIs or in Square UIs (including Square Point of Sale applications and Square Dashboard). |
getSellerVisibility(): ?string | setSellerVisibility(?string sellerVisibility): void |
appVisibility |
?string(CatalogCustomAttributeDefinitionAppVisibility) |
Optional | Defines the visibility of a custom attribute to applications other than their creating application. |
getAppVisibility(): ?string | setAppVisibility(?string appVisibility): void |
stringConfig |
?CatalogCustomAttributeDefinitionStringConfig |
Optional | Configuration associated with Custom Attribute Definitions of type STRING . |
getStringConfig(): ?CatalogCustomAttributeDefinitionStringConfig | setStringConfig(?CatalogCustomAttributeDefinitionStringConfig stringConfig): void |
numberConfig |
?CatalogCustomAttributeDefinitionNumberConfig |
Optional | - | getNumberConfig(): ?CatalogCustomAttributeDefinitionNumberConfig | setNumberConfig(?CatalogCustomAttributeDefinitionNumberConfig numberConfig): void |
selectionConfig |
?CatalogCustomAttributeDefinitionSelectionConfig |
Optional | Configuration associated with SELECTION -type custom attribute definitions. |
getSelectionConfig(): ?CatalogCustomAttributeDefinitionSelectionConfig | setSelectionConfig(?CatalogCustomAttributeDefinitionSelectionConfig selectionConfig): void |
customAttributeUsageCount |
?int |
Optional | The number of custom attributes that reference this custom attribute definition. Set by the server in response to a ListCatalog request with include_counts set to true . If the actual count is greaterthan 100, custom_attribute_usage_count will be set to 100 . |
getCustomAttributeUsageCount(): ?int | setCustomAttributeUsageCount(?int customAttributeUsageCount): void |
key |
?string |
Optional | The name of the desired custom attribute key that can be used to access the custom attribute value on catalog objects. Cannot be modified after the custom attribute definition has been created. Must be between 1 and 60 characters, and may only contain the characters [a-zA-Z0-9_-] .Constraints: Minimum Length: 1 , Maximum Length: 60 , Pattern: ^[a-zA-Z0-9_-]*$ |
getKey(): ?string | setKey(?string key): void |
{
"type": "STRING",
"name": "name0",
"description": "description0",
"source_application": {
"product": "BILLING",
"application_id": "application_id8",
"name": "name2"
},
"allowed_object_types": [
"CATEGORY",
"IMAGE"
],
"seller_visibility": "SELLER_VISIBILITY_HIDDEN",
"app_visibility": "APP_VISIBILITY_HIDDEN",
"string_config": {
"enforce_uniqueness": false
}
}