openapi: 3.0.0 info: version: '2.0' title: Square ApplePay Catalog API description: 'Supercharge Square for sellers of every size. Our entire connected commerce platform from elegant hardware to a rich suite of Square APIs is yours to build with. Whether youre developing an app or composing a bespoke solution, this is the place to make it happen. ' termsOfService: https://connect.squareup.com/tos contact: name: Square Developer Platform email: developers@squareup.com url: https://squareup.com/developers license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html externalDocs: description: 'Read the official documentation here:' url: https://docs.connect.squareup.com/ x-server-configuration: default-environment: production default-server: default environments: - name: production servers: - name: default url: https://connect.squareup.com - name: sandbox servers: - name: default url: https://connect.squareupsandbox.com - name: custom servers: - name: default url: '{custom_url}' parameters: - name: custom_url description: Sets the base URL requests are made to. Defaults to `https://connect.squareup.com` type: string example: https://connect.squareup.com x-square-generic-error-codes: - ACCESS_TOKEN_EXPIRED - ACCESS_TOKEN_REVOKED - API_VERSION_INCOMPATIBLE - APPLICATION_DISABLED - ARRAY_EMPTY - ARRAY_LENGTH_TOO_LONG - ARRAY_LENGTH_TOO_SHORT - BAD_CERTIFICATE - BAD_GATEWAY - BAD_REQUEST - CONFLICT - CONFLICTING_PARAMETERS - CURRENCY_MISMATCH - EXPECTED_ARRAY - EXPECTED_BASE64_ENCODED_BYTE_ARRAY - EXPECTED_BOOLEAN - EXPECTED_FLOAT - EXPECTED_INTEGER - EXPECTED_JSON_BODY - EXPECTED_MAP - EXPECTED_OBJECT - EXPECTED_STRING - FORBIDDEN - GATEWAY_TIMEOUT - GONE - IDEMPOTENCY_KEY_REUSED - INCORRECT_TYPE - INSUFFICIENT_SCOPES - INTERNAL_SERVER_ERROR - INVALID_ARRAY_VALUE - INVALID_CONTENT_TYPE - INVALID_CURSOR - INVALID_ENUM_VALUE - INVALID_FORM_VALUE - INVALID_SORT_ORDER - INVALID_SQUARE_VERSION_FORMAT - INVALID_TIME - INVALID_TIME_RANGE - INVALID_VALUE - LOCATION_MISMATCH - MAP_KEY_LENGTH_TOO_LONG - MAP_KEY_LENGTH_TOO_SHORT - MERCHANT_SUBSCRIPTION_NOT_FOUND - METHOD_NOT_ALLOWED - MISSING_REQUIRED_PARAMETER - NOT_ACCEPTABLE - NOT_FOUND - NOT_IMPLEMENTED - NO_FIELDS_SET - RATE_LIMITED - REQUEST_ENTITY_TOO_LARGE - REQUEST_TIMEOUT - SANDBOX_NOT_SUPPORTED - SERVICE_UNAVAILABLE - TOO_MANY_MAP_ENTRIES - UNAUTHORIZED - UNEXPECTED_VALUE - UNKNOWN_BODY_PARAMETER - UNKNOWN_QUERY_PARAMETER - UNPROCESSABLE_ENTITY - UNSUPPORTED_MEDIA_TYPE - V1_ACCESS_TOKEN - V1_APPLICATION - VALUE_EMPTY - VALUE_REGEX_MISMATCH - VALUE_TOO_HIGH - VALUE_TOO_LONG - VALUE_TOO_LOW - VALUE_TOO_SHORT servers: - url: https://connect.squareup.com variables: {} tags: - name: Catalog paths: /v2/catalog/batch-delete: post: tags: - Catalog summary: Square Batch Delete Catalog Objects operationId: BatchDeleteCatalogObjects x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Deletes a set of [CatalogItem](entity:CatalogItem)s based on the provided list of target IDs and returns a set of successfully deleted IDs in the response. Deletion is a cascading event such that all children of the targeted object are also deleted. For example, deleting a CatalogItem will also delete all of its [CatalogItemVariation](entity:CatalogItemVariation) children. `BatchDeleteCatalogObjects` succeeds even if only a portion of the targeted IDs can be deleted. The response will only include IDs that were actually deleted. To ensure consistency, only one delete request is processed at a time per seller account. While one (batch or non-batch) delete request is being processed, other (batched and non-batched) delete requests are rejected with the `429` error code.' x-release-status: PUBLIC security: - oauth2: - ITEMS_WRITE parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/BatchDeleteCatalogObjectsRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/BatchDeleteCatalogObjectsResponse' /v2/catalog/batch-retrieve: post: tags: - Catalog summary: Square Batch Retrieve Catalog Objects operationId: BatchRetrieveCatalogObjects x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Returns a set of objects based on the provided ID. Each [CatalogItem](entity:CatalogItem) returned in the set includes all of its child information including: all of its [CatalogItemVariation](entity:CatalogItemVariation) objects, references to its [CatalogModifierList](entity:CatalogModifierList) objects, and the ids of any [CatalogTax](entity:CatalogTax) objects that apply to it.' x-release-status: PUBLIC security: - oauth2: - ITEMS_READ parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/BatchRetrieveCatalogObjectsRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/BatchRetrieveCatalogObjectsResponse' /v2/catalog/batch-upsert: post: tags: - Catalog summary: Square Batch Upsert Catalog Objects operationId: BatchUpsertCatalogObjects x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Creates or updates up to 10,000 target objects based on the provided list of objects. The target objects are grouped into batches and each batch is inserted/updated in an all-or-nothing manner. If an object within a batch is malformed in some way, or violates a database constraint, the entire batch containing that item will be disregarded. However, other batches in the same request may still succeed. Each batch may contain up to 1,000 objects, and batches will be processed in order as long as the total object count for the request (items, variations, modifier lists, discounts, and taxes) is no more than 10,000. To ensure consistency, only one update request is processed at a time per seller account. While one (batch or non-batch) update request is being processed, other (batched and non-batched) update requests are rejected with the `429` error code.' x-release-status: PUBLIC security: - oauth2: - ITEMS_WRITE parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/BatchUpsertCatalogObjectsRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/BatchUpsertCatalogObjectsResponse' x-endpoint-errors: - error-code: GENERIC_DECLINE /v2/catalog/images: post: tags: - Catalog summary: Square Create Catalog Image operationId: CreateCatalogImage x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Uploads an image file to be represented by a [CatalogImage](entity:CatalogImage) object that can be linked to an existing [CatalogObject](entity:CatalogObject) instance. The resulting `CatalogImage` is unattached to any `CatalogObject` if the `object_id` is not specified. This `CreateCatalogImage` endpoint accepts HTTP multipart/form-data requests with a JSON part and an image file part in JPEG, PJPEG, PNG, or GIF format. The maximum file size is 15MB.' x-release-status: PUBLIC security: - oauth2: - ITEMS_WRITE parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: multipart/form-data: schema: type: object properties: request: $ref: '#/components/schemas/CreateCatalogImageRequest' image_file: type: string format: binary encoding: image_file: contentType: image/jpeg request: contentType: application/json; charset=utf-8 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/CreateCatalogImageResponse' x-endpoint-errors: - error-code: GENERIC_DECLINE /v2/catalog/images/{image_id}: put: tags: - Catalog summary: Square Update Catalog Image operationId: UpdateCatalogImage x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Uploads a new image file to replace the existing one in the specified [CatalogImage](entity:CatalogImage) object. This `UpdateCatalogImage` endpoint accepts HTTP multipart/form-data requests with a JSON part and an image file part in JPEG, PJPEG, PNG, or GIF format. The maximum file size is 15MB.' x-release-status: BETA security: - oauth2: - ITEMS_WRITE parameters: - name: image_id description: The ID of the `CatalogImage` object to update the encapsulated image file. schema: type: string in: path required: true requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: multipart/form-data: schema: type: object properties: request: $ref: '#/components/schemas/UpdateCatalogImageRequest' image_file: type: string format: binary encoding: image_file: contentType: image/jpeg request: contentType: application/json; charset=utf-8 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/UpdateCatalogImageResponse' /v2/catalog/info: get: tags: - Catalog summary: Square Catalog Info operationId: CatalogInfo x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Retrieves information about the Square Catalog API, such as batch size limits that can be used by the `BatchUpsertCatalogObjects` endpoint.' x-release-status: PUBLIC security: - oauth2: - ITEMS_READ parameters: [] responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/CatalogInfoResponse' /v2/catalog/list: get: tags: - Catalog summary: Square List Catalog operationId: ListCatalog x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Returns a list of all [CatalogObject](entity:CatalogObject)s of the specified types in the catalog. The `types` parameter is specified as a comma-separated list of the [CatalogObjectType](entity:CatalogObjectType) values, for example, "`ITEM`, `ITEM_VARIATION`, `MODIFIER`, `MODIFIER_LIST`, `CATEGORY`, `DISCOUNT`, `TAX`, `IMAGE`". __Important:__ ListCatalog does not return deleted catalog items. To retrieve deleted catalog items, use [SearchCatalogObjects](api-endpoint:Catalog-SearchCatalogObjects) and set the `include_deleted_objects` attribute value to `true`.' x-release-status: PUBLIC security: - oauth2: - ITEMS_READ parameters: - name: cursor description: 'The pagination cursor returned in the previous response. Leave unset for an initial request. The page size is currently set to be 100. See [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination) for more information.' schema: type: string in: query required: false - name: types description: "An optional case-insensitive, comma-separated list of object types to retrieve.\n\nThe valid values are defined in the [CatalogObjectType](entity:CatalogObjectType) enum, for example,\n`ITEM`, `ITEM_VARIATION`, `CATEGORY`, `DISCOUNT`, `TAX`,\n`MODIFIER`, `MODIFIER_LIST`, `IMAGE`, etc.\n\nIf this is unspecified, the operation returns objects of all the top level types at the version\nof the Square API used to make the request. Object types that are nested onto other object types\nare not included in the defaults.\n\nAt the current API version the default object types are:\nITEM, CATEGORY, TAX, DISCOUNT, MODIFIER_LIST, \nPRICING_RULE, PRODUCT_SET, TIME_PERIOD, MEASUREMENT_UNIT,\nSUBSCRIPTION_PLAN, ITEM_OPTION, CUSTOM_ATTRIBUTE_DEFINITION, QUICK_AMOUNT_SETTINGS." schema: type: string in: query required: false - name: catalog_version description: 'The specific version of the catalog objects to be included in the response. This allows you to retrieve historical versions of objects. The specified version value is matched against the [CatalogObject](entity:CatalogObject)s'' `version` attribute. If not included, results will be from the current version of the catalog.' schema: type: integer format: int64 in: query required: false responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ListCatalogResponse' /v2/catalog/object: post: tags: - Catalog summary: Square Upsert Catalog Object operationId: UpsertCatalogObject x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Creates a new or updates the specified [CatalogObject](entity:CatalogObject). To ensure consistency, only one update request is processed at a time per seller account. While one (batch or non-batch) update request is being processed, other (batched and non-batched) update requests are rejected with the `429` error code.' x-release-status: PUBLIC security: - oauth2: - ITEMS_WRITE parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/UpsertCatalogObjectRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/UpsertCatalogObjectResponse' x-endpoint-errors: - error-code: GENERIC_DECLINE - error-code: INVALID_LOCATION /v2/catalog/object/{object_id}: delete: tags: - Catalog summary: Square Delete Catalog Object operationId: DeleteCatalogObject x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Deletes a single [CatalogObject](entity:CatalogObject) based on the provided ID and returns the set of successfully deleted IDs in the response. Deletion is a cascading event such that all children of the targeted object are also deleted. For example, deleting a [CatalogItem](entity:CatalogItem) will also delete all of its [CatalogItemVariation](entity:CatalogItemVariation) children. To ensure consistency, only one delete request is processed at a time per seller account. While one (batch or non-batch) delete request is being processed, other (batched and non-batched) delete requests are rejected with the `429` error code.' x-release-status: PUBLIC security: - oauth2: - ITEMS_WRITE parameters: - name: object_id description: 'The ID of the catalog object to be deleted. When an object is deleted, other objects in the graph that depend on that object will be deleted as well (for example, deleting a catalog item will delete its catalog item variations).' schema: type: string in: path required: true responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/DeleteCatalogObjectResponse' get: tags: - Catalog summary: Square Retrieve Catalog Object operationId: RetrieveCatalogObject x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Returns a single [CatalogItem](entity:CatalogItem) as a [CatalogObject](entity:CatalogObject) based on the provided ID. The returned object includes all of the relevant [CatalogItem](entity:CatalogItem) information including: [CatalogItemVariation](entity:CatalogItemVariation) children, references to its [CatalogModifierList](entity:CatalogModifierList) objects, and the ids of any [CatalogTax](entity:CatalogTax) objects that apply to it.' x-release-status: PUBLIC security: - oauth2: - ITEMS_READ parameters: - name: object_id description: The object ID of any type of catalog objects to be retrieved. schema: type: string in: path required: true - name: include_related_objects description: 'If `true`, the response will include additional objects that are related to the requested objects. Related objects are defined as any objects referenced by ID by the results in the `objects` field of the response. These objects are put in the `related_objects` field. Setting this to `true` is helpful when the objects are needed for immediate display to a user. This process only goes one level deep. Objects referenced by the related objects will not be included. For example, if the `objects` field of the response contains a CatalogItem, its associated CatalogCategory objects, CatalogTax objects, CatalogImage objects and CatalogModifierLists will be returned in the `related_objects` field of the response. If the `objects` field of the response contains a CatalogItemVariation, its parent CatalogItem will be returned in the `related_objects` field of the response. Default value: `false`' schema: type: boolean default: false in: query required: false - name: catalog_version description: 'Requests objects as of a specific version of the catalog. This allows you to retrieve historical versions of objects. The value to retrieve a specific version of an object can be found in the version field of [CatalogObject](entity:CatalogObject)s. If not included, results will be from the current version of the catalog.' schema: type: integer format: int64 in: query required: false - name: include_category_path_to_root description: 'Specifies whether or not to include the `path_to_root` list for each returned category instance. The `path_to_root` list consists of `CategoryPathToRootNode` objects and specifies the path that starts with the immediate parent category of the returned category and ends with its root category. If the returned category is a top-level category, the `path_to_root` list is empty and is not returned in the response payload.' schema: type: boolean default: false in: query required: false responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/RetrieveCatalogObjectResponse' /v2/catalog/search: post: tags: - Catalog summary: Square Search Catalog Objects operationId: SearchCatalogObjects x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Searches for [CatalogObject](entity:CatalogObject) of any type by matching supported search attribute values, excluding custom attribute values on items or item variations, against one or more of the specified query filters. This (`SearchCatalogObjects`) endpoint differs from the [SearchCatalogItems](api-endpoint:Catalog-SearchCatalogItems) endpoint in the following aspects: - `SearchCatalogItems` can only search for items or item variations, whereas `SearchCatalogObjects` can search for any type of catalog objects. - `SearchCatalogItems` supports the custom attribute query filters to return items or item variations that contain custom attribute values, where `SearchCatalogObjects` does not. - `SearchCatalogItems` does not support the `include_deleted_objects` filter to search for deleted items or item variations, whereas `SearchCatalogObjects` does. - The both endpoints have different call conventions, including the query filter formats.' x-release-status: PUBLIC security: - oauth2: - ITEMS_READ parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/SearchCatalogObjectsRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SearchCatalogObjectsResponse' /v2/catalog/search-catalog-items: post: tags: - Catalog summary: Square Search Catalog Items operationId: SearchCatalogItems x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Searches for catalog items or item variations by matching supported search attribute values, including custom attribute values, against one or more of the specified query filters. This (`SearchCatalogItems`) endpoint differs from the [SearchCatalogObjects](api-endpoint:Catalog-SearchCatalogObjects) endpoint in the following aspects: - `SearchCatalogItems` can only search for items or item variations, whereas `SearchCatalogObjects` can search for any type of catalog objects. - `SearchCatalogItems` supports the custom attribute query filters to return items or item variations that contain custom attribute values, where `SearchCatalogObjects` does not. - `SearchCatalogItems` does not support the `include_deleted_objects` filter to search for deleted items or item variations, whereas `SearchCatalogObjects` does. - The both endpoints use different call conventions, including the query filter formats.' x-release-status: PUBLIC security: - oauth2: - ITEMS_READ parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/SearchCatalogItemsRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SearchCatalogItemsResponse' /v2/catalog/update-item-modifier-lists: post: tags: - Catalog summary: Square Update Item Modifier Lists operationId: UpdateItemModifierLists x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Updates the [CatalogModifierList](entity:CatalogModifierList) objects that apply to the targeted [CatalogItem](entity:CatalogItem) without having to perform an upsert on the entire item.' x-release-status: PUBLIC security: - oauth2: - ITEMS_WRITE parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/UpdateItemModifierListsRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/UpdateItemModifierListsResponse' /v2/catalog/update-item-taxes: post: tags: - Catalog summary: Square Update Item Taxes operationId: UpdateItemTaxes x-microcks-operation: delay: 0 dispatcher: FALLBACK description: 'Updates the [CatalogTax](entity:CatalogTax) objects that apply to the targeted [CatalogItem](entity:CatalogItem) without having to perform an upsert on the entire item.' x-release-status: PUBLIC security: - oauth2: - ITEMS_WRITE parameters: [] requestBody: required: true description: 'An object containing the fields to POST for the request. See the corresponding object definition for field details.' content: application/json: schema: $ref: '#/components/schemas/UpdateItemTaxesRequest' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/UpdateItemTaxesResponse' components: schemas: CatalogQuickAmountsSettingsOption: type: string enum: - DISABLED - MANUAL - AUTO x-enum-elements: - name: DISABLED description: Option for seller to disable Quick Amounts. - name: MANUAL description: Option for seller to choose manually created Quick Amounts. - name: AUTO description: Option for seller to choose automatically created Quick Amounts. description: Determines a seller's option on Quick Amounts feature. x-release-status: BETA CatalogItemOptionForItem: type: object description: ' An option that can be assigned to an item. For example, a t-shirt item may offer a color option or a size option.' x-release-status: BETA properties: item_option_id: type: string description: The unique id of the item option, used to form the dimensions of the item option matrix in a specified order. nullable: true ItemVariationLocationOverrides: type: object description: Price and inventory alerting overrides for a `CatalogItemVariation` at a specific `Location`. x-release-status: PUBLIC properties: location_id: type: string description: The ID of the `Location`. This can include locations that are deactivated. nullable: true price_money: $ref: '#/components/schemas/Money' description: The price of the `CatalogItemVariation` at the given `Location`, or blank for variable pricing. nullable: true pricing_type: $ref: '#/components/schemas/CatalogPricingType' description: 'The pricing type (fixed or variable) for the `CatalogItemVariation` at the given `Location`. See [CatalogPricingType](#type-catalogpricingtype) for possible values' nullable: true track_inventory: type: boolean description: If `true`, inventory tracking is active for the `CatalogItemVariation` at this `Location`. nullable: true inventory_alert_type: $ref: '#/components/schemas/InventoryAlertType' description: 'Indicates whether the `CatalogItemVariation` displays an alert when its inventory quantity is less than or equal to its `inventory_alert_threshold`. See [InventoryAlertType](#type-inventoryalerttype) for possible values' nullable: true inventory_alert_threshold: type: integer description: 'If the inventory quantity for the variation is less than or equal to this value and `inventory_alert_type` is `LOW_QUANTITY`, the variation displays an alert in the merchant dashboard. This value is always an integer.' format: int64 nullable: true sold_out: type: boolean description: 'Indicates whether the overridden item variation is sold out at the specified location. When inventory tracking is enabled on the item variation either globally or at the specified location, the item variation is automatically marked as sold out when its inventory count reaches zero. The seller can manually set the item variation as sold out even when the inventory count is greater than zero. Attempts by an application to set this attribute are ignored. Regardless how the sold-out status is set, applications should treat its inventory count as zero when this attribute value is `true`.' readOnly: true sold_out_valid_until: type: string description: 'The seller-assigned timestamp, of the RFC 3339 format, to indicate when this sold-out variation becomes available again at the specified location. Attempts by an application to set this attribute are ignored. When the current time is later than this attribute value, the affected item variation is no longer sold out.' readOnly: true ModifierLocationOverrides: type: object description: Location-specific overrides for specified properties of a `CatalogModifier` object. x-release-status: PUBLIC properties: location_id: type: string description: The ID of the `Location` object representing the location. This can include a deactivated location. nullable: true price_money: $ref: '#/components/schemas/Money' description: 'The overridden price at the specified location. If this is unspecified, the modifier price is not overridden. The modifier becomes free of charge at the specified location, when this `price_money` field is set to 0.' nullable: true sold_out: type: boolean description: 'Indicates whether the modifier is sold out at the specified location or not. As an example, for cheese (modifier) burger (item), when the modifier is sold out, it is the cheese, but not the burger, that is sold out. The seller can manually set this sold out status. Attempts by an application to set this attribute are ignored.' readOnly: true CatalogItemFoodAndBeverageDetailsIngredient: type: object description: Describes the ingredient used in a `FOOD_AND_BEV` item. x-release-status: PUBLIC properties: type: $ref: '#/components/schemas/CatalogItemFoodAndBeverageDetailsDietaryPreferenceType' description: 'The dietary preference type of the ingredient. Supported values include `STANDARD` and `CUSTOM` as specified in `FoodAndBeverageDetails.DietaryPreferenceType`. See [DietaryPreferenceType](#type-dietarypreferencetype) for possible values' nullable: true standard_name: $ref: '#/components/schemas/CatalogItemFoodAndBeverageDetailsIngredientStandardIngredient' description: 'The name of the ingredient from a standard pre-defined list. This should be null if it''s a custom dietary preference. See [StandardIngredient](#type-standardingredient) for possible values' nullable: true custom_name: type: string description: The name of a custom user-defined ingredient. This should be null if it's a standard dietary preference. nullable: true CatalogModifierListSelectionType: type: string enum: - SINGLE - MULTIPLE x-enum-elements: - name: SINGLE description: 'Indicates that a CatalogModifierList allows only a single CatalogModifier to be selected.' - name: MULTIPLE description: 'Indicates that a CatalogModifierList allows multiple CatalogModifier to be selected.' description: Indicates whether a CatalogModifierList supports multiple selections. x-release-status: PUBLIC CatalogCategory: type: object description: A category to which a `CatalogItem` instance belongs. x-release-status: PUBLIC properties: name: type: string description: The category name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points. maxLength: 255 nullable: true image_ids: type: array items: type: string description: 'The IDs of images associated with this `CatalogCategory` instance. Currently these images are not displayed by Square, but are free to be displayed in 3rd party applications.' nullable: true category_type: $ref: '#/components/schemas/CatalogCategoryType' description: 'The type of the category. See [CatalogCategoryType](#type-catalogcategorytype) for possible values' nullable: true parent_category: $ref: '#/components/schemas/CatalogObjectCategory' description: The ID of the parent category of this category instance. nullable: true is_top_level: type: boolean description: Indicates whether a category is a top level category, which does not have any parent_category. nullable: true channels: type: array items: type: string description: A list of IDs representing channels, such as a Square Online site, where the category can be made visible. nullable: true availability_period_ids: type: array items: type: string description: The IDs of the `CatalogAvailabilityPeriod` objects associated with the category. nullable: true online_visibility: type: boolean description: Indicates whether the category is visible (`true`) or hidden (`false`) on all of the seller's Square Online sites. nullable: true root_category: type: string description: The top-level category in a category hierarchy. readOnly: true ecom_seo_data: $ref: '#/components/schemas/CatalogEcomSeoData' description: The SEO data for a seller's Square Online store. nullable: true path_to_root: type: array items: $ref: '#/components/schemas/CategoryPathToRootNode' description: 'The path from the category to its root category. The first node of the path is the parent of the category and the last is the root category. The path is empty if the category is a root category.' nullable: true example: object: category_data: name: Beverages id: '#Beverages' present_at_all_locations: true type: CATEGORY Money: type: object description: 'Represents an amount of money. `Money` fields can be signed or unsigned. Fields that do not explicitly define whether they are signed or unsigned are considered unsigned and can only hold positive amounts. For signed fields, the sign of the value indicates the purpose of the money transfer. See [Working with Monetary Amounts](https://developer.squareup.com/docs/build-basics/working-with-monetary-amounts) for more information.' x-release-status: PUBLIC properties: amount: type: integer description: 'The amount of money, in the smallest denomination of the currency indicated by `currency`. For example, when `currency` is `USD`, `amount` is in cents. Monetary amounts can be positive or negative. See the specific field description to determine the meaning of the sign in a particular case.' format: int64 nullable: true currency: $ref: '#/components/schemas/Currency' description: 'The type of currency, in __ISO 4217 format__. For example, the currency code for US dollars is `USD`. See [Currency](entity:Currency) for possible values. See [Currency](#type-currency) for possible values' nullable: true DeleteCatalogObjectResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. deleted_object_ids: type: array items: type: string description: 'The IDs of all catalog objects deleted by this request. Multiple IDs may be returned when associated objects are also deleted, for example a catalog item variation will be deleted (and its ID included in this field) when its parent catalog item is deleted.' deleted_at: type: string description: 'The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) of this deletion in RFC 3339 format, e.g., `2016-09-04T23:59:33.123Z`.' example: deleted_at: '2016-11-16T22:25:24.878Z' deleted_object_ids: - 7SB3ZQYJ5GDMVFL7JK46JCHT - KQLFFHA6K6J3YQAQAWDQAL57 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.csharp java: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.java javascript: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.javascript php: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.php python: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.python ruby: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.ruby CatalogQueryPrefix: type: object description: The query filter to return the search result whose named attribute values are prefixed by the specified attribute value. x-release-status: PUBLIC required: - attribute_name - attribute_prefix properties: attribute_name: type: string description: The name of the attribute to be searched. minLength: 1 attribute_prefix: type: string description: The desired prefix of the search attribute value. minLength: 1 CatalogObject: type: object description: 'The wrapper object for the catalog entries of a given object type. Depending on the `type` attribute value, a `CatalogObject` instance assumes a type-specific data to yield the corresponding type of catalog object. For example, if `type=ITEM`, the `CatalogObject` instance must have the ITEM-specific data set on the `item_data` attribute. The resulting `CatalogObject` instance is also a `CatalogItem` instance. In general, if `type=`, the `CatalogObject` instance must have the ``-specific data set on the `_data` attribute. The resulting `CatalogObject` instance is also a `Catalog` instance. For a more detailed discussion of the Catalog data model, please see the [Design a Catalog](https://developer.squareup.com/docs/catalog-api/design-a-catalog) guide.' x-release-status: PUBLIC required: - type - id properties: type: $ref: '#/components/schemas/CatalogObjectType' description: 'The type of this object. Each object type has expected properties expressed in a structured format within its corresponding `*_data` field below. See [CatalogObjectType](#type-catalogobjecttype) for possible values' id: type: string description: 'An identifier to reference this object in the catalog. When a new `CatalogObject` is inserted, the client should set the id to a temporary identifier starting with a "`#`" character. Other objects being inserted or updated within the same request may use this identifier to refer to the new object. When the server receives the new object, it will supply a unique identifier that replaces the temporary identifier for all future references.' minLength: 1 updated_at: type: string description: 'Last modification [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) in RFC 3339 format, e.g., `"2016-08-15T23:59:33.123Z"` would indicate the UTC time (denoted by `Z`) of August 15, 2016 at 23:59:33 and 123 milliseconds.' readOnly: true version: type: integer description: 'The version of the object. When updating an object, the version supplied must match the version in the database, otherwise the write will be rejected as conflicting.' format: int64 is_deleted: type: boolean description: 'If `true`, the object has been deleted from the database. Must be `false` for new objects being inserted. When deleted, the `updated_at` field will equal the deletion time.' nullable: true custom_attribute_values: type: object additionalProperties: $ref: '#/components/schemas/CatalogCustomAttributeValue' description: 'A map (key-value pairs) of application-defined custom attribute values. The value of a key-value pair is a [CatalogCustomAttributeValue](entity:CatalogCustomAttributeValue) object. The key is the `key` attribute value defined in the associated [CatalogCustomAttributeDefinition](entity:CatalogCustomAttributeDefinition) object defined by the application making the request. If the `CatalogCustomAttributeDefinition` object is defined by another application, the `CatalogCustomAttributeDefinition`''s key attribute value is prefixed by the defining application ID. For example, if the `CatalogCustomAttributeDefinition` has a `key` attribute of `"cocoa_brand"` and the defining application ID is `"abcd1234"`, the key in the map is `"abcd1234:cocoa_brand"` if the application making the request is different from the application defining the custom attribute definition. Otherwise, the key used in the map is simply `"cocoa_brand"`. Application-defined custom attributes are set at a global (location-independent) level. Custom attribute values are intended to store additional information about a catalog object or associations with an entity in another system. Do not use custom attributes to store any sensitive information (personally identifiable information, card details, etc.).' nullable: true catalog_v1_ids: type: array items: $ref: '#/components/schemas/CatalogV1Id' description: 'The Connect v1 IDs for this object at each location where it is present, where they differ from the object''s Connect V2 ID. The field will only be present for objects that have been created or modified by legacy APIs.' nullable: true present_at_all_locations: type: boolean description: 'If `true`, this object is present at all locations (including future locations), except where specified in the `absent_at_location_ids` field. If `false`, this object is not present at any locations (including future locations), except where specified in the `present_at_location_ids` field. If not specified, defaults to `true`.' nullable: true present_at_location_ids: type: array items: type: string description: 'A list of locations where the object is present, even if `present_at_all_locations` is `false`. This can include locations that are deactivated.' nullable: true absent_at_location_ids: type: array items: type: string description: 'A list of locations where the object is not present, even if `present_at_all_locations` is `true`. This can include locations that are deactivated.' nullable: true item_data: $ref: '#/components/schemas/CatalogItem' description: Structured data for a `CatalogItem`, set for CatalogObjects of type `ITEM`. nullable: true category_data: $ref: '#/components/schemas/CatalogCategory' description: Structured data for a `CatalogCategory`, set for CatalogObjects of type `CATEGORY`. nullable: true item_variation_data: $ref: '#/components/schemas/CatalogItemVariation' description: Structured data for a `CatalogItemVariation`, set for CatalogObjects of type `ITEM_VARIATION`. nullable: true tax_data: $ref: '#/components/schemas/CatalogTax' description: Structured data for a `CatalogTax`, set for CatalogObjects of type `TAX`. nullable: true discount_data: $ref: '#/components/schemas/CatalogDiscount' description: Structured data for a `CatalogDiscount`, set for CatalogObjects of type `DISCOUNT`. nullable: true modifier_list_data: $ref: '#/components/schemas/CatalogModifierList' description: Structured data for a `CatalogModifierList`, set for CatalogObjects of type `MODIFIER_LIST`. nullable: true modifier_data: $ref: '#/components/schemas/CatalogModifier' description: Structured data for a `CatalogModifier`, set for CatalogObjects of type `MODIFIER`. nullable: true time_period_data: $ref: '#/components/schemas/CatalogTimePeriod' description: Structured data for a `CatalogTimePeriod`, set for CatalogObjects of type `TIME_PERIOD`. nullable: true product_set_data: $ref: '#/components/schemas/CatalogProductSet' description: Structured data for a `CatalogProductSet`, set for CatalogObjects of type `PRODUCT_SET`. nullable: true pricing_rule_data: $ref: '#/components/schemas/CatalogPricingRule' description: 'Structured data for a `CatalogPricingRule`, set for CatalogObjects of type `PRICING_RULE`. A `CatalogPricingRule` object often works with a `CatalogProductSet` object or a `CatalogTimePeriod` object.' nullable: true image_data: $ref: '#/components/schemas/CatalogImage' description: Structured data for a `CatalogImage`, set for CatalogObjects of type `IMAGE`. nullable: true measurement_unit_data: $ref: '#/components/schemas/CatalogMeasurementUnit' description: Structured data for a `CatalogMeasurementUnit`, set for CatalogObjects of type `MEASUREMENT_UNIT`. nullable: true subscription_plan_data: $ref: '#/components/schemas/CatalogSubscriptionPlan' description: Structured data for a `CatalogSubscriptionPlan`, set for CatalogObjects of type `SUBSCRIPTION_PLAN`. nullable: true item_option_data: $ref: '#/components/schemas/CatalogItemOption' description: Structured data for a `CatalogItemOption`, set for CatalogObjects of type `ITEM_OPTION`. nullable: true item_option_value_data: $ref: '#/components/schemas/CatalogItemOptionValue' description: Structured data for a `CatalogItemOptionValue`, set for CatalogObjects of type `ITEM_OPTION_VAL`. nullable: true custom_attribute_definition_data: $ref: '#/components/schemas/CatalogCustomAttributeDefinition' description: Structured data for a `CatalogCustomAttributeDefinition`, set for CatalogObjects of type `CUSTOM_ATTRIBUTE_DEFINITION`. nullable: true quick_amounts_settings_data: $ref: '#/components/schemas/CatalogQuickAmountsSettings' description: Structured data for a `CatalogQuickAmountsSettings`, set for CatalogObjects of type `QUICK_AMOUNTS_SETTINGS`. x-release-status: BETA nullable: true subscription_plan_variation_data: $ref: '#/components/schemas/CatalogSubscriptionPlanVariation' description: Structured data for a `CatalogSubscriptionPlanVariation`, set for CatalogObjects of type `SUBSCRIPTION_PLAN_VARIATION`. nullable: true availability_period_data: $ref: '#/components/schemas/CatalogAvailabilityPeriod' description: Structured data for a `CatalogAvailabilityPeriod`, set for CatalogObjects of type `AVAILABILITY_PERIOD`. nullable: true example: catalog_object: absent_at_location_ids: - '{{ LOCATIONID-1 }}' - '{{ LOCATIONID-N }}' category_data: '{{ CatalogCategory object only if type=CATEGORY }}' connect_v1_ids: catalog_v1_id: '{{ itemID from Catalog v1 }}' location_id: '{{ location where v1 ID is used }}' discount_data: '{{ CatalogDiscount object only if type=DISCOUNT }}' id: '{{ set by Catalog during object creation }}' is_deleted: '{{ [true | false] }}' item_data: '{{ CatalogItem object only if type=ITEM }}' item_variation_data: '{{ CatalogItemVariation object only if type=ITEM_VARIATION }}' modifier_data: '{{ CatalogModifier object only if type=MODIFIER }}' modifier_list_data: '{{ CatalogModifierList object only if type=MODIFIER_LIST }}' present_at_all_locations: '{{ [true | false] }}' present_at_location_ids: - '{{ LOCATIONID-1 }}' - '{{ LOCATIONID-N }}' tax_data: '{{ CatalogTax object only if type=TAX }}' type: '{{ [ITEM | ITEM_VARIATION | MODIFIER | MODIFIER_LIST | CATEGORY | DISCOUNT | TAX] }}' updated_at: '{{ date & time of most recent update }}' version: '{{ version of the CatalogObject }}' CatalogCustomAttributeDefinitionStringConfig: type: object description: Configuration associated with Custom Attribute Definitions of type `STRING`. x-release-status: PUBLIC properties: enforce_uniqueness: type: boolean description: 'If true, each Custom Attribute instance associated with this Custom Attribute Definition must have a unique value within the seller''s catalog. For example, this may be used for a value like a SKU that should not be duplicated within a seller''s catalog. May not be modified after the definition has been created.' nullable: true RetrieveCatalogObjectResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. object: $ref: '#/components/schemas/CatalogObject' description: The `CatalogObject`s returned. related_objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: A list of `CatalogObject`s referenced by the object in the `object` field. example: object: id: W62UWFY35CWMYGVWK6TWJDNI is_deleted: false item_data: categories: - id: BJNQCF2FJ6S6UIDT65ABHLRX ordinal: 0 description: Hot Leaf Juice name: Tea tax_ids: - HURXQOOAIC4IZSI2BEXQRYFY variations: - id: 2TZFAOHWGG7PAK2QEXWYPZSP is_deleted: false item_variation_data: item_id: W62UWFY35CWMYGVWK6TWJDNI name: Mug ordinal: 0 price_money: amount: 150 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 present_at_all_locations: true type: ITEM updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 related_objects: - category_data: name: Beverages id: BJNQCF2FJ6S6UIDT65ABHLRX is_deleted: false present_at_all_locations: true type: CATEGORY updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 - id: HURXQOOAIC4IZSI2BEXQRYFY is_deleted: false present_at_all_locations: true tax_data: calculation_phase: TAX_SUBTOTAL_PHASE enabled: true inclusion_type: ADDITIVE name: Sales Tax percentage: '5.0' type: TAX updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.csharp java: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.java javascript: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.javascript php: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.php python: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.python ruby: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.ruby SearchCatalogItemsRequest: type: object description: Defines the request body for the [SearchCatalogItems](api-endpoint:Catalog-SearchCatalogItems) endpoint. x-release-status: PUBLIC properties: text_filter: type: string description: 'The text filter expression to return items or item variations containing specified text in the `name`, `description`, or `abbreviation` attribute value of an item, or in the `name`, `sku`, or `upc` attribute value of an item variation.' category_ids: type: array items: type: string description: The category id query expression to return items containing the specified category IDs. stock_levels: type: array items: $ref: '#/components/schemas/SearchCatalogItemsRequestStockLevel' description: 'The stock-level query expression to return item variations with the specified stock levels. See [SearchCatalogItemsRequestStockLevel](#type-searchcatalogitemsrequeststocklevel) for possible values' enabled_location_ids: type: array items: type: string description: The enabled-location query expression to return items and item variations having specified enabled locations. cursor: type: string description: The pagination token, returned in the previous response, used to fetch the next batch of pending results. limit: type: integer description: The maximum number of results to return per page. The default value is 100. maximum: 100 sort_order: $ref: '#/components/schemas/SortOrder' description: 'The order to sort the results by item names. The default sort order is ascending (`ASC`). See [SortOrder](#type-sortorder) for possible values' product_types: type: array items: $ref: '#/components/schemas/CatalogItemProductType' description: The product types query expression to return items or item variations having the specified product types. custom_attribute_filters: type: array items: $ref: '#/components/schemas/CustomAttributeFilter' description: 'The customer-attribute filter to return items or item variations matching the specified custom attribute expressions. A maximum number of 10 custom attribute expressions are supported in a single call to the [SearchCatalogItems](api-endpoint:Catalog-SearchCatalogItems) endpoint.' archived_state: $ref: '#/components/schemas/ArchivedState' description: The query filter to return not archived (`ARCHIVED_STATE_NOT_ARCHIVED`), archived (`ARCHIVED_STATE_ARCHIVED`), or either type (`ARCHIVED_STATE_ALL`) of items. example: category_ids: - WINE_CATEGORY_ID custom_attribute_filters: - bool_filter: true custom_attribute_definition_id: VEGAN_DEFINITION_ID - custom_attribute_definition_id: BRAND_DEFINITION_ID string_filter: Dark Horse - key: VINTAGE number_filter: max: 2018 min: 2017 - custom_attribute_definition_id: VARIETAL_DEFINITION_ID selection_ids_filter: MERLOT_SELECTION_ID enabled_location_ids: - ATL_LOCATION_ID limit: 100 product_types: - REGULAR sort_order: ASC stock_levels: - OUT - LOW text_filter: red CatalogQueryItemVariationsForItemOptionValues: type: object description: The query filter to return the item variations containing the specified item option value IDs. x-release-status: PUBLIC properties: item_option_value_ids: type: array items: type: string description: 'A set of `CatalogItemOptionValue` IDs to be used to find associated `CatalogItemVariation`s. All ItemVariations that contain all of the given Item Option Values (in any order) will be returned.' nullable: true CatalogQueryRange: type: object description: The query filter to return the search result whose named attribute values fall between the specified range. x-release-status: PUBLIC required: - attribute_name properties: attribute_name: type: string description: The name of the attribute to be searched. minLength: 1 attribute_min_value: type: integer description: The desired minimum value for the search attribute (inclusive). format: int64 nullable: true attribute_max_value: type: integer description: The desired maximum value for the search attribute (inclusive). format: int64 nullable: true CatalogQueryItemsForModifierList: type: object description: The query filter to return the items containing the specified modifier list IDs. x-release-status: PUBLIC required: - modifier_list_ids properties: modifier_list_ids: type: array items: type: string description: A set of `CatalogModifierList` IDs to be used to find associated `CatalogItem`s. CatalogInfoResponseLimits: type: object x-release-status: PUBLIC properties: batch_upsert_max_objects_per_batch: type: integer description: 'The maximum number of objects that may appear within a single batch in a `/v2/catalog/batch-upsert` request.' nullable: true batch_upsert_max_total_objects: type: integer description: 'The maximum number of objects that may appear across all batches in a `/v2/catalog/batch-upsert` request.' nullable: true batch_retrieve_max_object_ids: type: integer description: 'The maximum number of object IDs that may appear in a `/v2/catalog/batch-retrieve` request.' nullable: true search_max_page_limit: type: integer description: 'The maximum number of results that may be returned in a page of a `/v2/catalog/search` response.' nullable: true batch_delete_max_object_ids: type: integer description: 'The maximum number of object IDs that may be included in a single `/v2/catalog/batch-delete` request.' nullable: true update_item_taxes_max_item_ids: type: integer description: 'The maximum number of item IDs that may be included in a single `/v2/catalog/update-item-taxes` request.' nullable: true update_item_taxes_max_taxes_to_enable: type: integer description: 'The maximum number of tax IDs to be enabled that may be included in a single `/v2/catalog/update-item-taxes` request.' nullable: true update_item_taxes_max_taxes_to_disable: type: integer description: 'The maximum number of tax IDs to be disabled that may be included in a single `/v2/catalog/update-item-taxes` request.' nullable: true update_item_modifier_lists_max_item_ids: type: integer description: 'The maximum number of item IDs that may be included in a single `/v2/catalog/update-item-modifier-lists` request.' nullable: true update_item_modifier_lists_max_modifier_lists_to_enable: type: integer description: 'The maximum number of modifier list IDs to be enabled that may be included in a single `/v2/catalog/update-item-modifier-lists` request.' nullable: true update_item_modifier_lists_max_modifier_lists_to_disable: type: integer description: 'The maximum number of modifier list IDs to be disabled that may be included in a single `/v2/catalog/update-item-modifier-lists` request.' nullable: true CatalogItemOptionValueForItemVariation: type: object description: 'A `CatalogItemOptionValue` links an item variation to an item option as an item option value. For example, a t-shirt item may offer a color option and a size option. An item option value would represent each variation of t-shirt: For example, "Color:Red, Size:Small" or "Color:Blue, Size:Medium".' x-release-status: PUBLIC properties: item_option_id: type: string description: The unique id of an item option. nullable: true item_option_value_id: type: string description: The unique id of the selected value for the item option. nullable: true CatalogItemFoodAndBeverageDetailsDietaryPreference: type: object description: Dietary preferences that can be assigned to an `FOOD_AND_BEV` item and its ingredients. x-release-status: PUBLIC properties: type: $ref: '#/components/schemas/CatalogItemFoodAndBeverageDetailsDietaryPreferenceType' description: 'The dietary preference type. Supported values include `STANDARD` and `CUSTOM` as specified in `FoodAndBeverageDetails.DietaryPreferenceType`. See [DietaryPreferenceType](#type-dietarypreferencetype) for possible values' nullable: true standard_name: $ref: '#/components/schemas/CatalogItemFoodAndBeverageDetailsDietaryPreferenceStandardDietaryPreference' description: 'The name of the dietary preference from a standard pre-defined list. This should be null if it''s a custom dietary preference. See [StandardDietaryPreference](#type-standarddietarypreference) for possible values' nullable: true custom_name: type: string description: The name of a user-defined custom dietary preference. This should be null if it's a standard dietary preference. nullable: true TaxCalculationPhase: type: string enum: - TAX_SUBTOTAL_PHASE - TAX_TOTAL_PHASE x-enum-elements: - name: TAX_SUBTOTAL_PHASE description: The fee is calculated based on the payment's subtotal. - name: TAX_TOTAL_PHASE description: The fee is calculated based on the payment's total. description: When to calculate the taxes due on a cart. x-release-status: PUBLIC CatalogDiscountType: type: string enum: - FIXED_PERCENTAGE - FIXED_AMOUNT - VARIABLE_PERCENTAGE - VARIABLE_AMOUNT x-enum-elements: - name: FIXED_PERCENTAGE description: Apply the discount as a fixed percentage (e.g., 5%) off the item price. - name: FIXED_AMOUNT description: Apply the discount as a fixed amount (e.g., $1.00) off the item price. - name: VARIABLE_PERCENTAGE description: Apply the discount as a variable percentage off the item price. The percentage will be specified at the time of sale. - name: VARIABLE_AMOUNT description: Apply the discount as a variable amount off the item price. The amount will be specified at the time of sale. description: How to apply a CatalogDiscount to a CatalogItem. x-release-status: PUBLIC CatalogImage: type: object description: 'An image file to use in Square catalogs. It can be associated with `CatalogItem`, `CatalogItemVariation`, `CatalogCategory`, and `CatalogModifierList` objects. Only the images on items and item variations are exposed in Dashboard. Only the first image on an item is displayed in Square Point of Sale (SPOS). Images on items and variations are displayed through Square Online Store. Images on other object types are for use by 3rd party application developers.' x-release-status: PUBLIC properties: name: type: string description: 'The internal name to identify this image in calls to the Square API. This is a searchable attribute for use in applicable query filters using the [SearchCatalogObjects](api-endpoint:Catalog-SearchCatalogObjects). It is not unique and should not be shown in a buyer facing context.' nullable: true url: type: string description: 'The URL of this image, generated by Square after an image is uploaded using the [CreateCatalogImage](api-endpoint:Catalog-CreateCatalogImage) endpoint. To modify the image, use the UpdateCatalogImage endpoint. Do not change the URL field.' nullable: true caption: type: string description: 'A caption that describes what is shown in the image. Displayed in the Square Online Store. This is a searchable attribute for use in applicable query filters using the [SearchCatalogObjects](api-endpoint:Catalog-SearchCatalogObjects).' nullable: true photo_studio_order_id: type: string description: The immutable order ID for this image object created by the Photo Studio service in Square Online Store. nullable: true MeasurementUnitUnitType: type: string enum: - TYPE_CUSTOM - TYPE_AREA - TYPE_LENGTH - TYPE_VOLUME - TYPE_WEIGHT - TYPE_GENERIC x-enum-elements: - name: TYPE_CUSTOM description: The unit details are contained in the custom_unit field. - name: TYPE_AREA description: The unit details are contained in the area_unit field. - name: TYPE_LENGTH description: The unit details are contained in the length_unit field. - name: TYPE_VOLUME description: The unit details are contained in the volume_unit field. - name: TYPE_WEIGHT description: The unit details are contained in the weight_unit field. - name: TYPE_GENERIC description: The unit details are contained in the generic_unit field. description: Describes the type of this unit and indicates which field contains the unit information. This is an ‘open’ enum. x-release-status: PUBLIC CatalogItemFoodAndBeverageDetailsDietaryPreferenceType: type: string enum: - STANDARD - CUSTOM x-enum-elements: - name: STANDARD description: A standard value from a pre-determined list. - name: CUSTOM description: A user-defined custom value. description: The type of dietary preference for the `FOOD_AND_BEV` type of items and integredients. x-release-status: PUBLIC CatalogPricingRule: type: object description: 'Defines how discounts are automatically applied to a set of items that match the pricing rule during the active time period.' x-release-status: PUBLIC properties: name: type: string description: 'User-defined name for the pricing rule. For example, "Buy one get one free" or "10% off".' nullable: true time_period_ids: type: array items: type: string description: 'A list of unique IDs for the catalog time periods when this pricing rule is in effect. If left unset, the pricing rule is always in effect.' nullable: true discount_id: type: string description: 'Unique ID for the `CatalogDiscount` to take off the price of all matched items.' nullable: true match_products_id: type: string description: 'Unique ID for the `CatalogProductSet` that will be matched by this rule. A match rule matches within the entire cart, and can match multiple times. This field will always be set.' nullable: true apply_products_id: type: string description: '__Deprecated__: Please use the `exclude_products_id` field to apply an exclude set instead. Exclude sets allow better control over quantity ranges and offer more flexibility for which matched items receive a discount. `CatalogProductSet` to apply the pricing to. An apply rule matches within the subset of the cart that fits the match rules (the match set). An apply rule can only match once in the match set. If not supplied, the pricing will be applied to all products in the match set. Other products retain their base price, or a price generated by other rules.' x-release-status: DEPRECATED nullable: true exclude_products_id: type: string description: '`CatalogProductSet` to exclude from the pricing rule. An exclude rule matches within the subset of the cart that fits the match rules (the match set). An exclude rule can only match once in the match set. If not supplied, the pricing will be applied to all products in the match set. Other products retain their base price, or a price generated by other rules.' nullable: true valid_from_date: type: string description: Represents the date the Pricing Rule is valid from. Represented in RFC 3339 full-date format (YYYY-MM-DD). nullable: true valid_from_local_time: type: string description: 'Represents the local time the pricing rule should be valid from. Represented in RFC 3339 partial-time format (HH:MM:SS). Partial seconds will be truncated.' nullable: true valid_until_date: type: string description: Represents the date the Pricing Rule is valid until. Represented in RFC 3339 full-date format (YYYY-MM-DD). nullable: true valid_until_local_time: type: string description: 'Represents the local time the pricing rule should be valid until. Represented in RFC 3339 partial-time format (HH:MM:SS). Partial seconds will be truncated.' nullable: true exclude_strategy: $ref: '#/components/schemas/ExcludeStrategy' description: 'If an `exclude_products_id` was given, controls which subset of matched products is excluded from any discounts. Default value: `LEAST_EXPENSIVE` See [ExcludeStrategy](#type-excludestrategy) for possible values' nullable: true minimum_order_subtotal_money: $ref: '#/components/schemas/Money' description: 'The minimum order subtotal (before discounts or taxes are applied) that must be met before this rule may be applied.' nullable: true customer_group_ids_any: type: array items: type: string description: 'A list of IDs of customer groups, the members of which are eligible for discounts specified in this pricing rule. Notice that a group ID is generated by the Customers API. If this field is not set, the specified discount applies to matched products sold to anyone whether the buyer has a customer profile created or not. If this `customer_group_ids_any` field is set, the specified discount applies only to matched products sold to customers belonging to the specified customer groups.' nullable: true CatalogModifierListModifierType: type: string enum: - LIST - TEXT x-enum-elements: - name: LIST description: The `CatalogModifierList` instance is a non-empty list of non text-based modifiers. - name: TEXT description: The `CatalogModifierList` instance is a single text-based modifier. description: Defines the type of `CatalogModifierList`. x-release-status: BETA CatalogObjectCategory: type: object description: "A category that can be assigned to an item or a parent category that can be assigned \nto another category. For example, a clothing category can be assigned to a t-shirt item or \nbe made as the parent category to the pants category." x-release-status: BETA properties: id: type: string description: The ID of the object's category. ordinal: type: integer description: The order of the object within the context of the category. format: int64 nullable: true SubscriptionPhase: type: object description: Describes a phase in a subscription plan variation. For more information, see [Subscription Plans and Variations](https://developer.squareup.com/docs/subscriptions-api/plans-and-variations). x-release-status: PUBLIC required: - cadence properties: uid: type: string description: The Square-assigned ID of the subscription phase. This field cannot be changed after a `SubscriptionPhase` is created. nullable: true cadence: $ref: '#/components/schemas/SubscriptionCadence' description: 'The billing cadence of the phase. For example, weekly or monthly. This field cannot be changed after a `SubscriptionPhase` is created. See [SubscriptionCadence](#type-subscriptioncadence) for possible values' periods: type: integer description: The number of `cadence`s the phase lasts. If not set, the phase never ends. Only the last phase can be indefinite. This field cannot be changed after a `SubscriptionPhase` is created. nullable: true recurring_price_money: $ref: '#/components/schemas/Money' description: The amount to bill for each `cadence`. Failure to specify this field results in a `MISSING_REQUIRED_PARAMETER` error at runtime. nullable: true ordinal: type: integer description: The position this phase appears in the sequence of phases defined for the plan, indexed from 0. This field cannot be changed after a `SubscriptionPhase` is created. format: int64 nullable: true pricing: $ref: '#/components/schemas/SubscriptionPricing' description: The subscription pricing. nullable: true CatalogItemFoodAndBeverageDetailsIngredientStandardIngredient: type: string enum: - CELERY - CRUSTACEANS - EGGS - FISH - GLUTEN - LUPIN - MILK - MOLLUSCS - MUSTARD - PEANUTS - SESAME - SOY - SULPHITES - TREE_NUTS x-enum-elements: - name: CELERY description: '' - name: CRUSTACEANS description: '' - name: EGGS description: '' - name: FISH description: '' - name: GLUTEN description: '' - name: LUPIN description: '' - name: MILK description: '' - name: MOLLUSCS description: '' - name: MUSTARD description: '' - name: PEANUTS description: '' - name: SESAME description: '' - name: SOY description: '' - name: SULPHITES description: '' - name: TREE_NUTS description: '' description: Standard ingredients for food and beverage items that are recommended on item creation. x-release-status: PUBLIC CatalogSubscriptionPlanVariation: type: object description: 'Describes a subscription plan variation. A subscription plan variation represents how the subscription for a product or service is sold. For more information, see [Subscription Plans and Variations](https://developer.squareup.com/docs/subscriptions-api/plans-and-variations).' x-release-status: PUBLIC required: - name - phases properties: name: type: string description: The name of the plan variation. phases: type: array items: $ref: '#/components/schemas/SubscriptionPhase' description: A list containing each [SubscriptionPhase](entity:SubscriptionPhase) for this plan variation. subscription_plan_id: type: string description: The id of the subscription plan, if there is one. nullable: true monthly_billing_anchor_date: type: integer description: The day of the month the billing period starts. format: int64 minimum: 1 maximum: 31 nullable: true can_prorate: type: boolean description: Whether bills for this plan variation can be split for proration. nullable: true successor_plan_variation_id: type: string description: 'The ID of a "successor" plan variation to this one. If the field is set, and this object is disabled at all locations, it indicates that this variation is deprecated and the object identified by the successor ID be used in its stead.' nullable: true BatchRetrieveCatalogObjectsRequest: type: object x-release-status: PUBLIC required: - object_ids properties: object_ids: type: array items: type: string description: The IDs of the CatalogObjects to be retrieved. include_related_objects: type: boolean description: 'If `true`, the response will include additional objects that are related to the requested objects. Related objects are defined as any objects referenced by ID by the results in the `objects` field of the response. These objects are put in the `related_objects` field. Setting this to `true` is helpful when the objects are needed for immediate display to a user. This process only goes one level deep. Objects referenced by the related objects will not be included. For example, if the `objects` field of the response contains a CatalogItem, its associated CatalogCategory objects, CatalogTax objects, CatalogImage objects and CatalogModifierLists will be returned in the `related_objects` field of the response. If the `objects` field of the response contains a CatalogItemVariation, its parent CatalogItem will be returned in the `related_objects` field of the response. Default value: `false`' nullable: true catalog_version: type: integer description: "The specific version of the catalog objects to be included in the response. \nThis allows you to retrieve historical versions of objects. The specified version value is matched against\nthe [CatalogObject](entity:CatalogObject)s' `version` attribute. If not included, results will\nbe from the current version of the catalog." format: int64 x-release-status: BETA nullable: true include_deleted_objects: type: boolean description: Indicates whether to include (`true`) or not (`false`) in the response deleted objects, namely, those with the `is_deleted` attribute set to `true`. nullable: true include_category_path_to_root: type: boolean description: 'Specifies whether or not to include the `path_to_root` list for each returned category instance. The `path_to_root` list consists of `CategoryPathToRootNode` objects and specifies the path that starts with the immediate parent category of the returned category and ends with its root category. If the returned category is a top-level category, the `path_to_root` list is empty and is not returned in the response payload.' nullable: true example: include_related_objects: true object_ids: - W62UWFY35CWMYGVWK6TWJDNI - AA27W3M2GGTF3H6AVPNB77CK x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.csharp java: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.java javascript: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.javascript php: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.php python: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.python ruby: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.ruby ErrorCategory: type: string enum: - API_ERROR - AUTHENTICATION_ERROR - INVALID_REQUEST_ERROR - RATE_LIMIT_ERROR - PAYMENT_METHOD_ERROR - REFUND_ERROR - MERCHANT_SUBSCRIPTION_ERROR - EXTERNAL_VENDOR_ERROR x-enum-elements: - name: API_ERROR description: An error occurred with the Connect API itself. - name: AUTHENTICATION_ERROR description: 'An authentication error occurred. Most commonly, the request had a missing, malformed, or otherwise invalid `Authorization` header.' - name: INVALID_REQUEST_ERROR description: 'The request was invalid. Most commonly, a required parameter was missing, or a provided parameter had an invalid value.' - name: RATE_LIMIT_ERROR description: 'Your application reached the Square API rate limit. You might receive this error if your application sends a high number of requests to Square APIs in a short period of time. Your application should monitor responses for `429 RATE_LIMITED` errors and use a retry mechanism with an [exponential backoff](https://en.wikipedia.org/wiki/Exponential_backoff) schedule to resend the requests at an increasingly slower rate. It is also a good practice to use a randomized delay (jitter) in your retry schedule.' - name: PAYMENT_METHOD_ERROR description: 'An error occurred while processing a payment method. Most commonly, the details of the payment method were invalid (such as a card''s CVV or expiration date).' - name: REFUND_ERROR description: An error occurred while attempting to process a refund. - name: MERCHANT_SUBSCRIPTION_ERROR description: An error occurred when checking a merchant subscription status - name: EXTERNAL_VENDOR_ERROR description: An error that is returned from an external vendor's API description: 'Indicates which high-level category of error has occurred during a request to the Connect API.' x-release-status: PUBLIC Currency: type: string enum: - UNKNOWN_CURRENCY - AED - AFN - ALL - AMD - ANG - AOA - ARS - AUD - AWG - AZN - BAM - BBD - BDT - BGN - BHD - BIF - BMD - BND - BOB - BOV - BRL - BSD - BTN - BWP - BYR - BZD - CAD - CDF - CHE - CHF - CHW - CLF - CLP - CNY - COP - COU - CRC - CUC - CUP - CVE - CZK - DJF - DKK - DOP - DZD - EGP - ERN - ETB - EUR - FJD - FKP - GBP - GEL - GHS - GIP - GMD - GNF - GTQ - GYD - HKD - HNL - HRK - HTG - HUF - IDR - ILS - INR - IQD - IRR - ISK - JMD - JOD - JPY - KES - KGS - KHR - KMF - KPW - KRW - KWD - KYD - KZT - LAK - LBP - LKR - LRD - LSL - LTL - LVL - LYD - MAD - MDL - MGA - MKD - MMK - MNT - MOP - MRO - MUR - MVR - MWK - MXN - MXV - MYR - MZN - NAD - NGN - NIO - NOK - NPR - NZD - OMR - PAB - PEN - PGK - PHP - PKR - PLN - PYG - QAR - RON - RSD - RUB - RWF - SAR - SBD - SCR - SDG - SEK - SGD - SHP - SLL - SLE - SOS - SRD - SSP - STD - SVC - SYP - SZL - THB - TJS - TMT - TND - TOP - TRY - TTD - TWD - TZS - UAH - UGX - USD - USN - USS - UYI - UYU - UZS - VEF - VND - VUV - WST - XAF - XAG - XAU - XBA - XBB - XBC - XBD - XCD - XDR - XOF - XPD - XPF - XPT - XTS - XXX - YER - ZAR - ZMK - ZMW - BTC - XUS x-enum-elements: - name: UNKNOWN_CURRENCY description: Unknown currency - name: AED description: United Arab Emirates dirham - name: AFN description: Afghan afghani - name: ALL description: Albanian lek - name: AMD description: Armenian dram - name: ANG description: Netherlands Antillean guilder - name: AOA description: Angolan kwanza - name: ARS description: Argentine peso - name: AUD description: Australian dollar - name: AWG description: Aruban florin - name: AZN description: Azerbaijani manat - name: BAM description: Bosnia and Herzegovina convertible mark - name: BBD description: Barbados dollar - name: BDT description: Bangladeshi taka - name: BGN description: Bulgarian lev - name: BHD description: Bahraini dinar - name: BIF description: Burundian franc - name: BMD description: Bermudian dollar - name: BND description: Brunei dollar - name: BOB description: Boliviano - name: BOV description: Bolivian Mvdol - name: BRL description: Brazilian real - name: BSD description: Bahamian dollar - name: BTN description: Bhutanese ngultrum - name: BWP description: Botswana pula - name: BYR description: Belarusian ruble - name: BZD description: Belize dollar - name: CAD description: Canadian dollar - name: CDF description: Congolese franc - name: CHE description: WIR Euro - name: CHF description: Swiss franc - name: CHW description: WIR Franc - name: CLF description: Unidad de Fomento - name: CLP description: Chilean peso - name: CNY description: Chinese yuan - name: COP description: Colombian peso - name: COU description: Unidad de Valor Real - name: CRC description: Costa Rican colon - name: CUC description: Cuban convertible peso - name: CUP description: Cuban peso - name: CVE description: Cape Verdean escudo - name: CZK description: Czech koruna - name: DJF description: Djiboutian franc - name: DKK description: Danish krone - name: DOP description: Dominican peso - name: DZD description: Algerian dinar - name: EGP description: Egyptian pound - name: ERN description: Eritrean nakfa - name: ETB description: Ethiopian birr - name: EUR description: Euro - name: FJD description: Fiji dollar - name: FKP description: Falkland Islands pound - name: GBP description: Pound sterling - name: GEL description: Georgian lari - name: GHS description: Ghanaian cedi - name: GIP description: Gibraltar pound - name: GMD description: Gambian dalasi - name: GNF description: Guinean franc - name: GTQ description: Guatemalan quetzal - name: GYD description: Guyanese dollar - name: HKD description: Hong Kong dollar - name: HNL description: Honduran lempira - name: HRK description: Croatian kuna - name: HTG description: Haitian gourde - name: HUF description: Hungarian forint - name: IDR description: Indonesian rupiah - name: ILS description: Israeli new shekel - name: INR description: Indian rupee - name: IQD description: Iraqi dinar - name: IRR description: Iranian rial - name: ISK description: Icelandic króna - name: JMD description: Jamaican dollar - name: JOD description: Jordanian dinar - name: JPY description: Japanese yen - name: KES description: Kenyan shilling - name: KGS description: Kyrgyzstani som - name: KHR description: Cambodian riel - name: KMF description: Comoro franc - name: KPW description: North Korean won - name: KRW description: South Korean won - name: KWD description: Kuwaiti dinar - name: KYD description: Cayman Islands dollar - name: KZT description: Kazakhstani tenge - name: LAK description: Lao kip - name: LBP description: Lebanese pound - name: LKR description: Sri Lankan rupee - name: LRD description: Liberian dollar - name: LSL description: Lesotho loti - name: LTL description: Lithuanian litas - name: LVL description: Latvian lats - name: LYD description: Libyan dinar - name: MAD description: Moroccan dirham - name: MDL description: Moldovan leu - name: MGA description: Malagasy ariary - name: MKD description: Macedonian denar - name: MMK description: Myanmar kyat - name: MNT description: Mongolian tögrög - name: MOP description: Macanese pataca - name: MRO description: Mauritanian ouguiya - name: MUR description: Mauritian rupee - name: MVR description: Maldivian rufiyaa - name: MWK description: Malawian kwacha - name: MXN description: Mexican peso - name: MXV description: Mexican Unidad de Inversion - name: MYR description: Malaysian ringgit - name: MZN description: Mozambican metical - name: NAD description: Namibian dollar - name: NGN description: Nigerian naira - name: NIO description: Nicaraguan córdoba - name: NOK description: Norwegian krone - name: NPR description: Nepalese rupee - name: NZD description: New Zealand dollar - name: OMR description: Omani rial - name: PAB description: Panamanian balboa - name: PEN description: Peruvian sol - name: PGK description: Papua New Guinean kina - name: PHP description: Philippine peso - name: PKR description: Pakistani rupee - name: PLN description: Polish zBoty - name: PYG description: Paraguayan guaraní - name: QAR description: Qatari riyal - name: RON description: Romanian leu - name: RSD description: Serbian dinar - name: RUB description: Russian ruble - name: RWF description: Rwandan franc - name: SAR description: Saudi riyal - name: SBD description: Solomon Islands dollar - name: SCR description: Seychelles rupee - name: SDG description: Sudanese pound - name: SEK description: Swedish krona - name: SGD description: Singapore dollar - name: SHP description: Saint Helena pound - name: SLL description: Sierra Leonean first leone - name: SLE description: Sierra Leonean second leone - name: SOS description: Somali shilling - name: SRD description: Surinamese dollar - name: SSP description: South Sudanese pound - name: STD description: São Tomé and Príncipe dobra - name: SVC description: Salvadoran colón - name: SYP description: Syrian pound - name: SZL description: Swazi lilangeni - name: THB description: Thai baht - name: TJS description: Tajikstani somoni - name: TMT description: Turkmenistan manat - name: TND description: Tunisian dinar - name: TOP description: Tongan pa'anga - name: TRY description: Turkish lira - name: TTD description: Trinidad and Tobago dollar - name: TWD description: New Taiwan dollar - name: TZS description: Tanzanian shilling - name: UAH description: Ukrainian hryvnia - name: UGX description: Ugandan shilling - name: USD description: United States dollar - name: USN description: United States dollar (next day) - name: USS description: United States dollar (same day) - name: UYI description: Uruguay Peso en Unidedades Indexadas - name: UYU description: Uruguyan peso - name: UZS description: Uzbekistan som - name: VEF description: Venezuelan bolívar soberano - name: VND description: Vietnamese ’Óng - name: VUV description: Vanuatu vatu - name: WST description: Samoan tala - name: XAF description: CFA franc BEAC - name: XAG description: Silver - name: XAU description: Gold - name: XBA description: European Composite Unit - name: XBB description: European Monetary Unit - name: XBC description: European Unit of Account 9 - name: XBD description: European Unit of Account 17 - name: XCD description: East Caribbean dollar - name: XDR description: Special drawing rights (International Monetary Fund) - name: XOF description: CFA franc BCEAO - name: XPD description: Palladium - name: XPF description: CFP franc - name: XPT description: Platinum - name: XTS description: Code reserved for testing - name: XXX description: No currency - name: YER description: Yemeni rial - name: ZAR description: South African rand - name: ZMK description: Zambian kwacha - name: ZMW description: Zambian kwacha - name: BTC description: Bitcoin - name: XUS description: USD Coin description: 'Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://wikipedia.org/wiki/ISO_4217).' x-release-status: PUBLIC UpsertCatalogObjectResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. catalog_object: $ref: '#/components/schemas/CatalogObject' description: The successfully created or updated CatalogObject. id_mappings: type: array items: $ref: '#/components/schemas/CatalogIdMapping' description: The mapping between client and server IDs for this upsert. example: catalog_object: id: R2TA2FOBUGCJZNIWJSOSNAI4 is_deleted: false item_data: abbreviation: Ch description: Hot Chocolate description_html:

Hot Chocolate

description_plaintext: Hot Chocolate name: Cocoa product_type: REGULAR variations: - id: QRT53UP4LITLWGOGBZCUWP63 is_deleted: false item_variation_data: item_id: R2TA2FOBUGCJZNIWJSOSNAI4 name: Small ordinal: 0 pricing_type: VARIABLE_PRICING stockable: true present_at_all_locations: true type: ITEM_VARIATION updated_at: '2021-06-14T15:51:39.021Z' version: 1623685899021 - id: NS77DKEIQ3AEQTCP727DSA7U is_deleted: false item_variation_data: item_id: R2TA2FOBUGCJZNIWJSOSNAI4 name: Large ordinal: 1 price_money: amount: 400 currency: USD pricing_type: FIXED_PRICING stockable: true present_at_all_locations: true type: ITEM_VARIATION updated_at: '2021-06-14T15:51:39.021Z' version: 1623685899021 present_at_all_locations: true type: ITEM updated_at: '2021-06-14T15:51:39.021Z' version: 1623685899021 id_mappings: - client_object_id: '#Cocoa' object_id: R2TA2FOBUGCJZNIWJSOSNAI4 - client_object_id: '#Small' object_id: QRT53UP4LITLWGOGBZCUWP63 - client_object_id: '#Large' object_id: NS77DKEIQ3AEQTCP727DSA7U x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.csharp java: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.java javascript: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.javascript php: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.php python: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.python ruby: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.ruby CatalogDiscount: type: object description: A discount applicable to items. x-release-status: PUBLIC properties: name: type: string description: The discount name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points. maxLength: 255 nullable: true discount_type: $ref: '#/components/schemas/CatalogDiscountType' description: 'Indicates whether the discount is a fixed amount or percentage, or entered at the time of sale. See [CatalogDiscountType](#type-catalogdiscounttype) for possible values' nullable: true percentage: type: string description: 'The percentage of the discount as a string representation of a decimal number, using a `.` as the decimal separator and without a `%` sign. A value of `7.5` corresponds to `7.5%`. Specify a percentage of `0` if `discount_type` is `VARIABLE_PERCENTAGE`. Do not use this field for amount-based or variable discounts.' nullable: true amount_money: $ref: '#/components/schemas/Money' description: 'The amount of the discount. Specify an amount of `0` if `discount_type` is `VARIABLE_AMOUNT`. Do not use this field for percentage-based or variable discounts.' nullable: true pin_required: type: boolean description: 'Indicates whether a mobile staff member needs to enter their PIN to apply the discount to a payment in the Square Point of Sale app.' nullable: true label_color: type: string description: The color of the discount display label in the Square Point of Sale app. This must be a valid hex color code. nullable: true modify_tax_basis: $ref: '#/components/schemas/CatalogDiscountModifyTaxBasis' description: 'Indicates whether this discount should reduce the price used to calculate tax. Most discounts should use `MODIFY_TAX_BASIS`. However, in some circumstances taxes must be calculated based on an item''s price, ignoring a particular discount. For example, in many US jurisdictions, a manufacturer coupon or instant rebate reduces the price a customer pays but does not reduce the sale price used to calculate how much sales tax is due. In this case, the discount representing that manufacturer coupon should have `DO_NOT_MODIFY_TAX_BASIS` for this field. If you are unsure whether you need to use this field, consult your tax professional. See [CatalogDiscountModifyTaxBasis](#type-catalogdiscountmodifytaxbasis) for possible values' nullable: true maximum_amount_money: $ref: '#/components/schemas/Money' description: 'For a percentage discount, the maximum absolute value of the discount. For example, if a 50% discount has a `maximum_amount_money` of $20, a $100 purchase will yield a $20 discount, not a $50 discount.' nullable: true example: object: discount_data: discount_type: FIXED_PERCENTAGE label_color: red name: Welcome to the Dark(Roast) Side! percentage: '5.4' pin_required: false id: '#Maythe4th' present_at_all_locations: true type: DISCOUNT CatalogInfoResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. limits: $ref: '#/components/schemas/CatalogInfoResponseLimits' description: Limits that apply to this API. standard_unit_description_group: $ref: '#/components/schemas/StandardUnitDescriptionGroup' description: Names and abbreviations for standard units. example: limits: batch_delete_max_object_ids: 200 batch_retrieve_max_object_ids: 1000 batch_upsert_max_objects_per_batch: 1000 batch_upsert_max_total_objects: 10000 search_max_page_limit: 1000 update_item_modifier_lists_max_item_ids: 1000 update_item_modifier_lists_max_modifier_lists_to_disable: 1000 update_item_modifier_lists_max_modifier_lists_to_enable: 1000 update_item_taxes_max_item_ids: 1000 update_item_taxes_max_taxes_to_disable: 1000 update_item_taxes_max_taxes_to_enable: 1000 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.csharp java: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.java javascript: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.javascript php: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.php python: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.python ruby: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.ruby CatalogStockConversion: type: object description: 'Represents the rule of conversion between a stockable [CatalogItemVariation](entity:CatalogItemVariation) and a non-stockable sell-by or receive-by `CatalogItemVariation` that share the same underlying stock.' x-release-status: BETA required: - stockable_item_variation_id - stockable_quantity - nonstockable_quantity properties: stockable_item_variation_id: type: string description: 'References to the stockable [CatalogItemVariation](entity:CatalogItemVariation) for this stock conversion. Selling, receiving or recounting the non-stockable `CatalogItemVariation` defined with a stock conversion results in adjustments of this stockable `CatalogItemVariation`. This immutable field must reference a stockable `CatalogItemVariation` that shares the parent [CatalogItem](entity:CatalogItem) of the converted `CatalogItemVariation.`' minLength: 1 stockable_quantity: type: string description: 'The quantity of the stockable item variation (as identified by `stockable_item_variation_id`) equivalent to the non-stockable item variation quantity (as specified in `nonstockable_quantity`) as defined by this stock conversion. It accepts a decimal number in a string format that can take up to 10 digits before the decimal point and up to 5 digits after the decimal point.' minLength: 1 maxLength: 16 nonstockable_quantity: type: string description: 'The converted equivalent quantity of the non-stockable [CatalogItemVariation](entity:CatalogItemVariation) in its measurement unit. The `stockable_quantity` value and this `nonstockable_quantity` value together define the conversion ratio between stockable item variation and the non-stockable item variation. It accepts a decimal number in a string format that can take up to 10 digits before the decimal point and up to 5 digits after the decimal point.' minLength: 1 maxLength: 16 Error: type: object description: 'Represents an error encountered during a request to the Connect API. See [Handling errors](https://developer.squareup.com/docs/build-basics/handling-errors) for more information.' x-release-status: PUBLIC required: - category - code properties: category: $ref: '#/components/schemas/ErrorCategory' description: 'The high-level category for the error. See [ErrorCategory](#type-errorcategory) for possible values' code: $ref: '#/components/schemas/ErrorCode' description: 'The specific code of the error. See [ErrorCode](#type-errorcode) for possible values' detail: type: string description: A human-readable description of the error for debugging purposes. field: type: string description: 'The name of the field provided in the original request (if any) that the error pertains to.' CatalogQuickAmountsSettings: type: object description: A parent Catalog Object model represents a set of Quick Amounts and the settings control the amounts. x-release-status: BETA required: - option properties: option: $ref: '#/components/schemas/CatalogQuickAmountsSettingsOption' description: 'Represents the option seller currently uses on Quick Amounts. See [CatalogQuickAmountsSettingsOption](#type-catalogquickamountssettingsoption) for possible values' eligible_for_auto_amounts: type: boolean description: 'Represents location''s eligibility for auto amounts The boolean should be consistent with whether there are AUTO amounts in the `amounts`.' nullable: true amounts: type: array items: $ref: '#/components/schemas/CatalogQuickAmount' description: Represents a set of Quick Amounts at this location. nullable: true UpdateItemTaxesResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. updated_at: type: string description: The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) of this update in RFC 3339 format, e.g., `2016-09-04T23:59:33.123Z`. example: updated_at: '2016-11-16T22:25:24.878Z' x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.csharp java: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.java javascript: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.javascript php: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.php python: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.python ruby: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.ruby CatalogEcomSeoData: type: object description: SEO data for for a seller's Square Online store. x-release-status: PUBLIC properties: page_title: type: string description: The SEO title used for the Square Online store. nullable: true page_description: type: string description: The SEO description used for the Square Online store. nullable: true permalink: type: string description: The SEO permalink used for the Square Online store. nullable: true InventoryAlertType: type: string enum: - NONE - LOW_QUANTITY x-enum-elements: - name: NONE description: The variation does not display an alert. - name: LOW_QUANTITY description: The variation generates an alert when its quantity is low. description: Indicates whether Square should alert the merchant when the inventory quantity of a CatalogItemVariation is low. x-release-status: PUBLIC SubscriptionPricing: type: object description: Describes the pricing for the subscription. x-release-status: PUBLIC properties: type: $ref: '#/components/schemas/SubscriptionPricingType' description: 'RELATIVE or STATIC See [SubscriptionPricingType](#type-subscriptionpricingtype) for possible values' nullable: true discount_ids: type: array items: type: string description: The ids of the discount catalog objects nullable: true price_money: $ref: '#/components/schemas/Money' description: The price of the subscription, if STATIC nullable: true CatalogModifierList: type: object description: "For a text-based modifier, this encapsulates the modifier's text when its `modifier_type` is `TEXT`. \nFor example, to sell T-shirts with custom prints, a text-based modifier can be used to capture the buyer-supplied \ntext string to be selected for the T-shirt at the time of sale.\n\nFor non text-based modifiers, this encapsulates a non-empty list of modifiers applicable to items \nat the time of sale. Each element of the modifier list is a `CatalogObject` instance of the `MODIFIER` type. \nFor example, a \"Condiments\" modifier list applicable to a \"Hot Dog\" item\nmay contain \"Ketchup\", \"Mustard\", and \"Relish\" modifiers. \n\nA non text-based modifier can be applied to the modified item once or multiple times, if the `selection_type` field \nis set to `SINGLE` or `MULTIPLE`, respectively. On the other hand, a text-based modifier can be applied to the item \nonly once and the `selection_type` field is always set to `SINGLE`." x-release-status: PUBLIC properties: name: type: string description: "The name of the `CatalogModifierList` instance. This is a searchable attribute for use in applicable query filters, and its value length is of \nUnicode code points." maxLength: 255 nullable: true ordinal: type: integer description: The position of this `CatalogModifierList` within a list of `CatalogModifierList` instances. nullable: true selection_type: $ref: '#/components/schemas/CatalogModifierListSelectionType' description: 'Indicates whether a single (`SINGLE`) or multiple (`MULTIPLE`) modifiers from the list can be applied to a single `CatalogItem`. For text-based modifiers, the `selection_type` attribute is always `SINGLE`. The other value is ignored. See [CatalogModifierListSelectionType](#type-catalogmodifierlistselectiontype) for possible values' nullable: true modifiers: type: array items: $ref: '#/components/schemas/CatalogObject' description: "A non-empty list of `CatalogModifier` objects to be included in the `CatalogModifierList`, \nfor non text-based modifiers when the `modifier_type` attribute is `LIST`. Each element of this list \nis a `CatalogObject` instance of the `MODIFIER` type, containing the following attributes:\n```\n{\n\"id\": \"{{catalog_modifier_id}}\",\n\"type\": \"MODIFIER\", \n\"modifier_data\": {{a CatalogModifier instance>}} \n}\n```" nullable: true image_ids: type: array items: type: string description: 'The IDs of images associated with this `CatalogModifierList` instance. Currently these images are not displayed on Square products, but may be displayed in 3rd-party applications.' nullable: true modifier_type: $ref: '#/components/schemas/CatalogModifierListModifierType' description: "The type of the modifier. \n\nWhen this `modifier_type` value is `TEXT`, the `CatalogModifierList` represents a text-based modifier. \nWhen this `modifier_type` value is `LIST`, the `CatalogModifierList` contains a list of `CatalogModifier` objects.\nSee [CatalogModifierListModifierType](#type-catalogmodifierlistmodifiertype) for possible values" x-release-status: BETA nullable: true max_length: type: integer description: "The maximum length, in Unicode points, of the text string of the text-based modifier as represented by \nthis `CatalogModifierList` object with the `modifier_type` set to `TEXT`." x-release-status: BETA nullable: true text_required: type: boolean description: 'Whether the text string must be a non-empty string (`true`) or not (`false`) for a text-based modifier as represented by this `CatalogModifierList` object with the `modifier_type` set to `TEXT`.' x-release-status: BETA nullable: true internal_name: type: string description: "A note for internal use by the business. \n\nFor example, for a text-based modifier applied to a T-shirt item, if the buyer-supplied text of \"Hello, Kitty!\" \nis to be printed on the T-shirt, this `internal_name` attribute can be \"Use italic face\" as \nan instruction for the business to follow. \n\nFor non text-based modifiers, this `internal_name` attribute can be \nused to include SKUs, internal codes, or supplemental descriptions for internal use." maxLength: 512 x-release-status: BETA nullable: true example: id: '#MilkType' modifier_list_data: allow_quantities: false modifiers: - modifier_data: name: Whole Milk price_money: amount: 0 currency: USD present_at_all_locations: true type: MODIFIER - modifier_data: name: Almond Milk price_money: amount: 250 currency: USD present_at_all_locations: true type: MODIFIER - modifier_data: name: Soy Milk price_money: amount: 250 currency: USD present_at_all_locations: true type: MODIFIER name: Milk Type selection_type: SINGLE present_at_all_locations: true type: MODIFIER_LIST CatalogQuickAmount: type: object description: Represents a Quick Amount in the Catalog. x-release-status: BETA required: - type - amount properties: type: $ref: '#/components/schemas/CatalogQuickAmountType' description: 'Represents the type of the Quick Amount. See [CatalogQuickAmountType](#type-catalogquickamounttype) for possible values' amount: $ref: '#/components/schemas/Money' description: Represents the actual amount of the Quick Amount with Money type. score: type: integer description: 'Describes the ranking of the Quick Amount provided by machine learning model, in the range [0, 100]. MANUAL type amount will always have score = 100.' format: int64 nullable: true ordinal: type: integer description: The order in which this Quick Amount should be displayed. format: int64 nullable: true UpsertCatalogObjectRequest: type: object x-release-status: PUBLIC required: - idempotency_key - object properties: idempotency_key: type: string description: 'A value you specify that uniquely identifies this request among all your requests. A common way to create a valid idempotency key is to use a Universally unique identifier (UUID). If you''re unsure whether a particular request was successful, you can reattempt it with the same idempotency key without worrying about creating duplicate objects. See [Idempotency](https://developer.squareup.com/docs/build-basics/common-api-patterns/idempotency) for more information.' minLength: 1 maxLength: 128 object: $ref: '#/components/schemas/CatalogObject' description: 'A CatalogObject to be created or updated. - For updates, the object must be active (the `is_deleted` field is not `true`). - For creates, the object ID must start with `#`. The provided ID is replaced with a server-generated ID.' example: idempotency_key: af3d1afc-7212-4300-b463-0bfc5314a5ae object: id: '#Cocoa' item_data: abbreviation: Ch description_html:

Hot Chocolate

name: Cocoa variations: - id: '#Small' item_variation_data: item_id: '#Cocoa' name: Small pricing_type: VARIABLE_PRICING type: ITEM_VARIATION - id: '#Large' item_variation_data: item_id: '#Cocoa' name: Large price_money: amount: 400 currency: USD pricing_type: FIXED_PRICING type: ITEM_VARIATION type: ITEM x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.csharp java: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.java javascript: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.javascript php: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.php python: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.python ruby: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.ruby CatalogItem: type: object description: A [CatalogObject](entity:CatalogObject) instance of the `ITEM` type, also referred to as an item, in the catalog. x-release-status: PUBLIC properties: name: type: string description: The item's name. This is a searchable attribute for use in applicable query filters, its value must not be empty, and the length is of Unicode code points. maxLength: 512 nullable: true description: type: string description: 'The item''s description. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points. Deprecated at 2022-07-20, this field is planned to retire in 6 months. You should migrate to use `description_html` to set the description of the [CatalogItem](entity:CatalogItem) instance. The `description` and `description_html` field values are kept in sync. If you try to set the both fields, the `description_html` text value overwrites the `description` value. Updates in one field are also reflected in the other, except for when you use an early version before Square API 2022-07-20 and `description_html` is set to blank, setting the `description` value to null does not nullify `description_html`.' maxLength: 4096 x-release-status: DEPRECATED nullable: true abbreviation: type: string description: 'The text of the item''s display label in the Square Point of Sale app. Only up to the first five characters of the string are used. This attribute is searchable, and its value length is of Unicode code points.' maxLength: 24 nullable: true label_color: type: string description: The color of the item's display label in the Square Point of Sale app. This must be a valid hex color code. nullable: true is_taxable: type: boolean description: Indicates whether the item is taxable (`true`) or non-taxable (`false`). Default is `true`. nullable: true category_id: type: string description: The ID of the item's category, if any. Deprecated since 2023-12-13. Use `CatalogItem.categories`, instead. x-release-status: DEPRECATED nullable: true tax_ids: type: array items: type: string description: 'A set of IDs indicating the taxes enabled for this item. When updating an item, any taxes listed here will be added to the item. Taxes may also be added to or deleted from an item using `UpdateItemTaxes`.' nullable: true modifier_list_info: type: array items: $ref: '#/components/schemas/CatalogItemModifierListInfo' description: 'A set of `CatalogItemModifierListInfo` objects representing the modifier lists that apply to this item, along with the overrides and min and max limits that are specific to this item. Modifier lists may also be added to or deleted from an item using `UpdateItemModifierLists`.' nullable: true variations: type: array items: $ref: '#/components/schemas/CatalogObject' description: 'A list of [CatalogItemVariation](entity:CatalogItemVariation) objects for this item. An item must have at least one variation.' nullable: true product_type: $ref: '#/components/schemas/CatalogItemProductType' description: 'The product type of the item. Once set, the `product_type` value cannot be modified. Items of the `LEGACY_SQUARE_ONLINE_SERVICE` and `LEGACY_SQUARE_ONLINE_MEMBERSHIP` product types can be updated but cannot be created using the API. See [CatalogItemProductType](#type-catalogitemproducttype) for possible values' nullable: true skip_modifier_screen: type: boolean description: 'If `false`, the Square Point of Sale app will present the `CatalogItem`''s details screen immediately, allowing the merchant to choose `CatalogModifier`s before adding the item to the cart. This is the default behavior. If `true`, the Square Point of Sale app will immediately add the item to the cart with the pre-selected modifiers, and merchants can edit modifiers by drilling down onto the item''s details. Third-party clients are encouraged to implement similar behaviors.' nullable: true item_options: type: array items: $ref: '#/components/schemas/CatalogItemOptionForItem' description: 'List of item options IDs for this item. Used to manage and group item variations in a specified order. Maximum: 6 item options.' nullable: true image_ids: type: array items: type: string description: 'The IDs of images associated with this `CatalogItem` instance. These images will be shown to customers in Square Online Store. The first image will show up as the icon for this item in POS.' x-release-status: BETA nullable: true sort_name: type: string description: 'A name to sort the item by. If this name is unspecified, namely, the `sort_name` field is absent, the regular `name` field is used for sorting. Its value must not be empty. It is currently supported for sellers of the Japanese locale only.' x-release-status: BETA nullable: true categories: type: array items: $ref: '#/components/schemas/CatalogObjectCategory' description: The list of categories. nullable: true description_html: type: string description: 'The item''s description as expressed in valid HTML elements. The length of this field value, including those of HTML tags, is of Unicode points. With application query filters, the text values of the HTML elements and attributes are searchable. Invalid or unsupported HTML elements or attributes are ignored. Supported HTML elements include: - `a`: Link. Supports linking to website URLs, email address, and telephone numbers. - `b`, `strong`: Bold text - `br`: Line break - `code`: Computer code - `div`: Section - `h1-h6`: Headings - `i`, `em`: Italics - `li`: List element - `ol`: Numbered list - `p`: Paragraph - `ul`: Bullet list - `u`: Underline Supported HTML attributes include: - `align`: Alignment of the text content - `href`: Link destination - `rel`: Relationship between link''s target and source - `target`: Place to open the linked document' maxLength: 65535 nullable: true description_plaintext: type: string description: A server-generated plaintext version of the `description_html` field, without formatting tags. maxLength: 65535 readOnly: true channels: type: array items: type: string description: 'A list of IDs representing channels, such as a Square Online site, where the item can be made visible or available. This field is read only and cannot be edited.' nullable: true is_archived: type: boolean description: Indicates whether this item is archived (`true`) or not (`false`). nullable: true ecom_seo_data: $ref: '#/components/schemas/CatalogEcomSeoData' description: The SEO data for a seller's Square Online store. nullable: true food_and_beverage_details: $ref: '#/components/schemas/CatalogItemFoodAndBeverageDetails' description: The food and beverage-specific details for the `FOOD_AND_BEV` item. nullable: true reporting_category: $ref: '#/components/schemas/CatalogObjectCategory' description: The item's reporting category. nullable: true example: object: id: '#Cocoa' item_data: abbreviation: Ch description: Hot chocolate name: Cocoa visibility: PRIVATE present_at_all_locations: true type: ITEM CatalogCustomAttributeDefinitionAppVisibility: type: string enum: - APP_VISIBILITY_HIDDEN - APP_VISIBILITY_READ_ONLY - APP_VISIBILITY_READ_WRITE_VALUES x-enum-elements: - name: APP_VISIBILITY_HIDDEN description: Other applications cannot read this custom attribute. - name: APP_VISIBILITY_READ_ONLY description: 'Other applications can read this custom attribute definition and values.' - name: APP_VISIBILITY_READ_WRITE_VALUES description: 'Other applications can read and write custom attribute values on objects. They can read but cannot edit the custom attribute definition.' description: 'Defines the visibility of a custom attribute to applications other than their creating application.' x-release-status: PUBLIC SortOrder: type: string enum: - DESC - ASC x-enum-elements: - name: DESC description: The results are returned in descending (e.g., newest-first or Z-A) order. - name: ASC description: The results are returned in ascending (e.g., oldest-first or A-Z) order. description: The order (e.g., chronological or alphabetical) in which results from a request are returned. x-release-status: PUBLIC MeasurementUnit: type: object description: 'Represents a unit of measurement to use with a quantity, such as ounces or inches. Exactly one of the following fields are required: `custom_unit`, `area_unit`, `length_unit`, `volume_unit`, and `weight_unit`.' x-release-status: PUBLIC properties: custom_unit: $ref: '#/components/schemas/MeasurementUnitCustom' description: 'A custom unit of measurement defined by the seller using the Point of Sale app or ad-hoc as an order line item.' nullable: true area_unit: $ref: '#/components/schemas/MeasurementUnitArea' description: 'Represents a standard area unit. See [MeasurementUnitArea](#type-measurementunitarea) for possible values' nullable: true length_unit: $ref: '#/components/schemas/MeasurementUnitLength' description: 'Represents a standard length unit. See [MeasurementUnitLength](#type-measurementunitlength) for possible values' nullable: true volume_unit: $ref: '#/components/schemas/MeasurementUnitVolume' description: 'Represents a standard volume unit. See [MeasurementUnitVolume](#type-measurementunitvolume) for possible values' nullable: true weight_unit: $ref: '#/components/schemas/MeasurementUnitWeight' description: 'Represents a standard unit of weight or mass. See [MeasurementUnitWeight](#type-measurementunitweight) for possible values' nullable: true generic_unit: $ref: '#/components/schemas/MeasurementUnitGeneric' description: 'Reserved for API integrations that lack the ability to specify a real measurement unit See [MeasurementUnitGeneric](#type-measurementunitgeneric) for possible values' nullable: true time_unit: $ref: '#/components/schemas/MeasurementUnitTime' description: 'Represents a standard unit of time. See [MeasurementUnitTime](#type-measurementunittime) for possible values' nullable: true type: $ref: '#/components/schemas/MeasurementUnitUnitType' description: 'Represents the type of the measurement unit. See [MeasurementUnitUnitType](#type-measurementunitunittype) for possible values' nullable: true SearchCatalogObjectsResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. cursor: type: string description: 'The pagination cursor to be used in a subsequent request. If unset, this is the final response. See [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination) for more information.' objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: The CatalogObjects returned. related_objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: A list of CatalogObjects referenced by the objects in the `objects` field. latest_time: type: string description: 'When the associated product catalog was last updated. Will match the value for `end_time` or `cursor` if either field is included in the `SearchCatalog` request.' x-release-status: BETA example: objects: - id: X5DZ5NWWAQ44CKBLKIFQGOWK is_deleted: false item_data: categories: - id: E7CLE5RZZ744BHWVQQEAHI2C ordinal: 0 description: A delicious blend of black tea. name: Tea - Black product_type: REGULAR tax_ids: - ZXITPM6RWHZ7GZ7EIP3YKECM variations: - id: 5GSZPX6EU7MM75S57OONG3V5 is_deleted: false item_variation_data: item_id: X5DZ5NWWAQ44CKBLKIFQGOWK name: Regular ordinal: 1 price_money: amount: 150 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2017-10-26T15:27:31.626Z' version: 1509031651626 - id: XVLBN7DU6JTWHJTG5F265B43 is_deleted: false item_variation_data: item_id: X5DZ5NWWAQ44CKBLKIFQGOWK name: Large ordinal: 2 price_money: amount: 225 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2017-10-26T15:27:31.626Z' version: 1509031651626 visibility: PRIVATE present_at_all_locations: true type: ITEM updated_at: '2017-10-26T15:41:32.337Z' version: 1509032492337 - id: NNNEM3LA656Q46NXLWCNI7S5 is_deleted: false item_data: categories: - id: E7CLE5RZZ744BHWVQQEAHI2C ordinal: 0 description: Relaxing green herbal tea. name: Tea - Green product_type: REGULAR tax_ids: - ZXITPM6RWHZ7GZ7EIP3YKECM variations: - id: FHYBVIA6NVBCSOVETA62WEA4 is_deleted: false item_variation_data: item_id: NNNEM3LA656Q46NXLWCNI7S5 name: Regular ordinal: 1 price_money: amount: 150 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2017-10-26T15:29:00.524Z' version: 1509031740524 visibility: PRIVATE present_at_all_locations: true type: ITEM updated_at: '2017-10-26T15:41:23.232Z' version: 1509032483232 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.csharp java: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.java javascript: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.javascript php: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.php python: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.python ruby: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.ruby TaxInclusionType: type: string enum: - ADDITIVE - INCLUSIVE x-enum-elements: - name: ADDITIVE description: 'The tax is an additive tax. The tax amount is added on top of the CatalogItemVariation price. For example, a $1.00 item with a 10% additive tax would have a total cost to the buyer of $1.10.' - name: INCLUSIVE description: 'The tax is an inclusive tax. The tax amount is included in the CatalogItemVariation price. For example, a $1.00 item with a 10% inclusive tax would have a total cost to the buyer of $1.00, with $0.91 (91 cents) of that total being the cost of the item and $0.09 (9 cents) being tax.' description: Whether to the tax amount should be additional to or included in the CatalogItem price. x-release-status: PUBLIC CatalogTax: type: object description: A tax applicable to an item. x-release-status: PUBLIC properties: name: type: string description: The tax's name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points. maxLength: 255 nullable: true calculation_phase: $ref: '#/components/schemas/TaxCalculationPhase' description: 'Whether the tax is calculated based on a payment''s subtotal or total. See [TaxCalculationPhase](#type-taxcalculationphase) for possible values' nullable: true inclusion_type: $ref: '#/components/schemas/TaxInclusionType' description: 'Whether the tax is `ADDITIVE` or `INCLUSIVE`. See [TaxInclusionType](#type-taxinclusiontype) for possible values' nullable: true percentage: type: string description: 'The percentage of the tax in decimal form, using a `''.''` as the decimal separator and without a `''%''` sign. A value of `7.5` corresponds to 7.5%. For a location-specific tax rate, contact the tax authority of the location or a tax consultant.' nullable: true applies_to_custom_amounts: type: boolean description: 'If `true`, the fee applies to custom amounts entered into the Square Point of Sale app that are not associated with a particular `CatalogItem`.' nullable: true enabled: type: boolean description: A Boolean flag to indicate whether the tax is displayed as enabled (`true`) in the Square Point of Sale app or not (`false`). nullable: true applies_to_product_set_id: type: string description: The ID of a `CatalogProductSet` object. If set, the tax is applicable to all products in the product set. x-release-status: BETA nullable: true example: object: id: '#SalesTax' present_at_all_locations: true tax_data: calculation_phase: TAX_SUBTOTAL_PHASE enabled: true fee_applies_to_custom_amounts: true inclusion_type: ADDITIVE name: Sales Tax percentage: '5.0' type: TAX CatalogCustomAttributeDefinition: type: object description: '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](https://developer.squareup.com/docs/catalog-api/add-custom-attributes)' x-release-status: PUBLIC required: - type - name - allowed_object_types properties: type: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionType' description: 'The type of this custom attribute. Cannot be modified after creation. Required. See [CatalogCustomAttributeDefinitionType](#type-catalogcustomattributedefinitiontype) for possible values' name: type: string description: ' 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.' minLength: 1 maxLength: 255 description: type: string description: '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.' maxLength: 255 nullable: true source_application: $ref: '#/components/schemas/SourceApplication' description: '__Read only.__ Contains information about the application that created this custom attribute definition.' nullable: true allowed_object_types: type: array items: $ref: '#/components/schemas/CatalogObjectType' description: '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](#type-catalogobjecttype) for possible values' seller_visibility: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionSellerVisibility' description: 'The visibility of a custom attribute in seller-facing UIs (including Square Point of Sale applications and Square Dashboard). May be modified. See [CatalogCustomAttributeDefinitionSellerVisibility](#type-catalogcustomattributedefinitionsellervisibility) for possible values' nullable: true app_visibility: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionAppVisibility' description: 'The visibility of a custom attribute to applications other than the application that created the attribute. See [CatalogCustomAttributeDefinitionAppVisibility](#type-catalogcustomattributedefinitionappvisibility) for possible values' nullable: true string_config: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionStringConfig' description: Optionally, populated when `type` = `STRING`, unset otherwise. nullable: true number_config: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionNumberConfig' description: Optionally, populated when `type` = `NUMBER`, unset otherwise. nullable: true selection_config: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionSelectionConfig' description: Populated when `type` is set to `SELECTION`, unset otherwise. nullable: true custom_attribute_usage_count: type: integer description: '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 greater than 100, `custom_attribute_usage_count` will be set to `100`.' readOnly: true key: type: string description: '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_-]`.' minLength: 1 maxLength: 60 pattern: ^[a-zA-Z0-9_-]*$ nullable: true SubscriptionPricingType: type: string enum: - STATIC - RELATIVE x-enum-elements: - name: STATIC description: Static pricing - name: RELATIVE description: Relative pricing description: Determines the pricing of a [Subscription](entity:Subscription) x-release-status: PUBLIC BatchUpsertCatalogObjectsResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: The created successfully created CatalogObjects. updated_at: type: string description: The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) of this update in RFC 3339 format, e.g., "2016-09-04T23:59:33.123Z". id_mappings: type: array items: $ref: '#/components/schemas/CatalogIdMapping' description: The mapping between client and server IDs for this upsert. example: id_mappings: - client_object_id: '#Tea' object_id: 67GA7XA2FWMRYY2VCONTYZJR - client_object_id: '#Coffee' object_id: MQ4TZKOG3SR2EQI3TWEK4AH7 - client_object_id: '#Beverages' object_id: XCS4SCGN4WQYE2VU4U3TKXEH - client_object_id: '#SalesTax' object_id: HP5VNYPKZKTNCKZ2Z5NPUH6A - client_object_id: '#Tea_Mug' object_id: CAJBHUIQH7ONTSZI2KTVOUP6 - client_object_id: '#Coffee_Regular' object_id: GY2GXJTVVPQAPW43GFRR3NG6 - client_object_id: '#Coffee_Large' object_id: JE6VHPSRQL6IWSN26C36CJ7W objects: - created_at: '2023-11-30T19:24:35.4Z' id: 67GA7XA2FWMRYY2VCONTYZJR is_deleted: false item_data: categories: - id: XCS4SCGN4WQYE2VU4U3TKXEH ordinal: -2251731094208512 description: Hot Leaf Juice description_html:

Hot Leaf Juice

description_plaintext: Hot Leaf Juice is_archived: false is_taxable: true name: Tea product_type: REGULAR tax_ids: - HP5VNYPKZKTNCKZ2Z5NPUH6A variations: - created_at: '2023-11-30T19:24:35.4Z' id: CAJBHUIQH7ONTSZI2KTVOUP6 is_deleted: false item_variation_data: item_id: 67GA7XA2FWMRYY2VCONTYZJR name: Mug ordinal: 0 price_money: amount: 150 currency: USD pricing_type: FIXED_PRICING sellable: true stockable: true present_at_all_locations: true type: ITEM_VARIATION updated_at: '2023-11-30T19:24:35.4Z' version: 1701372275400 present_at_all_locations: true type: ITEM updated_at: '2023-11-30T19:24:35.4Z' version: 1701372275400 - created_at: '2023-11-30T19:24:35.4Z' id: MQ4TZKOG3SR2EQI3TWEK4AH7 is_deleted: false item_data: categories: - id: XCS4SCGN4WQYE2VU4U3TKXEH ordinal: -2251662374731776 description: Hot Bean Juice description_html:

Hot Bean Juice

description_plaintext: Hot Bean Juice is_archived: false is_taxable: true name: Coffee product_type: REGULAR tax_ids: - HP5VNYPKZKTNCKZ2Z5NPUH6A variations: - created_at: '2023-11-30T19:24:35.4Z' id: GY2GXJTVVPQAPW43GFRR3NG6 is_deleted: false item_variation_data: item_id: MQ4TZKOG3SR2EQI3TWEK4AH7 name: Regular ordinal: 0 price_money: amount: 250 currency: USD pricing_type: FIXED_PRICING sellable: true stockable: true present_at_all_locations: true type: ITEM_VARIATION updated_at: '2023-11-30T19:24:35.4Z' version: 1701372275400 - created_at: '2023-11-30T19:24:35.4Z' id: JE6VHPSRQL6IWSN26C36CJ7W is_deleted: false item_variation_data: item_id: MQ4TZKOG3SR2EQI3TWEK4AH7 name: Large ordinal: 1 price_money: amount: 350 currency: USD pricing_type: FIXED_PRICING sellable: true stockable: true present_at_all_locations: true type: ITEM_VARIATION updated_at: '2023-11-30T19:24:35.4Z' version: 1701372275400 present_at_all_locations: true type: ITEM updated_at: '2023-11-30T19:24:35.4Z' version: 1701372275400 - category_data: category_type: REGULAR_CATEGORY is_top_level: true name: Beverages online_visibility: true parent_category: ordinal: -2250837741010944 created_at: '2023-11-30T19:24:35.4Z' id: XCS4SCGN4WQYE2VU4U3TKXEH is_deleted: false present_at_all_locations: true type: CATEGORY updated_at: '2023-11-30T19:24:35.4Z' version: 1701372275400 - created_at: '2023-11-30T19:24:35.4Z' id: HP5VNYPKZKTNCKZ2Z5NPUH6A is_deleted: false present_at_all_locations: true tax_data: applies_to_custom_amounts: true calculation_phase: TAX_SUBTOTAL_PHASE enabled: true inclusion_type: ADDITIVE name: Sales Tax percentage: '5.0' type: TAX updated_at: '2023-11-30T19:24:35.4Z' version: 1701372275400 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.csharp java: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.java javascript: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.javascript php: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.php python: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.python ruby: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.ruby CatalogItemFoodAndBeverageDetails: type: object description: The food and beverage-specific details of a `FOOD_AND_BEV` item. x-release-status: PUBLIC properties: calorie_count: type: integer description: The calorie count (in the unit of kcal) for the `FOOD_AND_BEV` type of items. nullable: true dietary_preferences: type: array items: $ref: '#/components/schemas/CatalogItemFoodAndBeverageDetailsDietaryPreference' description: The dietary preferences for the `FOOD_AND_BEV` item. nullable: true ingredients: type: array items: $ref: '#/components/schemas/CatalogItemFoodAndBeverageDetailsIngredient' description: The ingredients for the `FOOD_AND_BEV` type item. nullable: true MeasurementUnitTime: type: string enum: - GENERIC_MILLISECOND - GENERIC_SECOND - GENERIC_MINUTE - GENERIC_HOUR - GENERIC_DAY x-enum-elements: - name: GENERIC_MILLISECOND description: The time is measured in milliseconds. - name: GENERIC_SECOND description: The time is measured in seconds. - name: GENERIC_MINUTE description: The time is measured in minutes. - name: GENERIC_HOUR description: The time is measured in hours. - name: GENERIC_DAY description: The time is measured in days. description: Unit of time used to measure a quantity (a duration). x-release-status: PUBLIC UpdateCatalogImageRequest: type: object x-release-status: BETA required: - idempotency_key properties: idempotency_key: type: string description: 'A unique string that identifies this UpdateCatalogImage request. Keys can be any valid string but must be unique for every UpdateCatalogImage request. See [Idempotency keys](https://developer.squareup.com/docs/build-basics/common-api-patterns/idempotency) for more information.' minLength: 1 maxLength: 128 example: idempotency_key: 528dea59-7bfb-43c1-bd48-4a6bba7dd61f86 image: image_data: caption: A picture of a cup of coffee name: Coffee type: IMAGE object_id: ND6EA5AAJEO5WL3JNNIAQA32 CatalogQueryText: type: object description: The query filter to return the search result whose searchable attribute values contain all of the specified keywords or tokens, independent of the token order or case. x-release-status: PUBLIC required: - keywords properties: keywords: type: array items: type: string description: A list of 1, 2, or 3 search keywords. Keywords with fewer than 3 alphanumeric characters are ignored. CatalogQueryItemsForItemOptions: type: object description: The query filter to return the items containing the specified item option IDs. x-release-status: PUBLIC properties: item_option_ids: type: array items: type: string description: 'A set of `CatalogItemOption` IDs to be used to find associated `CatalogItem`s. All Items that contain all of the given Item Options (in any order) will be returned.' nullable: true MeasurementUnitVolume: type: string enum: - GENERIC_FLUID_OUNCE - GENERIC_SHOT - GENERIC_CUP - GENERIC_PINT - GENERIC_QUART - GENERIC_GALLON - IMPERIAL_CUBIC_INCH - IMPERIAL_CUBIC_FOOT - IMPERIAL_CUBIC_YARD - METRIC_MILLILITER - METRIC_LITER x-enum-elements: - name: GENERIC_FLUID_OUNCE description: The volume is measured in ounces. - name: GENERIC_SHOT description: The volume is measured in shots. - name: GENERIC_CUP description: The volume is measured in cups. - name: GENERIC_PINT description: The volume is measured in pints. - name: GENERIC_QUART description: The volume is measured in quarts. - name: GENERIC_GALLON description: The volume is measured in gallons. - name: IMPERIAL_CUBIC_INCH description: The volume is measured in cubic inches. - name: IMPERIAL_CUBIC_FOOT description: The volume is measured in cubic feet. - name: IMPERIAL_CUBIC_YARD description: The volume is measured in cubic yards. - name: METRIC_MILLILITER description: The volume is measured in metric milliliters. - name: METRIC_LITER description: The volume is measured in metric liters. description: The unit of volume used to measure a quantity. x-release-status: PUBLIC CatalogQuery: type: object description: 'A query composed of one or more different types of filters to narrow the scope of targeted objects when calling the `SearchCatalogObjects` endpoint. Although a query can have multiple filters, only certain query types can be combined per call to [SearchCatalogObjects](api-endpoint:Catalog-SearchCatalogObjects). Any combination of the following types may be used together: - [exact_query](entity:CatalogQueryExact) - [prefix_query](entity:CatalogQueryPrefix) - [range_query](entity:CatalogQueryRange) - [sorted_attribute_query](entity:CatalogQuerySortedAttribute) - [text_query](entity:CatalogQueryText) All other query types cannot be combined with any others. When a query filter is based on an attribute, the attribute must be searchable. Searchable attributes are listed as follows, along their parent types that can be searched for with applicable query filters. Searchable attribute and objects queryable by searchable attributes: - `name`: `CatalogItem`, `CatalogItemVariation`, `CatalogCategory`, `CatalogTax`, `CatalogDiscount`, `CatalogModifier`, `CatalogModifierList`, `CatalogItemOption`, `CatalogItemOptionValue` - `description`: `CatalogItem`, `CatalogItemOptionValue` - `abbreviation`: `CatalogItem` - `upc`: `CatalogItemVariation` - `sku`: `CatalogItemVariation` - `caption`: `CatalogImage` - `display_name`: `CatalogItemOption` For example, to search for [CatalogItem](entity:CatalogItem) objects by searchable attributes, you can use the `"name"`, `"description"`, or `"abbreviation"` attribute in an applicable query filter.' x-release-status: PUBLIC properties: sorted_attribute_query: $ref: '#/components/schemas/CatalogQuerySortedAttribute' description: A query expression to sort returned query result by the given attribute. nullable: true exact_query: $ref: '#/components/schemas/CatalogQueryExact' description: 'An exact query expression to return objects with attribute name and value matching the specified attribute name and value exactly. Value matching is case insensitive.' nullable: true set_query: $ref: '#/components/schemas/CatalogQuerySet' description: 'A set query expression to return objects with attribute name and value matching the specified attribute name and any of the specified attribute values exactly. Value matching is case insensitive.' nullable: true prefix_query: $ref: '#/components/schemas/CatalogQueryPrefix' description: 'A prefix query expression to return objects with attribute values that have a prefix matching the specified string value. Value matching is case insensitive.' nullable: true range_query: $ref: '#/components/schemas/CatalogQueryRange' description: 'A range query expression to return objects with numeric values that lie in the specified range.' nullable: true text_query: $ref: '#/components/schemas/CatalogQueryText' description: 'A text query expression to return objects whose searchable attributes contain all of the given keywords, irrespective of their order. For example, if a `CatalogItem` contains custom attribute values of `{"name": "t-shirt"}` and `{"description": "Small, Purple"}`, the query filter of `{"keywords": ["shirt", "sma", "purp"]}` returns this item.' nullable: true items_for_tax_query: $ref: '#/components/schemas/CatalogQueryItemsForTax' description: A query expression to return items that have any of the specified taxes (as identified by the corresponding `CatalogTax` object IDs) enabled. nullable: true items_for_modifier_list_query: $ref: '#/components/schemas/CatalogQueryItemsForModifierList' description: A query expression to return items that have any of the given modifier list (as identified by the corresponding `CatalogModifierList`s IDs) enabled. nullable: true items_for_item_options_query: $ref: '#/components/schemas/CatalogQueryItemsForItemOptions' description: A query expression to return items that contains the specified item options (as identified the corresponding `CatalogItemOption` IDs). nullable: true item_variations_for_item_option_values_query: $ref: '#/components/schemas/CatalogQueryItemVariationsForItemOptionValues' description: 'A query expression to return item variations (of the [CatalogItemVariation](entity:CatalogItemVariation) type) that contain all of the specified `CatalogItemOption` IDs.' nullable: true ErrorCode: type: string enum: - INTERNAL_SERVER_ERROR - UNAUTHORIZED - ACCESS_TOKEN_EXPIRED - ACCESS_TOKEN_REVOKED - CLIENT_DISABLED - FORBIDDEN - INSUFFICIENT_SCOPES - APPLICATION_DISABLED - V1_APPLICATION - V1_ACCESS_TOKEN - CARD_PROCESSING_NOT_ENABLED - MERCHANT_SUBSCRIPTION_NOT_FOUND - BAD_REQUEST - MISSING_REQUIRED_PARAMETER - INCORRECT_TYPE - INVALID_TIME - INVALID_TIME_RANGE - INVALID_VALUE - INVALID_CURSOR - UNKNOWN_QUERY_PARAMETER - CONFLICTING_PARAMETERS - EXPECTED_JSON_BODY - INVALID_SORT_ORDER - VALUE_REGEX_MISMATCH - VALUE_TOO_SHORT - VALUE_TOO_LONG - VALUE_TOO_LOW - VALUE_TOO_HIGH - VALUE_EMPTY - ARRAY_LENGTH_TOO_LONG - ARRAY_LENGTH_TOO_SHORT - ARRAY_EMPTY - EXPECTED_BOOLEAN - EXPECTED_INTEGER - EXPECTED_FLOAT - EXPECTED_STRING - EXPECTED_OBJECT - EXPECTED_ARRAY - EXPECTED_MAP - EXPECTED_BASE64_ENCODED_BYTE_ARRAY - INVALID_ARRAY_VALUE - INVALID_ENUM_VALUE - INVALID_CONTENT_TYPE - INVALID_FORM_VALUE - CUSTOMER_NOT_FOUND - ONE_INSTRUMENT_EXPECTED - NO_FIELDS_SET - TOO_MANY_MAP_ENTRIES - MAP_KEY_LENGTH_TOO_SHORT - MAP_KEY_LENGTH_TOO_LONG - CUSTOMER_MISSING_NAME - CUSTOMER_MISSING_EMAIL - INVALID_PAUSE_LENGTH - INVALID_DATE - UNSUPPORTED_COUNTRY - UNSUPPORTED_CURRENCY - APPLE_TTP_PIN_TOKEN - CARD_EXPIRED - INVALID_EXPIRATION - INVALID_EXPIRATION_YEAR - INVALID_EXPIRATION_DATE - UNSUPPORTED_CARD_BRAND - UNSUPPORTED_ENTRY_METHOD - INVALID_ENCRYPTED_CARD - INVALID_CARD - PAYMENT_AMOUNT_MISMATCH - GENERIC_DECLINE - CVV_FAILURE - ADDRESS_VERIFICATION_FAILURE - INVALID_ACCOUNT - CURRENCY_MISMATCH - INSUFFICIENT_FUNDS - INSUFFICIENT_PERMISSIONS - CARDHOLDER_INSUFFICIENT_PERMISSIONS - INVALID_LOCATION - TRANSACTION_LIMIT - VOICE_FAILURE - PAN_FAILURE - EXPIRATION_FAILURE - CARD_NOT_SUPPORTED - INVALID_PIN - MISSING_PIN - MISSING_ACCOUNT_TYPE - INVALID_POSTAL_CODE - INVALID_FEES - MANUALLY_ENTERED_PAYMENT_NOT_SUPPORTED - PAYMENT_LIMIT_EXCEEDED - GIFT_CARD_AVAILABLE_AMOUNT - ACCOUNT_UNUSABLE - BUYER_REFUSED_PAYMENT - DELAYED_TRANSACTION_EXPIRED - DELAYED_TRANSACTION_CANCELED - DELAYED_TRANSACTION_CAPTURED - DELAYED_TRANSACTION_FAILED - CARD_TOKEN_EXPIRED - CARD_TOKEN_USED - AMOUNT_TOO_HIGH - UNSUPPORTED_INSTRUMENT_TYPE - REFUND_AMOUNT_INVALID - REFUND_ALREADY_PENDING - PAYMENT_NOT_REFUNDABLE - PAYMENT_NOT_REFUNDABLE_DUE_TO_DISPUTE - REFUND_DECLINED - INSUFFICIENT_PERMISSIONS_FOR_REFUND - INVALID_CARD_DATA - SOURCE_USED - SOURCE_EXPIRED - UNSUPPORTED_LOYALTY_REWARD_TIER - LOCATION_MISMATCH - IDEMPOTENCY_KEY_REUSED - UNEXPECTED_VALUE - SANDBOX_NOT_SUPPORTED - INVALID_EMAIL_ADDRESS - INVALID_PHONE_NUMBER - CHECKOUT_EXPIRED - BAD_CERTIFICATE - INVALID_SQUARE_VERSION_FORMAT - API_VERSION_INCOMPATIBLE - CARD_PRESENCE_REQUIRED - UNSUPPORTED_SOURCE_TYPE - CARD_MISMATCH - PLAID_ERROR - PLAID_ERROR_ITEM_LOGIN_REQUIRED - PLAID_ERROR_RATE_LIMIT - CARD_DECLINED - VERIFY_CVV_FAILURE - VERIFY_AVS_FAILURE - CARD_DECLINED_CALL_ISSUER - CARD_DECLINED_VERIFICATION_REQUIRED - BAD_EXPIRATION - CHIP_INSERTION_REQUIRED - ALLOWABLE_PIN_TRIES_EXCEEDED - RESERVATION_DECLINED - UNKNOWN_BODY_PARAMETER - NOT_FOUND - APPLE_PAYMENT_PROCESSING_CERTIFICATE_HASH_NOT_FOUND - METHOD_NOT_ALLOWED - NOT_ACCEPTABLE - REQUEST_TIMEOUT - CONFLICT - GONE - REQUEST_ENTITY_TOO_LARGE - UNSUPPORTED_MEDIA_TYPE - UNPROCESSABLE_ENTITY - RATE_LIMITED - NOT_IMPLEMENTED - BAD_GATEWAY - SERVICE_UNAVAILABLE - TEMPORARY_ERROR - GATEWAY_TIMEOUT x-enum-elements: - name: INTERNAL_SERVER_ERROR description: A general server error occurred. error-category: API_ERROR - name: UNAUTHORIZED description: A general authorization error occurred. error-category: AUTHENTICATION_ERROR - name: ACCESS_TOKEN_EXPIRED description: The provided access token has expired. error-category: AUTHENTICATION_ERROR - name: ACCESS_TOKEN_REVOKED description: The provided access token has been revoked. error-category: AUTHENTICATION_ERROR - name: CLIENT_DISABLED description: The provided client has been disabled. error-category: AUTHENTICATION_ERROR - name: FORBIDDEN description: A general access error occurred. error-category: AUTHENTICATION_ERROR - name: INSUFFICIENT_SCOPES description: 'The provided access token does not have permission to execute the requested action.' error-category: AUTHENTICATION_ERROR - name: APPLICATION_DISABLED description: The calling application was disabled. error-category: INVALID_REQUEST_ERROR - name: V1_APPLICATION description: 'The calling application was created prior to 2016-03-30 and is not compatible with v2 Square API calls.' error-category: INVALID_REQUEST_ERROR - name: V1_ACCESS_TOKEN description: 'The calling application is using an access token created prior to 2016-03-30 and is not compatible with v2 Square API calls.' error-category: INVALID_REQUEST_ERROR - name: CARD_PROCESSING_NOT_ENABLED description: 'The location provided in the API call is not enabled for credit card processing.' error-category: INVALID_REQUEST_ERROR - name: MERCHANT_SUBSCRIPTION_NOT_FOUND description: A required subscription was not found for the merchant error-category: MERCHANT_SUBSCRIPTION_ERROR - name: BAD_REQUEST description: A general error occurred with the request. error-category: INVALID_REQUEST_ERROR - name: MISSING_REQUIRED_PARAMETER description: 'The request is missing a required path, query, or body parameter.' error-category: INVALID_REQUEST_ERROR - name: INCORRECT_TYPE description: 'The value provided in the request is the wrong type. For example, a string instead of an integer.' error-category: INVALID_REQUEST_ERROR - name: INVALID_TIME description: 'Formatting for the provided time value is incorrect.' error-category: INVALID_REQUEST_ERROR - name: INVALID_TIME_RANGE description: 'The time range provided in the request is invalid. For example, the end time is before the start time.' error-category: INVALID_REQUEST_ERROR - name: INVALID_VALUE description: 'The provided value is invalid. For example, including `%` in a phone number.' error-category: INVALID_REQUEST_ERROR - name: INVALID_CURSOR description: 'The pagination cursor included in the request is invalid.' error-category: INVALID_REQUEST_ERROR - name: UNKNOWN_QUERY_PARAMETER description: 'The query parameters provided is invalid for the requested endpoint.' error-category: INVALID_REQUEST_ERROR - name: CONFLICTING_PARAMETERS description: 'One or more of the request parameters conflict with each other.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_JSON_BODY description: The request body is not a JSON object. error-category: INVALID_REQUEST_ERROR - name: INVALID_SORT_ORDER description: 'The provided sort order is not a valid key. Currently, sort order must be `ASC` or `DESC`.' error-category: INVALID_REQUEST_ERROR - name: VALUE_REGEX_MISMATCH description: 'The provided value does not match an expected regular expression.' error-category: INVALID_REQUEST_ERROR - name: VALUE_TOO_SHORT description: 'The provided string value is shorter than the minimum length allowed.' error-category: INVALID_REQUEST_ERROR - name: VALUE_TOO_LONG description: 'The provided string value is longer than the maximum length allowed.' error-category: INVALID_REQUEST_ERROR - name: VALUE_TOO_LOW description: 'The provided value is less than the supported minimum.' error-category: INVALID_REQUEST_ERROR - name: VALUE_TOO_HIGH description: 'The provided value is greater than the supported maximum.' error-category: INVALID_REQUEST_ERROR - name: VALUE_EMPTY description: 'The provided value has a default (empty) value such as a blank string.' error-category: INVALID_REQUEST_ERROR - name: ARRAY_LENGTH_TOO_LONG description: The provided array has too many elements. error-category: INVALID_REQUEST_ERROR - name: ARRAY_LENGTH_TOO_SHORT description: The provided array has too few elements. error-category: INVALID_REQUEST_ERROR - name: ARRAY_EMPTY description: The provided array is empty. error-category: INVALID_REQUEST_ERROR - name: EXPECTED_BOOLEAN description: 'The endpoint expected the provided value to be a boolean.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_INTEGER description: 'The endpoint expected the provided value to be an integer.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_FLOAT description: 'The endpoint expected the provided value to be a float.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_STRING description: 'The endpoint expected the provided value to be a string.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_OBJECT description: 'The endpoint expected the provided value to be a JSON object.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_ARRAY description: 'The endpoint expected the provided value to be an array or list.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_MAP description: 'The endpoint expected the provided value to be a map or associative array.' error-category: INVALID_REQUEST_ERROR - name: EXPECTED_BASE64_ENCODED_BYTE_ARRAY description: 'The endpoint expected the provided value to be an array encoded in base64.' error-category: INVALID_REQUEST_ERROR - name: INVALID_ARRAY_VALUE description: 'One or more objects in the array does not match the array type.' error-category: INVALID_REQUEST_ERROR - name: INVALID_ENUM_VALUE description: 'The provided static string is not valid for the field.' error-category: INVALID_REQUEST_ERROR - name: INVALID_CONTENT_TYPE description: Invalid content type header. error-category: INVALID_REQUEST_ERROR - name: INVALID_FORM_VALUE description: 'Only relevant for applications created prior to 2016-03-30. Indicates there was an error while parsing form values.' error-category: INVALID_REQUEST_ERROR - name: CUSTOMER_NOT_FOUND description: The provided customer id can't be found in the merchant's customers list. error-category: INVALID_REQUEST_ERROR - name: ONE_INSTRUMENT_EXPECTED description: A general error occurred. error-category: INVALID_REQUEST_ERROR - name: NO_FIELDS_SET description: A general error occurred. error-category: INVALID_REQUEST_ERROR - name: TOO_MANY_MAP_ENTRIES description: Too many entries in the map field. error-category: INVALID_REQUEST_ERROR - name: MAP_KEY_LENGTH_TOO_SHORT description: The length of one of the provided keys in the map is too short. error-category: INVALID_REQUEST_ERROR - name: MAP_KEY_LENGTH_TOO_LONG description: The length of one of the provided keys in the map is too long. error-category: INVALID_REQUEST_ERROR - name: CUSTOMER_MISSING_NAME description: The provided customer does not have a recorded name. error-category: INVALID_REQUEST_ERROR - name: CUSTOMER_MISSING_EMAIL description: The provided customer does not have a recorded email. error-category: INVALID_REQUEST_ERROR - name: INVALID_PAUSE_LENGTH description: The subscription cannot be paused longer than the duration of the current phase. error-category: INVALID_REQUEST_ERROR - name: INVALID_DATE description: The subscription cannot be paused/resumed on the given date. error-category: INVALID_REQUEST_ERROR - name: UNSUPPORTED_COUNTRY description: The API request references an unsupported country. error-category: INVALID_REQUEST_ERROR - name: UNSUPPORTED_CURRENCY description: The API request references an unsupported currency. error-category: INVALID_REQUEST_ERROR - name: APPLE_TTP_PIN_TOKEN description: 'The payment was declined by the card issuer during an Apple Tap to Pay (TTP) transaction with a request for the card''s PIN. This code will be returned alongside `CARD_DECLINED_VERIFICATION_REQUIRED` as a supplemental error, and will include an issuer-provided token in the `details` field that is needed to initiate the PIN collection flow on the iOS device.' error-category: PAYMENT_METHOD_ERROR - name: CARD_EXPIRED description: The card issuer declined the request because the card is expired. error-category: PAYMENT_METHOD_ERROR - name: INVALID_EXPIRATION description: 'The expiration date for the payment card is invalid. For example, it indicates a date in the past.' error-category: PAYMENT_METHOD_ERROR - name: INVALID_EXPIRATION_YEAR description: 'The expiration year for the payment card is invalid. For example, it indicates a year in the past or contains invalid characters.' error-category: INVALID_REQUEST_ERROR - name: INVALID_EXPIRATION_DATE description: 'The expiration date for the payment card is invalid. For example, it contains invalid characters.' error-category: INVALID_REQUEST_ERROR - name: UNSUPPORTED_CARD_BRAND description: The credit card provided is not from a supported issuer. error-category: PAYMENT_METHOD_ERROR - name: UNSUPPORTED_ENTRY_METHOD description: The entry method for the credit card (swipe, dip, tap) is not supported. error-category: PAYMENT_METHOD_ERROR - name: INVALID_ENCRYPTED_CARD description: The encrypted card information is invalid. error-category: PAYMENT_METHOD_ERROR - name: INVALID_CARD description: The credit card cannot be validated based on the provided details. error-category: PAYMENT_METHOD_ERROR - name: PAYMENT_AMOUNT_MISMATCH description: 'The payment was declined because there was a payment amount mismatch. The money amount Square was expecting does not match the amount provided.' error-category: PAYMENT_METHOD_ERROR - name: GENERIC_DECLINE description: 'Square received a decline without any additional information. If the payment information seems correct, the buyer can contact their issuer to ask for more information.' error-category: PAYMENT_METHOD_ERROR - name: CVV_FAILURE description: The card issuer declined the request because the CVV value is invalid. error-category: PAYMENT_METHOD_ERROR - name: ADDRESS_VERIFICATION_FAILURE description: The card issuer declined the request because the postal code is invalid. error-category: PAYMENT_METHOD_ERROR - name: INVALID_ACCOUNT description: The issuer was not able to locate the account on record. error-category: PAYMENT_METHOD_ERROR - name: CURRENCY_MISMATCH description: 'The currency associated with the payment is not valid for the provided funding source. For example, a gift card funded in USD cannot be used to process payments in GBP.' error-category: PAYMENT_METHOD_ERROR - name: INSUFFICIENT_FUNDS description: The funding source has insufficient funds to cover the payment. error-category: PAYMENT_METHOD_ERROR - name: INSUFFICIENT_PERMISSIONS description: 'The Square account does not have the permissions to accept this payment. For example, Square may limit which merchants are allowed to receive gift card payments.' error-category: PAYMENT_METHOD_ERROR - name: CARDHOLDER_INSUFFICIENT_PERMISSIONS description: 'The card issuer has declined the transaction due to restrictions on where the card can be used. For example, a gift card is limited to a single merchant.' error-category: PAYMENT_METHOD_ERROR - name: INVALID_LOCATION description: 'The Square account cannot take payments in the specified region. A Square account can take payments only from the region where the account was created.' error-category: PAYMENT_METHOD_ERROR - name: TRANSACTION_LIMIT description: 'The card issuer has determined the payment amount is either too high or too low. The API returns the error code mostly for credit cards (for example, the card reached the credit limit). However, sometimes the issuer bank can indicate the error for debit or prepaid cards (for example, card has insufficient funds).' error-category: PAYMENT_METHOD_ERROR - name: VOICE_FAILURE description: The card issuer declined the request because the issuer requires voice authorization from the cardholder. The seller should ask the customer to contact the card issuing bank to authorize the payment. error-category: PAYMENT_METHOD_ERROR - name: PAN_FAILURE description: 'The specified card number is invalid. For example, it is of incorrect length or is incorrectly formatted.' error-category: PAYMENT_METHOD_ERROR - name: EXPIRATION_FAILURE description: 'The card expiration date is either invalid or indicates that the card is expired.' error-category: PAYMENT_METHOD_ERROR - name: CARD_NOT_SUPPORTED description: 'The card is not supported either in the geographic region or by the [merchant category code](https://developer.squareup.com/docs/locations-api#initialize-a-merchant-category-code) (MCC).' error-category: PAYMENT_METHOD_ERROR - name: INVALID_PIN description: The card issuer declined the request because the PIN is invalid. error-category: PAYMENT_METHOD_ERROR - name: MISSING_PIN description: The payment is missing a required PIN. error-category: PAYMENT_METHOD_ERROR - name: MISSING_ACCOUNT_TYPE description: The payment is missing a required ACCOUNT_TYPE parameter. error-category: PAYMENT_METHOD_ERROR - name: INVALID_POSTAL_CODE description: The postal code is incorrectly formatted. error-category: PAYMENT_METHOD_ERROR - name: INVALID_FEES description: The app_fee_money on a payment is too high. error-category: PAYMENT_METHOD_ERROR - name: MANUALLY_ENTERED_PAYMENT_NOT_SUPPORTED description: The card must be swiped, tapped, or dipped. Payments attempted by manually entering the card number are declined. error-category: PAYMENT_METHOD_ERROR - name: PAYMENT_LIMIT_EXCEEDED description: Square declined the request because the payment amount exceeded the processing limit for this merchant. error-category: PAYMENT_METHOD_ERROR - name: GIFT_CARD_AVAILABLE_AMOUNT description: 'When a Gift Card is a payment source, you can allow taking a partial payment by adding the `accept_partial_authorization` parameter in the request. However, taking such a partial payment does not work if your request also includes `tip_money`, `app_fee_money`, or both. Square declines such payments and returns the `GIFT_CARD_AVAILABLE_AMOUNT` error. For more information, see [CreatePayment errors (additional information)](https://developer.squareup.com/docs/payments-api/error-codes#createpayment-errors-additional-information).' error-category: PAYMENT_METHOD_ERROR - name: ACCOUNT_UNUSABLE description: The account provided cannot carry out transactions. error-category: PAYMENT_METHOD_ERROR - name: BUYER_REFUSED_PAYMENT description: Bank account rejected or was not authorized for the payment. error-category: PAYMENT_METHOD_ERROR - name: DELAYED_TRANSACTION_EXPIRED description: The application tried to update a delayed-capture payment that has expired. error-category: INVALID_REQUEST_ERROR - name: DELAYED_TRANSACTION_CANCELED description: The application tried to cancel a delayed-capture payment that was already cancelled. error-category: INVALID_REQUEST_ERROR - name: DELAYED_TRANSACTION_CAPTURED description: The application tried to capture a delayed-capture payment that was already captured. error-category: INVALID_REQUEST_ERROR - name: DELAYED_TRANSACTION_FAILED description: The application tried to update a delayed-capture payment that failed. error-category: INVALID_REQUEST_ERROR - name: CARD_TOKEN_EXPIRED description: The provided card token (nonce) has expired. error-category: INVALID_REQUEST_ERROR - name: CARD_TOKEN_USED description: The provided card token (nonce) was already used to process the payment or refund. error-category: INVALID_REQUEST_ERROR - name: AMOUNT_TOO_HIGH description: The requested payment amount is too high for the provided payment source. error-category: INVALID_REQUEST_ERROR - name: UNSUPPORTED_INSTRUMENT_TYPE description: The API request references an unsupported instrument type. error-category: INVALID_REQUEST_ERROR - name: REFUND_AMOUNT_INVALID description: The requested refund amount exceeds the amount available to refund. error-category: REFUND_ERROR - name: REFUND_ALREADY_PENDING description: The payment already has a pending refund. error-category: REFUND_ERROR - name: PAYMENT_NOT_REFUNDABLE description: The payment is not refundable. For example, the payment is too old to be refunded. error-category: REFUND_ERROR - name: PAYMENT_NOT_REFUNDABLE_DUE_TO_DISPUTE description: The payment is not refundable because it has been disputed. error-category: REFUND_ERROR - name: REFUND_DECLINED description: Request failed - The card issuer declined the refund. error-category: REFUND_ERROR - name: INSUFFICIENT_PERMISSIONS_FOR_REFUND description: The Square account does not have the permissions to process this refund. error-category: REFUND_ERROR - name: INVALID_CARD_DATA description: Generic error - the provided card data is invalid. error-category: INVALID_REQUEST_ERROR - name: SOURCE_USED description: The provided source id was already used to create a card. error-category: INVALID_REQUEST_ERROR - name: SOURCE_EXPIRED description: The provided source id has expired. error-category: INVALID_REQUEST_ERROR - name: UNSUPPORTED_LOYALTY_REWARD_TIER description: 'The referenced loyalty program reward tier is not supported. This could happen if the reward tier created in a first party application is incompatible with the Loyalty API.' error-category: INVALID_REQUEST_ERROR - name: LOCATION_MISMATCH description: Generic error - the given location does not matching what is expected. error-category: INVALID_REQUEST_ERROR - name: IDEMPOTENCY_KEY_REUSED description: The provided idempotency key has already been used. error-category: INVALID_REQUEST_ERROR - name: UNEXPECTED_VALUE description: General error - the value provided was unexpected. error-category: INVALID_REQUEST_ERROR - name: SANDBOX_NOT_SUPPORTED description: The API request is not supported in sandbox. error-category: INVALID_REQUEST_ERROR - name: INVALID_EMAIL_ADDRESS description: The provided email address is invalid. error-category: INVALID_REQUEST_ERROR - name: INVALID_PHONE_NUMBER description: The provided phone number is invalid. error-category: INVALID_REQUEST_ERROR - name: CHECKOUT_EXPIRED description: The provided checkout URL has expired. error-category: INVALID_REQUEST_ERROR - name: BAD_CERTIFICATE description: Bad certificate. error-category: INVALID_REQUEST_ERROR - name: INVALID_SQUARE_VERSION_FORMAT description: The provided Square-Version is incorrectly formatted. error-category: INVALID_REQUEST_ERROR - name: API_VERSION_INCOMPATIBLE description: The provided Square-Version is incompatible with the requested action. error-category: INVALID_REQUEST_ERROR - name: CARD_PRESENCE_REQUIRED description: The transaction requires that a card be present. error-category: INVALID_REQUEST_ERROR - name: UNSUPPORTED_SOURCE_TYPE description: The API request references an unsupported source type. error-category: INVALID_REQUEST_ERROR - name: CARD_MISMATCH description: The provided card does not match what is expected. error-category: REFUND_ERROR - name: PLAID_ERROR description: Generic plaid error error-category: EXTERNAL_VENDOR_ERROR - name: PLAID_ERROR_ITEM_LOGIN_REQUIRED description: Plaid error - ITEM_LOGIN_REQUIRED error-category: EXTERNAL_VENDOR_ERROR - name: PLAID_ERROR_RATE_LIMIT description: Plaid error - RATE_LIMIT error-category: EXTERNAL_VENDOR_ERROR - name: CARD_DECLINED description: The card was declined. error-category: PAYMENT_METHOD_ERROR - name: VERIFY_CVV_FAILURE description: The CVV could not be verified. error-category: PAYMENT_METHOD_ERROR - name: VERIFY_AVS_FAILURE description: The AVS could not be verified. error-category: PAYMENT_METHOD_ERROR - name: CARD_DECLINED_CALL_ISSUER description: 'The payment card was declined with a request for the card holder to call the issuer.' error-category: PAYMENT_METHOD_ERROR - name: CARD_DECLINED_VERIFICATION_REQUIRED description: 'The payment card was declined with a request for additional verification.' error-category: PAYMENT_METHOD_ERROR - name: BAD_EXPIRATION description: 'The card expiration date is either missing or incorrectly formatted.' error-category: PAYMENT_METHOD_ERROR - name: CHIP_INSERTION_REQUIRED description: 'The card issuer requires that the card be read using a chip reader.' error-category: PAYMENT_METHOD_ERROR - name: ALLOWABLE_PIN_TRIES_EXCEEDED description: 'The card has exhausted its available pin entry retries set by the card issuer. Resolving the error typically requires the card holder to contact the card issuer.' error-category: PAYMENT_METHOD_ERROR - name: RESERVATION_DECLINED description: The card issuer declined the refund. error-category: REFUND_ERROR - name: UNKNOWN_BODY_PARAMETER description: The body parameter is not recognized by the requested endpoint. error-category: INVALID_REQUEST_ERROR - name: NOT_FOUND description: Not Found - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: APPLE_PAYMENT_PROCESSING_CERTIFICATE_HASH_NOT_FOUND description: Square could not find the associated Apple Pay certificate. error-category: INVALID_REQUEST_ERROR - name: METHOD_NOT_ALLOWED description: Method Not Allowed - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: NOT_ACCEPTABLE description: Not Acceptable - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: REQUEST_TIMEOUT description: Request Timeout - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: CONFLICT description: Conflict - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: GONE description: 'The target resource is no longer available and this condition is likely to be permanent.' error-category: INVALID_REQUEST_ERROR - name: REQUEST_ENTITY_TOO_LARGE description: Request Entity Too Large - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: UNSUPPORTED_MEDIA_TYPE description: Unsupported Media Type - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: UNPROCESSABLE_ENTITY description: Unprocessable Entity - a general error occurred. error-category: INVALID_REQUEST_ERROR - name: RATE_LIMITED description: Rate Limited - a general error occurred. error-category: RATE_LIMIT_ERROR - name: NOT_IMPLEMENTED description: Not Implemented - a general error occurred. error-category: API_ERROR - name: BAD_GATEWAY description: Bad Gateway - a general error occurred. error-category: API_ERROR - name: SERVICE_UNAVAILABLE description: Service Unavailable - a general error occurred. error-category: API_ERROR - name: TEMPORARY_ERROR description: 'A temporary internal error occurred. You can safely retry your call using the same idempotency key.' error-category: PAYMENT_METHOD_ERROR - name: GATEWAY_TIMEOUT description: Gateway Timeout - a general error occurred. error-category: API_ERROR description: 'Indicates the specific error that occurred during a request to a Square API.' x-release-status: PUBLIC CatalogV1Id: type: object description: A Square API V1 identifier of an item, including the object ID and its associated location ID. x-release-status: PUBLIC properties: catalog_v1_id: type: string description: The ID for an object used in the Square API V1, if the object ID differs from the Square API V2 object ID. nullable: true location_id: type: string description: The ID of the `Location` this Connect V1 ID is associated with. nullable: true CatalogDiscountModifyTaxBasis: type: string enum: - MODIFY_TAX_BASIS - DO_NOT_MODIFY_TAX_BASIS x-enum-elements: - name: MODIFY_TAX_BASIS description: Application of the discount will modify the tax basis. - name: DO_NOT_MODIFY_TAX_BASIS description: Application of the discount will not modify the tax basis. x-release-status: PUBLIC CatalogTimePeriod: type: object description: Represents a time period - either a single period or a repeating period. x-release-status: PUBLIC properties: event: type: string description: 'An iCalendar (RFC 5545) [event](https://tools.ietf.org/html/rfc5545#section-3.6.1), which specifies the name, timing, duration and recurrence of this time period. Example: ``` DTSTART:20190707T180000 DURATION:P2H RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR ``` Only `SUMMARY`, `DTSTART`, `DURATION` and `RRULE` fields are supported. `DTSTART` must be in local (unzoned) time format. Note that while `BEGIN:VEVENT` and `END:VEVENT` is not required in the request. The response will always include them.' nullable: true CreateCatalogImageRequest: type: object x-release-status: PUBLIC required: - idempotency_key - image properties: idempotency_key: type: string description: 'A unique string that identifies this CreateCatalogImage request. Keys can be any valid string but must be unique for every CreateCatalogImage request. See [Idempotency keys](https://developer.squareup.com/docs/build-basics/common-api-patterns/idempotency) for more information.' minLength: 1 maxLength: 128 object_id: type: string description: 'Unique ID of the `CatalogObject` to attach this `CatalogImage` object to. Leave this field empty to create unattached images, for example if you are building an integration where an image can be attached to catalog items at a later time.' image: $ref: '#/components/schemas/CatalogObject' description: The new `CatalogObject` of the `IMAGE` type, namely, a `CatalogImage` object, to encapsulate the specified image file. is_primary: type: boolean description: 'If this is set to `true`, the image created will be the primary, or first image of the object referenced by `object_id`. If the `CatalogObject` already has a primary `CatalogImage`, setting this field to `true` will replace the primary image. If this is set to `false` and you use the Square API version 2021-12-15 or later, the image id will be appended to the list of `image_ids` on the object. With Square API version 2021-12-15 or later, the default value is `false`. Otherwise, the effective default value is `true`.' x-release-status: BETA example: idempotency_key: 528dea59-7bfb-43c1-bd48-4a6bba7dd61f86 image: id: '#TEMP_ID' image_data: caption: A picture of a cup of coffee type: IMAGE object_id: ND6EA5AAJEO5WL3JNNIAQA32 CatalogQueryExact: type: object description: The query filter to return the search result by exact match of the specified attribute name and value. x-release-status: PUBLIC required: - attribute_name - attribute_value properties: attribute_name: type: string description: The name of the attribute to be searched. Matching of the attribute name is exact. minLength: 1 attribute_value: type: string description: 'The desired value of the search attribute. Matching of the attribute value is case insensitive and can be partial. For example, if a specified value of "sma", objects with the named attribute value of "Small", "small" are both matched.' CatalogCustomAttributeDefinitionSellerVisibility: type: string enum: - SELLER_VISIBILITY_HIDDEN - SELLER_VISIBILITY_READ_WRITE_VALUES x-enum-elements: - name: SELLER_VISIBILITY_HIDDEN description: 'Sellers cannot read this custom attribute in Square client applications or Square APIs.' - name: SELLER_VISIBILITY_READ_WRITE_VALUES description: 'Sellers can read and write this custom attribute value in catalog objects, but cannot edit the custom attribute definition.' description: '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).' x-release-status: PUBLIC CatalogIdMapping: type: object description: 'A mapping between a temporary client-supplied ID and a permanent server-generated ID. When calling [UpsertCatalogObject](api-endpoint:Catalog-UpsertCatalogObject) or [BatchUpsertCatalogObjects](api-endpoint:Catalog-BatchUpsertCatalogObjects) to create a [CatalogObject](entity:CatalogObject) instance, you can supply a temporary ID for the to-be-created object, especially when the object is to be referenced elsewhere in the same request body. This temporary ID can be any string unique within the call, but must be prefixed by "#". After the request is submitted and the object created, a permanent server-generated ID is assigned to the new object. The permanent ID is unique across the Square catalog.' x-release-status: PUBLIC properties: client_object_id: type: string description: The client-supplied temporary `#`-prefixed ID for a new `CatalogObject`. nullable: true object_id: type: string description: The permanent ID for the CatalogObject created by the server. nullable: true CatalogItemOption: type: object description: A group of variations for a `CatalogItem`. x-release-status: PUBLIC properties: name: type: string description: 'The item option''s display name for the seller. Must be unique across all item options. This is a searchable attribute for use in applicable query filters.' nullable: true display_name: type: string description: The item option's display name for the customer. This is a searchable attribute for use in applicable query filters. nullable: true description: type: string description: 'The item option''s human-readable description. Displayed in the Square Point of Sale app for the seller and in the Online Store or on receipts for the buyer. This is a searchable attribute for use in applicable query filters.' nullable: true show_colors: type: boolean description: If true, display colors for entries in `values` when present. nullable: true values: type: array items: $ref: '#/components/schemas/CatalogObject' description: 'A list of CatalogObjects containing the `CatalogItemOptionValue`s for this item.' nullable: true CategoryPathToRootNode: type: object description: A node in the path from a retrieved category to its root node. x-release-status: PUBLIC properties: category_id: type: string description: The category's ID. nullable: true category_name: type: string description: The category's name. nullable: true CatalogCustomAttributeDefinitionSelectionConfigCustomAttributeSelection: type: object description: A named selection for this `SELECTION`-type custom attribute definition. x-release-status: PUBLIC required: - name properties: uid: type: string description: Unique ID set by Square. nullable: true name: type: string description: Selection name, unique within `allowed_selections`. minLength: 1 maxLength: 255 MeasurementUnitGeneric: type: string enum: - UNIT x-enum-elements: - name: UNIT description: The generic unit. x-release-status: PUBLIC CatalogPricingType: type: string enum: - FIXED_PRICING - VARIABLE_PRICING x-enum-elements: - name: FIXED_PRICING description: The catalog item variation's price is fixed. - name: VARIABLE_PRICING description: The catalog item variation's price is entered at the time of sale. description: Indicates whether the price of a CatalogItemVariation should be entered manually at the time of sale. x-release-status: PUBLIC StandardUnitDescription: type: object description: Contains the name and abbreviation for standard measurement unit. x-release-status: PUBLIC properties: unit: $ref: '#/components/schemas/MeasurementUnit' description: Identifies the measurement unit being described. nullable: true name: type: string description: UI display name of the measurement unit. For example, 'Pound'. nullable: true abbreviation: type: string description: UI display abbreviation for the measurement unit. For example, 'lb'. nullable: true CatalogObjectBatch: type: object description: A batch of catalog objects. x-release-status: PUBLIC required: - objects properties: objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: A list of CatalogObjects belonging to this batch. CatalogCustomAttributeDefinitionType: type: string enum: - STRING - BOOLEAN - NUMBER - SELECTION x-enum-elements: - name: STRING description: A free-form string containing up to 255 characters. - name: BOOLEAN description: A `true` or `false` value. - name: NUMBER description: A decimal string representation of a number. Can support up to 5 digits after the decimal point. - name: SELECTION description: One or more choices from `allowed_selections`. description: Defines the possible types for a custom attribute. x-release-status: PUBLIC SearchCatalogItemsResponse: type: object description: Defines the response body returned from the [SearchCatalogItems](api-endpoint:Catalog-SearchCatalogItems) endpoint. x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. items: type: array items: $ref: '#/components/schemas/CatalogObject' description: Returned items matching the specified query expressions. cursor: type: string description: Pagination token used in the next request to return more of the search result. matched_variation_ids: type: array items: type: string description: Ids of returned item variations matching the specified query expression. example: items: - custom_attribute_values: BRAND: custom_attribute_definition_id: BRAND_DEFINITION_ID key: BRAND name: Brand string_value: Dark Horse type: STRING VARIETAL: custom_attribute_definition_id: VARIETAL_DEFINITION_ID key: VARIETAL name: Varietal selection_uid_values: - MERLOT_SELECTION_ID - null type: SELECTION VINTAGE: custom_attribute_definition_id: EI7IJQDUKYSHULREPIPH6HNU key: VINTAGE name: Vintage number_value: 2018 type: NUMBER id: GPOKJPTV2KDLVKCADJ7I77EZ is_deleted: false item_data: description: A nice red wine is_archived: false name: Dark Horse Merlot 2018 product_type: REGULAR variations: - id: VBJNPHCOKDFECR6VU25WRJUD is_deleted: false item_variation_data: item_id: GPOKJPTV2KDLVKCADJ7I77EZ name: 750 mL ordinal: 0 price_money: amount: 1000 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2020-06-18T17:55:56.646Z' version: 1592502956646 present_at_all_locations: true type: ITEM updated_at: '2020-06-18T17:55:56.646Z' version: 1592502956646 matched_variation_ids: - VBJNPHCOKDFECR6VU25WRJUD CatalogQuerySet: type: object description: 'The query filter to return the search result(s) by exact match of the specified `attribute_name` and any of the `attribute_values`.' x-release-status: PUBLIC required: - attribute_name - attribute_values properties: attribute_name: type: string description: The name of the attribute to be searched. Matching of the attribute name is exact. minLength: 1 attribute_values: type: array items: type: string description: 'The desired values of the search attribute. Matching of the attribute values is exact and case insensitive. A maximum of 250 values may be searched in a request.' CatalogObjectType: type: string enum: - ITEM - IMAGE - CATEGORY - ITEM_VARIATION - TAX - DISCOUNT - MODIFIER_LIST - MODIFIER - PRICING_RULE - PRODUCT_SET - TIME_PERIOD - MEASUREMENT_UNIT - SUBSCRIPTION_PLAN_VARIATION - ITEM_OPTION - ITEM_OPTION_VAL - CUSTOM_ATTRIBUTE_DEFINITION - QUICK_AMOUNTS_SETTINGS - SUBSCRIPTION_PLAN - AVAILABILITY_PERIOD x-enum-elements: - name: ITEM description: 'The `CatalogObject` instance is of the [CatalogItem](entity:CatalogItem) type and represents an item. The item-specific data must be set on the `item_data` field.' - name: IMAGE description: 'The `CatalogObject` instance is of the [CatalogImage](entity:CatalogImage) type and represents an image. The image-specific data must be set on the `image_data` field.' - name: CATEGORY description: 'The `CatalogObject` instance is of the [CatalogCategory](entity:CatalogCategory) type and represents a category. The category-specific data must be set on the `category_data` field.' - name: ITEM_VARIATION description: 'The `CatalogObject` instance is of the [CatalogItemVariation](entity:CatalogItemVariation) type and represents an item variation, also referred to as variation. The item variation-specific data must be set on the `item_variation_data` field.' - name: TAX description: 'The `CatalogObject` instance is of the [CatalogTax](entity:CatalogTax) type and represents a tax. The tax-specific data must be set on the `tax_data` field.' - name: DISCOUNT description: 'The `CatalogObject` instance is of the [CatalogDiscount](entity:CatalogDiscount) type and represents a discount. The discount-specific data must be set on the `discount_data` field.' - name: MODIFIER_LIST description: 'The `CatalogObject` instance is of the [CatalogModifierList](entity:CatalogModifierList) type and represents a modifier list. The modifier-list-specific data must be set on the `modifier_list_data` field.' - name: MODIFIER description: 'The `CatalogObject` instance is of the [CatalogModifier](entity:CatalogModifier) type and represents a modifier. The modifier-specific data must be set on the `modifier_data` field.' - name: PRICING_RULE description: 'The `CatalogObject` instance is of the [CatalogPricingRule](entity:CatalogPricingRule) type and represents a pricing rule. The pricing-rule-specific data must be set on the `pricing_rule_data` field.' - name: PRODUCT_SET description: 'The `CatalogObject` instance is of the [CatalogProductSet](entity:CatalogProductSet) type and represents a product set. The product-set-specific data will be stored in the `product_set_data` field.' - name: TIME_PERIOD description: 'The `CatalogObject` instance is of the [CatalogTimePeriod](entity:CatalogTimePeriod) type and represents a time period. The time-period-specific data must be set on the `time_period_data` field.' - name: MEASUREMENT_UNIT description: 'The `CatalogObject` instance is of the [CatalogMeasurementUnit](entity:CatalogMeasurementUnit) type and represents a measurement unit specifying the unit of measure and precision in which an item variation is sold. The measurement-unit-specific data must set on the `measurement_unit_data` field.' - name: SUBSCRIPTION_PLAN_VARIATION description: 'The `CatalogObject` instance is of the [CatalogSubscriptionPlan](entity:CatalogSubscriptionPlan) type and represents a subscription plan. The subscription-plan-specific data must be stored on the `subscription_plan_data` field.' - name: ITEM_OPTION description: 'The `CatalogObject` instance is of the [CatalogItemOption](entity:CatalogItemOption) type and represents a list of options (such as a color or size of a T-shirt) that can be assigned to item variations. The item-option-specific data must be on the `item_option_data` field.' - name: ITEM_OPTION_VAL description: 'The `CatalogObject` instance is of the [CatalogItemOptionValue](entity:CatalogItemOptionValue) type and represents a value associated with one or more item options. For example, an item option of "Size" may have item option values such as "Small" or "Medium". The item-option-value-specific data must be on the `item_option_value_data` field.' - name: CUSTOM_ATTRIBUTE_DEFINITION description: 'The `CatalogObject` instance is of the [CatalogCustomAttributeDefinition](entity:CatalogCustomAttributeDefinition) type and represents the definition of a custom attribute. The custom-attribute-definition-specific data must be set on the `custom_attribute_definition_data` field.' - name: QUICK_AMOUNTS_SETTINGS description: 'The `CatalogObject` instance is of the [CatalogQuickAmountsSettings](entity:CatalogQuickAmountsSettings) type and represents settings to configure preset charges for quick payments at each location. For example, a location may have a list of both AUTO and MANUAL quick amounts that are set to DISABLED. The quick-amounts-settings-specific data must be set on the `quick_amounts_settings_data` field.' - name: SUBSCRIPTION_PLAN description: 'The `CatalogObject` instance is of the [CatalogSubscriptionPlan](entity:CatalogSubscriptionPlan) type and represents a subscription plan. The subscription plan specific data must be stored on the `subscription_plan_data` field.' - name: AVAILABILITY_PERIOD description: 'The `CatalogObject` instance is of the [CatalogAvailabilityPeriod](entity:CatalogAvailabilityPeriod) type and represents an availability period. The availability period specific data must be stored on the `availability_period_data` field.' description: 'Possible types of CatalogObjects returned from the catalog, each containing type-specific properties in the `*_data` field corresponding to the specified object type.' x-release-status: PUBLIC UpdateCatalogImageResponse: type: object x-release-status: BETA properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. image: $ref: '#/components/schemas/CatalogObject' description: 'The newly updated `CatalogImage` including a Square-generated URL for the encapsulated image file.' example: image: id: L52QOQN2SW3M5QTF9JOCQKNB image_data: caption: A picture of a cup of coffee name: Coffee url: https://... type: IMAGE CreateCatalogImageResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. image: $ref: '#/components/schemas/CatalogObject' description: 'The newly created `CatalogImage` including a Square-generated URL for the encapsulated image file.' example: image: id: KQLFFHA6K6J3YQAQAWDQAL57 image_data: caption: A picture of a cup of coffee url: https://... type: IMAGE CatalogSubscriptionPlan: type: object description: 'Describes a subscription plan. A subscription plan represents what you want to sell in a subscription model, and includes references to each of the associated subscription plan variations. For more information, see [Subscription Plans and Variations](https://developer.squareup.com/docs/subscriptions-api/plans-and-variations).' x-release-status: PUBLIC required: - name properties: name: type: string description: The name of the plan. phases: type: array items: $ref: '#/components/schemas/SubscriptionPhase' description: 'A list of SubscriptionPhase containing the [SubscriptionPhase](entity:SubscriptionPhase) for this plan. This field it required. Not including this field will throw a REQUIRED_FIELD_MISSING error' nullable: true subscription_plan_variations: type: array items: $ref: '#/components/schemas/CatalogObject' description: The list of subscription plan variations available for this product nullable: true eligible_item_ids: type: array items: type: string description: The list of IDs of `CatalogItems` that are eligible for subscription by this SubscriptionPlan's variations. nullable: true eligible_category_ids: type: array items: type: string description: The list of IDs of `CatalogCategory` that are eligible for subscription by this SubscriptionPlan's variations. nullable: true all_items: type: boolean description: If true, all items in the merchant's catalog are subscribable by this SubscriptionPlan. nullable: true DayOfWeek: type: string enum: - SUN - MON - TUE - WED - THU - FRI - SAT x-enum-elements: - name: SUN description: Sunday - name: MON description: Monday - name: TUE description: Tuesday - name: WED description: Wednesday - name: THU description: Thursday - name: FRI description: Friday - name: SAT description: Saturday description: Indicates the specific day of the week. x-release-status: PUBLIC CatalogItemModifierListInfo: type: object description: 'References a text-based modifier or a list of non text-based modifiers applied to a `CatalogItem` instance and specifies supported behaviors of the application.' x-release-status: PUBLIC required: - modifier_list_id properties: modifier_list_id: type: string description: The ID of the `CatalogModifierList` controlled by this `CatalogModifierListInfo`. minLength: 1 modifier_overrides: type: array items: $ref: '#/components/schemas/CatalogModifierOverride' description: A set of `CatalogModifierOverride` objects that override whether a given `CatalogModifier` is enabled by default. nullable: true min_selected_modifiers: type: integer description: "If 0 or larger, the smallest number of `CatalogModifier`s that must be selected from this `CatalogModifierList`.\nThe default value is `-1`.\n\nWhen `CatalogModifierList.selection_type` is `MULTIPLE`, `CatalogModifierListInfo.min_selected_modifiers=-1` \nand `CatalogModifierListInfo.max_selected_modifier=-1` means that from zero to the maximum number of modifiers of\nthe `CatalogModifierList` can be selected from the `CatalogModifierList`. \n\nWhen the `CatalogModifierList.selection_type` is `SINGLE`, `CatalogModifierListInfo.min_selected_modifiers=-1`\nand `CatalogModifierListInfo.max_selected_modifier=-1` means that exactly one modifier must be present in \nand can be selected from the `CatalogModifierList`" nullable: true max_selected_modifiers: type: integer description: "If 0 or larger, the largest number of `CatalogModifier`s that can be selected from this `CatalogModifierList`.\nThe default value is `-1`.\n\nWhen `CatalogModifierList.selection_type` is `MULTIPLE`, `CatalogModifierListInfo.min_selected_modifiers=-1` \nand `CatalogModifierListInfo.max_selected_modifier=-1` means that from zero to the maximum number of modifiers of\nthe `CatalogModifierList` can be selected from the `CatalogModifierList`. \n\nWhen the `CatalogModifierList.selection_type` is `SINGLE`, `CatalogModifierListInfo.min_selected_modifiers=-1`\nand `CatalogModifierListInfo.max_selected_modifier=-1` means that exactly one modifier must be present in \nand can be selected from the `CatalogModifierList`" nullable: true enabled: type: boolean description: If `true`, enable this `CatalogModifierList`. The default value is `true`. nullable: true ordinal: type: integer description: "The position of this `CatalogItemModifierListInfo` object within the `modifier_list_info` list applied \nto a `CatalogItem` instance." x-release-status: BETA nullable: true Range: type: object description: The range of a number value between the specified lower and upper bounds. x-release-status: PUBLIC properties: min: type: string description: 'The lower bound of the number range. At least one of `min` or `max` must be specified. If unspecified, the results will have no minimum value.' nullable: true max: type: string description: 'The upper bound of the number range. At least one of `min` or `max` must be specified. If unspecified, the results will have no maximum value.' nullable: true CustomAttributeFilter: type: object description: 'Supported custom attribute query expressions for calling the [SearchCatalogItems](api-endpoint:Catalog-SearchCatalogItems) endpoint to search for items or item variations.' x-release-status: PUBLIC properties: custom_attribute_definition_id: type: string description: 'A query expression to filter items or item variations by matching their custom attributes'' `custom_attribute_definition_id` property value against the the specified id. Exactly one of `custom_attribute_definition_id` or `key` must be specified.' nullable: true key: type: string description: 'A query expression to filter items or item variations by matching their custom attributes'' `key` property value against the specified key. Exactly one of `custom_attribute_definition_id` or `key` must be specified.' nullable: true string_filter: type: string description: 'A query expression to filter items or item variations by matching their custom attributes'' `string_value` property value against the specified text. Exactly one of `string_filter`, `number_filter`, `selection_uids_filter`, or `bool_filter` must be specified.' nullable: true number_filter: $ref: '#/components/schemas/Range' description: 'A query expression to filter items or item variations with their custom attributes containing a number value within the specified range. Exactly one of `string_filter`, `number_filter`, `selection_uids_filter`, or `bool_filter` must be specified.' nullable: true selection_uids_filter: type: array items: type: string description: 'A query expression to filter items or item variations by matching their custom attributes'' `selection_uid_values` values against the specified selection uids. Exactly one of `string_filter`, `number_filter`, `selection_uids_filter`, or `bool_filter` must be specified.' nullable: true bool_filter: type: boolean description: 'A query expression to filter items or item variations by matching their custom attributes'' `boolean_value` property values against the specified Boolean expression. Exactly one of `string_filter`, `number_filter`, `selection_uids_filter`, or `bool_filter` must be specified.' nullable: true CatalogModifier: type: object description: A modifier applicable to items at the time of sale. An example of a modifier is a Cheese add-on to a Burger item. x-release-status: PUBLIC properties: name: type: string description: The modifier name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points. maxLength: 255 nullable: true price_money: $ref: '#/components/schemas/Money' description: The modifier price. nullable: true ordinal: type: integer description: Determines where this `CatalogModifier` appears in the `CatalogModifierList`. nullable: true modifier_list_id: type: string description: The ID of the `CatalogModifierList` associated with this modifier. nullable: true location_overrides: type: array items: $ref: '#/components/schemas/ModifierLocationOverrides' description: Location-specific price overrides. nullable: true image_id: type: string description: 'The ID of the image associated with this `CatalogModifier` instance. Currently this image is not displayed by Square, but is free to be displayed in 3rd party applications.' x-release-status: BETA nullable: true example: object: modifier_data: name: Almond Milk price_money: amount: 250 currency: USD present_at_all_locations: true type: MODIFIER BatchDeleteCatalogObjectsResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. deleted_object_ids: type: array items: type: string description: The IDs of all CatalogObjects deleted by this request. deleted_at: type: string description: The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) of this deletion in RFC 3339 format, e.g., "2016-09-04T23:59:33.123Z". example: deleted_at: '2016-11-16T22:25:24.878Z' deleted_object_ids: - W62UWFY35CWMYGVWK6TWJDNI - AA27W3M2GGTF3H6AVPNB77CK x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.csharp java: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.java javascript: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.javascript php: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.php python: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.python ruby: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.ruby CatalogItemVariation: type: object description: 'An item variation, representing a product for sale, in the Catalog object model. Each [item](entity:CatalogItem) must have at least one item variation and can have at most 250 item variations. An item variation can be sellable, stockable, or both if it has a unit of measure for its count for the sold number of the variation, the stocked number of the variation, or both. For example, when a variation representing wine is stocked and sold by the bottle, the variation is both stockable and sellable. But when a variation of the wine is sold by the glass, the sold units cannot be used as a measure of the stocked units. This by-the-glass variation is sellable, but not stockable. To accurately keep track of the wine''s inventory count at any time, the sellable count must be converted to stockable count. Typically, the seller defines this unit conversion. For example, 1 bottle equals 5 glasses. The Square API exposes the `stockable_conversion` property on the variation to specify the conversion. Thus, when two glasses of the wine are sold, the sellable count decreases by 2, and the stockable count automatically decreases by 0.4 bottle according to the conversion.' x-release-status: PUBLIC properties: item_id: type: string description: The ID of the `CatalogItem` associated with this item variation. nullable: true name: type: string description: 'The item variation''s name. This is a searchable attribute for use in applicable query filters. Its value has a maximum length of 255 Unicode code points. However, when the parent [item](entity:CatalogItem) uses [item options](entity:CatalogItemOption), this attribute is auto-generated, read-only, and can be longer than 255 Unicode code points.' nullable: true sku: type: string description: The item variation's SKU, if any. This is a searchable attribute for use in applicable query filters. nullable: true upc: type: string description: 'The universal product code (UPC) of the item variation, if any. This is a searchable attribute for use in applicable query filters. The value of this attribute should be a number of 12-14 digits long. This restriction is enforced on the Square Seller Dashboard, Square Point of Sale or Retail Point of Sale apps, where this attribute shows in the GTIN field. If a non-compliant UPC value is assigned to this attribute using the API, the value is not editable on the Seller Dashboard, Square Point of Sale or Retail Point of Sale apps unless it is updated to fit the expected format.' nullable: true ordinal: type: integer description: 'The order in which this item variation should be displayed. This value is read-only. On writes, the ordinal for each item variation within a parent `CatalogItem` is set according to the item variations''s position. On reads, the value is not guaranteed to be sequential or unique.' readOnly: true pricing_type: $ref: '#/components/schemas/CatalogPricingType' description: 'Indicates whether the item variation''s price is fixed or determined at the time of sale. See [CatalogPricingType](#type-catalogpricingtype) for possible values' nullable: true price_money: $ref: '#/components/schemas/Money' description: The item variation's price, if fixed pricing is used. nullable: true location_overrides: type: array items: $ref: '#/components/schemas/ItemVariationLocationOverrides' description: Per-location price and inventory overrides. nullable: true track_inventory: type: boolean description: If `true`, inventory tracking is active for the variation. nullable: true inventory_alert_type: $ref: '#/components/schemas/InventoryAlertType' description: 'Indicates whether the item variation displays an alert when its inventory quantity is less than or equal to its `inventory_alert_threshold`. See [InventoryAlertType](#type-inventoryalerttype) for possible values' nullable: true inventory_alert_threshold: type: integer description: 'If the inventory quantity for the variation is less than or equal to this value and `inventory_alert_type` is `LOW_QUANTITY`, the variation displays an alert in the merchant dashboard. This value is always an integer.' format: int64 nullable: true user_data: type: string description: Arbitrary user metadata to associate with the item variation. This attribute value length is of Unicode code points. maxLength: 255 nullable: true service_duration: type: integer description: 'If the `CatalogItem` that owns this item variation is of type `APPOINTMENTS_SERVICE`, then this is the duration of the service in milliseconds. For example, a 30 minute appointment would have the value `1800000`, which is equal to 30 (minutes) * 60 (seconds per minute) * 1000 (milliseconds per second).' format: int64 nullable: true available_for_booking: type: boolean description: 'If the `CatalogItem` that owns this item variation is of type `APPOINTMENTS_SERVICE`, a bool representing whether this service is available for booking.' x-release-status: BETA nullable: true item_option_values: type: array items: $ref: '#/components/schemas/CatalogItemOptionValueForItemVariation' description: 'List of item option values associated with this item variation. Listed in the same order as the item options of the parent item.' nullable: true measurement_unit_id: type: string description: 'ID of the ‘CatalogMeasurementUnit’ that is used to measure the quantity sold of this item variation. If left unset, the item will be sold in whole quantities.' nullable: true sellable: type: boolean description: 'Whether this variation can be sold. The inventory count of a sellable variation indicates the number of units available for sale. When a variation is both stockable and sellable, its sellable inventory count can be smaller than or equal to its stockable count.' x-release-status: BETA nullable: true stockable: type: boolean description: 'Whether stock is counted directly on this variation (TRUE) or only on its components (FALSE). When a variation is both stockable and sellable, the inventory count of a stockable variation keeps track of the number of units of this variation in stock and is not an indicator of the number of units of the variation that can be sold.' x-release-status: BETA nullable: true image_ids: type: array items: type: string description: 'The IDs of images associated with this `CatalogItemVariation` instance. These images will be shown to customers in Square Online Store.' nullable: true team_member_ids: type: array items: type: string description: 'Tokens of employees that can perform the service represented by this variation. Only valid for variations of type `APPOINTMENTS_SERVICE`.' x-release-status: BETA nullable: true stockable_conversion: $ref: '#/components/schemas/CatalogStockConversion' description: 'The unit conversion rule, as prescribed by the [CatalogStockConversion](entity:CatalogStockConversion) type, that describes how this non-stockable (i.e., sellable/receivable) item variation is converted to/from the stockable item variation sharing the same parent item. With the stock conversion, you can accurately track inventory when an item variation is sold in one unit, but stocked in another unit.' x-release-status: BETA nullable: true CatalogCustomAttributeDefinitionNumberConfig: type: object x-release-status: PUBLIC properties: precision: type: integer description: 'An integer between 0 and 5 that represents the maximum number of positions allowed after the decimal in number custom attribute values For example: - if the precision is 0, the quantity can be 1, 2, 3, etc. - if the precision is 1, the quantity can be 0.1, 0.2, etc. - if the precision is 2, the quantity can be 0.01, 0.12, etc. Default: 5' maximum: 5 nullable: true MeasurementUnitWeight: type: string enum: - IMPERIAL_WEIGHT_OUNCE - IMPERIAL_POUND - IMPERIAL_STONE - METRIC_MILLIGRAM - METRIC_GRAM - METRIC_KILOGRAM x-enum-elements: - name: IMPERIAL_WEIGHT_OUNCE description: The weight is measured in ounces. - name: IMPERIAL_POUND description: The weight is measured in pounds. - name: IMPERIAL_STONE description: The weight is measured in stones. - name: METRIC_MILLIGRAM description: The weight is measured in milligrams. - name: METRIC_GRAM description: The weight is measured in grams. - name: METRIC_KILOGRAM description: The weight is measured in kilograms. description: Unit of weight used to measure a quantity. x-release-status: PUBLIC CatalogQueryItemsForTax: type: object description: The query filter to return the items containing the specified tax IDs. x-release-status: PUBLIC required: - tax_ids properties: tax_ids: type: array items: type: string description: A set of `CatalogTax` IDs to be used to find associated `CatalogItem`s. CatalogQuickAmountType: type: string enum: - QUICK_AMOUNT_TYPE_MANUAL - QUICK_AMOUNT_TYPE_AUTO x-enum-elements: - name: QUICK_AMOUNT_TYPE_MANUAL description: Quick Amount is created manually by the seller. - name: QUICK_AMOUNT_TYPE_AUTO description: Quick Amount is generated automatically by machine learning algorithms. description: Determines the type of a specific Quick Amount. x-release-status: BETA BatchRetrieveCatalogObjectsResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: A list of [CatalogObject](entity:CatalogObject)s returned. related_objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: A list of [CatalogObject](entity:CatalogObject)s referenced by the object in the `objects` field. example: objects: - id: W62UWFY35CWMYGVWK6TWJDNI is_deleted: false item_data: categories: - id: BJNQCF2FJ6S6UIDT65ABHLRX ordinal: 0 description: Hot Leaf Juice name: Tea tax_ids: - HURXQOOAIC4IZSI2BEXQRYFY variations: - id: 2TZFAOHWGG7PAK2QEXWYPZSP is_deleted: false item_variation_data: item_id: W62UWFY35CWMYGVWK6TWJDNI name: Mug ordinal: 0 price_money: amount: 150 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 present_at_all_locations: true type: ITEM updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 - id: AA27W3M2GGTF3H6AVPNB77CK is_deleted: false item_data: categories: - id: BJNQCF2FJ6S6UIDT65ABHLRX ordinal: 0 description: Hot Bean Juice name: Coffee tax_ids: - HURXQOOAIC4IZSI2BEXQRYFY variations: - id: LBTYIHNHU52WOIHWT7SNRIYH is_deleted: false item_variation_data: item_id: AA27W3M2GGTF3H6AVPNB77CK name: Regular ordinal: 0 price_money: amount: 250 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 - id: PKYIC7HGGKW5CYVSCVDEIMHY is_deleted: false item_variation_data: item_id: AA27W3M2GGTF3H6AVPNB77CK name: Large ordinal: 1 price_money: amount: 350 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 present_at_all_locations: true type: ITEM updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 related_objects: - category_data: name: Beverages id: BJNQCF2FJ6S6UIDT65ABHLRX is_deleted: false present_at_all_locations: true type: CATEGORY updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 - id: HURXQOOAIC4IZSI2BEXQRYFY is_deleted: false present_at_all_locations: true tax_data: calculation_phase: TAX_SUBTOTAL_PHASE enabled: true inclusion_type: ADDITIVE name: Sales Tax percentage: '5.0' type: TAX updated_at: '2016-11-16T22:25:24.878Z' version: 1479335124878 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.csharp java: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.java javascript: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.javascript php: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.php python: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.python ruby: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.ruby BatchUpsertCatalogObjectsRequest: type: object x-release-status: PUBLIC required: - idempotency_key - batches properties: idempotency_key: type: string description: 'A value you specify that uniquely identifies this request among all your requests. A common way to create a valid idempotency key is to use a Universally unique identifier (UUID). If you''re unsure whether a particular request was successful, you can reattempt it with the same idempotency key without worrying about creating duplicate objects. See [Idempotency](https://developer.squareup.com/docs/build-basics/common-api-patterns/idempotency) for more information.' minLength: 1 maxLength: 128 batches: type: array items: $ref: '#/components/schemas/CatalogObjectBatch' description: 'A batch of CatalogObjects to be inserted/updated atomically. The objects within a batch will be inserted in an all-or-nothing fashion, i.e., if an error occurs attempting to insert or update an object within a batch, the entire batch will be rejected. However, an error in one batch will not affect other batches within the same request. For each object, its `updated_at` field is ignored and replaced with a current [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates), and its `is_deleted` field must not be set to `true`. To modify an existing object, supply its ID. To create a new object, use an ID starting with `#`. These IDs may be used to create relationships between an object and attributes of other objects that reference it. For example, you can create a CatalogItem with ID `#ABC` and a CatalogItemVariation with its `item_id` attribute set to `#ABC` in order to associate the CatalogItemVariation with its parent CatalogItem. Any `#`-prefixed IDs are valid only within a single atomic batch, and will be replaced by server-generated IDs. Each batch may contain up to 1,000 objects. The total number of objects across all batches for a single request may not exceed 10,000. If either of these limits is violated, an error will be returned and no objects will be inserted or updated.' example: batches: - objects: - id: '#Tea' item_data: categories: - id: '#Beverages' description_html:

Hot Leaf Juice

name: Tea tax_ids: - '#SalesTax' variations: - id: '#Tea_Mug' item_variation_data: item_id: '#Tea' name: Mug price_money: amount: 150 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION present_at_all_locations: true type: ITEM - id: '#Coffee' item_data: categories: - id: '#Beverages' description_html:

Hot Bean Juice

name: Coffee tax_ids: - '#SalesTax' variations: - id: '#Coffee_Regular' item_variation_data: item_id: '#Coffee' name: Regular price_money: amount: 250 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION - id: '#Coffee_Large' item_variation_data: item_id: '#Coffee' name: Large price_money: amount: 350 currency: USD pricing_type: FIXED_PRICING present_at_all_locations: true type: ITEM_VARIATION present_at_all_locations: true type: ITEM - category_data: name: Beverages id: '#Beverages' present_at_all_locations: true type: CATEGORY - id: '#SalesTax' present_at_all_locations: true tax_data: applies_to_custom_amounts: true calculation_phase: TAX_SUBTOTAL_PHASE enabled: true inclusion_type: ADDITIVE name: Sales Tax percentage: '5.0' type: TAX idempotency_key: 789ff020-f723-43a9-b4b5-43b5dc1fa3dc x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.csharp java: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.java javascript: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.javascript php: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.php python: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.python ruby: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.ruby CatalogAvailabilityPeriod: type: object description: Represents a time period of availability. x-release-status: BETA properties: start_local_time: type: string description: 'The start time of an availability period, specified in local time using partial-time RFC 3339 format. For example, `8:30:00` for a period starting at 8:30 in the morning. Note that the seconds value is always :00, but it is appended for conformance to the RFC.' nullable: true end_local_time: type: string description: 'The end time of an availability period, specified in local time using partial-time RFC 3339 format. For example, `21:00:00` for a period ending at 9:00 in the evening. Note that the seconds value is always :00, but it is appended for conformance to the RFC.' nullable: true day_of_week: $ref: '#/components/schemas/DayOfWeek' description: 'The day of the week for this availability period. See [DayOfWeek](#type-dayofweek) for possible values' nullable: true SearchCatalogObjectsRequest: type: object x-release-status: PUBLIC properties: cursor: type: string description: 'The pagination cursor returned in the previous response. Leave unset for an initial request. See [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination) for more information.' object_types: type: array items: $ref: '#/components/schemas/CatalogObjectType' description: "The desired set of object types to appear in the search results.\n\nIf this is unspecified, the operation returns objects of all the top level types at the version\nof the Square API used to make the request. Object types that are nested onto other object types\nare not included in the defaults.\n\nAt the current API version the default object types are:\nITEM, CATEGORY, TAX, DISCOUNT, MODIFIER_LIST, \nPRICING_RULE, PRODUCT_SET, TIME_PERIOD, MEASUREMENT_UNIT,\nSUBSCRIPTION_PLAN, ITEM_OPTION, CUSTOM_ATTRIBUTE_DEFINITION, QUICK_AMOUNT_SETTINGS.\n\nNote that if you wish for the query to return objects belonging to nested types (i.e., COMPONENT, IMAGE,\nITEM_OPTION_VAL, ITEM_VARIATION, or MODIFIER), you must explicitly include all the types of interest\nin this field." include_deleted_objects: type: boolean description: If `true`, deleted objects will be included in the results. Defaults to `false`. Deleted objects will have their `is_deleted` field set to `true`. If `include_deleted_objects` is `true`, then the `include_category_path_to_root` request parameter must be `false`. Both properties cannot be `true` at the same time. include_related_objects: type: boolean description: 'If `true`, the response will include additional objects that are related to the requested objects. Related objects are objects that are referenced by object ID by the objects in the response. This is helpful if the objects are being fetched for immediate display to a user. This process only goes one level deep. Objects referenced by the related objects will not be included. For example: If the `objects` field of the response contains a CatalogItem, its associated CatalogCategory objects, CatalogTax objects, CatalogImage objects and CatalogModifierLists will be returned in the `related_objects` field of the response. If the `objects` field of the response contains a CatalogItemVariation, its parent CatalogItem will be returned in the `related_objects` field of the response. Default value: `false`' begin_time: type: string description: 'Return objects modified after this [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates), in RFC 3339 format, e.g., `2016-09-04T23:59:33.123Z`. The timestamp is exclusive - objects with a timestamp equal to `begin_time` will not be included in the response.' query: $ref: '#/components/schemas/CatalogQuery' description: A query to be used to filter or sort the results. If no query is specified, the entire catalog will be returned. limit: type: integer description: 'A limit on the number of results to be returned in a single page. The limit is advisory - the implementation may return more or fewer results. If the supplied limit is negative, zero, or is higher than the maximum limit of 1,000, it will be ignored.' include_category_path_to_root: type: boolean description: Specifies whether or not to include the `path_to_root` list for each returned category instance. The `path_to_root` list consists of `CategoryPathToRootNode` objects and specifies the path that starts with the immediate parent category of the returned category and ends with its root category. If the returned category is a top-level category, the `path_to_root` list is empty and is not returned in the response payload. If `include_category_path_to_root` is `true`, then the `include_deleted_objects` request parameter must be `false`. Both properties cannot be `true` at the same time. example: limit: 100 object_types: - ITEM query: prefix_query: attribute_name: name attribute_prefix: tea x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.csharp java: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.java javascript: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.javascript php: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.php python: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.python ruby: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.ruby CatalogItemOptionValue: type: object description: 'An enumerated value that can link a `CatalogItemVariation` to an item option as one of its item option values.' x-release-status: PUBLIC properties: item_option_id: type: string description: Unique ID of the associated item option. nullable: true name: type: string description: Name of this item option value. This is a searchable attribute for use in applicable query filters. nullable: true description: type: string description: A human-readable description for the option value. This is a searchable attribute for use in applicable query filters. nullable: true color: type: string description: 'The HTML-supported hex color for the item option (e.g., "#ff8d4e85"). Only displayed if `show_colors` is enabled on the parent `ItemOption`. When left unset, `color` defaults to white ("#ffffff") when `show_colors` is enabled on the parent `ItemOption`.' nullable: true ordinal: type: integer description: Determines where this option value appears in a list of option values. nullable: true ListCatalogResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. cursor: type: string description: 'The pagination cursor to be used in a subsequent request. If unset, this is the final response. See [Pagination](https://developer.squareup.com/docs/build-basics/common-api-patterns/pagination) for more information.' objects: type: array items: $ref: '#/components/schemas/CatalogObject' description: The CatalogObjects returned. example: objects: - category_data: name: Beverages id: 5ZYQZZ2IECPVJ2IJ5KQPRDC3 is_deleted: false present_at_all_locations: true type: CATEGORY updated_at: '2017-02-21T14:50:26.495Z' version: 1487688626495 - id: L5R47DGBZOOVKCAFIXC56AEN is_deleted: false present_at_all_locations: true tax_data: calculation_phase: TAX_SUBTOTAL_PHASE enabled: true inclusion_type: ADDITIVE name: Sales Tax percentage: '5.0' type: TAX updated_at: '2017-02-21T14:50:26.495Z' version: 1487688626495 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.csharp java: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.java javascript: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.javascript php: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.php python: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.python ruby: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.ruby CatalogItemProductType: type: string enum: - REGULAR - GIFT_CARD - APPOINTMENTS_SERVICE - FOOD_AND_BEV - EVENT - DIGITAL - DONATION - LEGACY_SQUARE_ONLINE_SERVICE - LEGACY_SQUARE_ONLINE_MEMBERSHIP x-enum-elements: - name: REGULAR description: An ordinary item. - name: GIFT_CARD description: A Square gift card. - name: APPOINTMENTS_SERVICE description: A service that can be booked using the Square Appointments app. - name: FOOD_AND_BEV description: A food or beverage item that can be sold by restaurants and other food venues. - name: EVENT description: An event which tickets can be sold for, including location, address, and times. - name: DIGITAL description: A digital item like an ebook or song. - name: DONATION description: A donation which site visitors can send for any cause. - name: LEGACY_SQUARE_ONLINE_SERVICE description: A legacy Square Online service that is manually fulfilled. This corresponds to the `Other` item type displayed in the Square Seller Dashboard and Square POS apps. - name: LEGACY_SQUARE_ONLINE_MEMBERSHIP description: A legacy Square Online membership that is manually fulfilled. This corresponds to the `Membership` item type displayed in the Square Seller Dashboard and Square POS apps. description: The type of a CatalogItem. Connect V2 only allows the creation of `REGULAR` or `APPOINTMENTS_SERVICE` items. x-release-status: PUBLIC MeasurementUnitLength: type: string enum: - IMPERIAL_INCH - IMPERIAL_FOOT - IMPERIAL_YARD - IMPERIAL_MILE - METRIC_MILLIMETER - METRIC_CENTIMETER - METRIC_METER - METRIC_KILOMETER x-enum-elements: - name: IMPERIAL_INCH description: The length is measured in inches. - name: IMPERIAL_FOOT description: The length is measured in feet. - name: IMPERIAL_YARD description: The length is measured in yards. - name: IMPERIAL_MILE description: The length is measured in miles. - name: METRIC_MILLIMETER description: The length is measured in millimeters. - name: METRIC_CENTIMETER description: The length is measured in centimeters. - name: METRIC_METER description: The length is measured in meters. - name: METRIC_KILOMETER description: The length is measured in kilometers. description: The unit of length used to measure a quantity. x-release-status: PUBLIC CatalogCategoryType: type: string enum: - REGULAR_CATEGORY - MENU_CATEGORY - KITCHEN_CATEGORY x-enum-elements: - name: REGULAR_CATEGORY description: The regular category. - name: MENU_CATEGORY description: The menu category. - name: KITCHEN_CATEGORY description: Kitchen categories are used by KDS (Kitchen Display System) to route items to specific clients description: Indicates the type of a category. x-release-status: PUBLIC CatalogCustomAttributeValue: type: object description: 'An instance of a custom attribute. Custom attributes can be defined and added to `ITEM` and `ITEM_VARIATION` type catalog objects. [Read more about custom attributes](https://developer.squareup.com/docs/catalog-api/add-custom-attributes).' x-release-status: PUBLIC properties: name: type: string description: The name of the custom attribute. nullable: true string_value: type: string description: The string value of the custom attribute. Populated if `type` = `STRING`. nullable: true custom_attribute_definition_id: type: string description: The id of the [CatalogCustomAttributeDefinition](entity:CatalogCustomAttributeDefinition) this value belongs to. readOnly: true type: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionType' description: 'A copy of type from the associated `CatalogCustomAttributeDefinition`. See [CatalogCustomAttributeDefinitionType](#type-catalogcustomattributedefinitiontype) for possible values' readOnly: true number_value: type: string description: 'Populated if `type` = `NUMBER`. Contains a string representation of a decimal number, using a `.` as the decimal separator.' nullable: true boolean_value: type: boolean description: A `true` or `false` value. Populated if `type` = `BOOLEAN`. nullable: true selection_uid_values: type: array items: type: string description: One or more choices from `allowed_selections`. Populated if `type` = `SELECTION`. nullable: true key: type: string description: 'If the associated `CatalogCustomAttributeDefinition` object is defined by another application, this key is prefixed by the defining application ID. For example, if the CatalogCustomAttributeDefinition has a key attribute of "cocoa_brand" and the defining application ID is "abcd1234", this key is "abcd1234:cocoa_brand" when the application making the request is different from the application defining the custom attribute definition. Otherwise, the key is simply "cocoa_brand".' readOnly: true SourceApplication: type: object description: Represents information about the application used to generate a change. x-release-status: PUBLIC properties: product: $ref: '#/components/schemas/Product' description: '__Read only__ The [product](entity:Product) type of the application. See [Product](#type-product) for possible values' nullable: true application_id: type: string description: '__Read only__ The Square-assigned ID of the application. This field is used only if the [product](entity:Product) type is `EXTERNAL_API`.' nullable: true name: type: string description: '__Read only__ The display name of the application (for example, `"Custom Application"` or `"Square POS 4.74 for Android"`).' nullable: true CatalogCustomAttributeDefinitionSelectionConfig: type: object description: Configuration associated with `SELECTION`-type custom attribute definitions. x-release-status: PUBLIC properties: max_allowed_selections: type: integer description: 'The maximum number of selections that can be set. The maximum value for this attribute is 100. The default value is 1. The value can be modified, but changing the value will not affect existing custom attribute values on objects. Clients need to handle custom attributes with more selected values than allowed by this limit.' maximum: 100 nullable: true allowed_selections: type: array items: $ref: '#/components/schemas/CatalogCustomAttributeDefinitionSelectionConfigCustomAttributeSelection' description: 'The set of valid `CatalogCustomAttributeSelections`. Up to a maximum of 100 selections can be defined. Can be modified.' nullable: true SubscriptionCadence: type: string enum: - DAILY - WEEKLY - EVERY_TWO_WEEKS - THIRTY_DAYS - SIXTY_DAYS - NINETY_DAYS - MONTHLY - EVERY_TWO_MONTHS - QUARTERLY - EVERY_FOUR_MONTHS - EVERY_SIX_MONTHS - ANNUAL - EVERY_TWO_YEARS x-enum-elements: - name: DAILY description: Once per day - name: WEEKLY description: Once per week - name: EVERY_TWO_WEEKS description: Every two weeks - name: THIRTY_DAYS description: Once every 30 days - name: SIXTY_DAYS description: Once every 60 days - name: NINETY_DAYS description: Once every 90 days - name: MONTHLY description: Once per month - name: EVERY_TWO_MONTHS description: Once every two months - name: QUARTERLY description: Once every three months - name: EVERY_FOUR_MONTHS description: Once every four months - name: EVERY_SIX_MONTHS description: Once every six months - name: ANNUAL description: Once per year - name: EVERY_TWO_YEARS description: Once every two years description: Determines the billing cadence of a [Subscription](entity:Subscription) x-release-status: PUBLIC UpdateItemTaxesRequest: type: object x-release-status: PUBLIC required: - item_ids properties: item_ids: type: array items: type: string description: 'IDs for the CatalogItems associated with the CatalogTax objects being updated. No more than 1,000 IDs may be provided.' taxes_to_enable: type: array items: type: string description: 'IDs of the CatalogTax objects to enable. At least one of `taxes_to_enable` or `taxes_to_disable` must be specified.' nullable: true taxes_to_disable: type: array items: type: string description: 'IDs of the CatalogTax objects to disable. At least one of `taxes_to_enable` or `taxes_to_disable` must be specified.' nullable: true example: item_ids: - H42BRLUJ5KTZTTMPVSLFAACQ - 2JXOBJIHCWBQ4NZ3RIXQGJA6 taxes_to_disable: - AQCEGCEBBQONINDOHRGZISEX taxes_to_enable: - 4WRCNHCJZDVLSNDQ35PP6YAD x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.csharp java: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.java javascript: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.javascript php: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.php python: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.python ruby: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.ruby BatchDeleteCatalogObjectsRequest: type: object x-release-status: PUBLIC properties: object_ids: type: array items: type: string description: 'The IDs of the CatalogObjects to be deleted. When an object is deleted, other objects in the graph that depend on that object will be deleted as well (for example, deleting a CatalogItem will delete its CatalogItemVariation.' nullable: true example: object_ids: - W62UWFY35CWMYGVWK6TWJDNI - AA27W3M2GGTF3H6AVPNB77CK x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.csharp java: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.java javascript: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.javascript php: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.php python: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.python ruby: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.ruby CatalogItemFoodAndBeverageDetailsDietaryPreferenceStandardDietaryPreference: type: string enum: - DAIRY_FREE - GLUTEN_FREE - HALAL - KOSHER - NUT_FREE - VEGAN - VEGETARIAN x-enum-elements: - name: DAIRY_FREE description: '' - name: GLUTEN_FREE description: '' - name: HALAL description: '' - name: KOSHER description: '' - name: NUT_FREE description: '' - name: VEGAN description: '' - name: VEGETARIAN description: '' description: Standard dietary preferences for food and beverage items that are recommended on item creation. x-release-status: PUBLIC CatalogModifierOverride: type: object description: Options to control how to override the default behavior of the specified modifier. x-release-status: PUBLIC required: - modifier_id properties: modifier_id: type: string description: The ID of the `CatalogModifier` whose default behavior is being overridden. minLength: 1 on_by_default: type: boolean description: If `true`, this `CatalogModifier` should be selected by default for this `CatalogItem`. nullable: true SearchCatalogItemsRequestStockLevel: type: string enum: - OUT - LOW x-enum-elements: - name: OUT description: The item inventory is empty. - name: LOW description: The item inventory is low. description: Defines supported stock levels of the item inventory. x-release-status: PUBLIC ExcludeStrategy: type: string enum: - LEAST_EXPENSIVE - MOST_EXPENSIVE x-enum-elements: - name: LEAST_EXPENSIVE description: 'The least expensive matched products are excluded from the pricing. If the pricing rule is set to exclude one product and multiple products in the match set qualify as least expensive, then one will be excluded at random. Excluding the least expensive product gives the best discount value to the buyer.' - name: MOST_EXPENSIVE description: 'The most expensive matched product is excluded from the pricing rule. If multiple products have the same price and all qualify as least expensive, one will be excluded at random. This guarantees that the most expensive product is purchased at full price.' description: 'Indicates which products matched by a CatalogPricingRule will be excluded if the pricing rule uses an exclude set.' x-release-status: BETA UpdateItemModifierListsResponse: type: object x-release-status: PUBLIC properties: errors: type: array items: $ref: '#/components/schemas/Error' description: Any errors that occurred during the request. updated_at: type: string description: The database [timestamp](https://developer.squareup.com/docs/build-basics/common-data-types/working-with-dates) of this update in RFC 3339 format, e.g., `2016-09-04T23:59:33.123Z`. example: updated_at: '2016-11-16T22:25:24.878Z' x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.csharp java: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.java javascript: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.javascript php: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.php python: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.python ruby: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.ruby Product: type: string enum: - SQUARE_POS - EXTERNAL_API - BILLING - APPOINTMENTS - INVOICES - ONLINE_STORE - PAYROLL - DASHBOARD - ITEM_LIBRARY_IMPORT - OTHER x-enum-elements: - name: SQUARE_POS description: Square Point of Sale application. - name: EXTERNAL_API description: Square Connect APIs (for example, Orders API or Checkout API). - name: BILLING description: A Square subscription (various products). - name: APPOINTMENTS description: Square Appointments. - name: INVOICES description: Square Invoices. - name: ONLINE_STORE description: Square Online Store. - name: PAYROLL description: Square Payroll. - name: DASHBOARD description: Square Dashboard. - name: ITEM_LIBRARY_IMPORT description: Item Library Import. - name: OTHER description: A Square product that does not match any other value. description: Indicates the Square product used to generate a change. x-release-status: PUBLIC CatalogMeasurementUnit: type: object description: 'Represents the unit used to measure a `CatalogItemVariation` and specifies the precision for decimal quantities.' x-release-status: PUBLIC properties: measurement_unit: $ref: '#/components/schemas/MeasurementUnit' description: Indicates the unit used to measure the quantity of a catalog item variation. nullable: true precision: type: integer description: 'An integer between 0 and 5 that represents the maximum number of positions allowed after the decimal in quantities measured with this unit. For example: - if the precision is 0, the quantity can be 1, 2, 3, etc. - if the precision is 1, the quantity can be 0.1, 0.2, etc. - if the precision is 2, the quantity can be 0.01, 0.12, etc. Default: 3' nullable: true ArchivedState: type: string enum: - ARCHIVED_STATE_NOT_ARCHIVED - ARCHIVED_STATE_ARCHIVED - ARCHIVED_STATE_ALL x-enum-elements: - name: ARCHIVED_STATE_NOT_ARCHIVED description: Requested items are not archived with the `is_archived` attribute set to `false`. - name: ARCHIVED_STATE_ARCHIVED description: Requested items are archived with the `is_archived` attribute set to `true`. - name: ARCHIVED_STATE_ALL description: Requested items can be archived or not archived. description: "Defines the values for the `archived_state` query expression \nused in [SearchCatalogItems](api-endpoint:Catalog-SearchCatalogItems) \nto return the archived, not archived or either type of catalog items." x-release-status: PUBLIC CatalogProductSet: type: object description: 'Represents a collection of catalog objects for the purpose of applying a `PricingRule`. Including a catalog object will include all of its subtypes. For example, including a category in a product set will include all of its items and associated item variations in the product set. Including an item in a product set will also include its item variations.' x-release-status: PUBLIC properties: name: type: string description: 'User-defined name for the product set. For example, "Clearance Items" or "Winter Sale Items".' nullable: true product_ids_any: type: array items: type: string description: ' Unique IDs for any `CatalogObject` included in this product set. Any number of these catalog objects can be in an order for a pricing rule to apply. This can be used with `product_ids_all` in a parent `CatalogProductSet` to match groups of products for a bulk discount, such as a discount for an entree and side combo. Only one of `product_ids_all`, `product_ids_any`, or `all_products` can be set. Max: 500 catalog object IDs.' nullable: true product_ids_all: type: array items: type: string description: 'Unique IDs for any `CatalogObject` included in this product set. All objects in this set must be included in an order for a pricing rule to apply. Only one of `product_ids_all`, `product_ids_any`, or `all_products` can be set. Max: 500 catalog object IDs.' nullable: true quantity_exact: type: integer description: 'If set, there must be exactly this many items from `products_any` or `products_all` in the cart for the discount to apply. Cannot be combined with either `quantity_min` or `quantity_max`.' format: int64 nullable: true quantity_min: type: integer description: 'If set, there must be at least this many items from `products_any` or `products_all` in a cart for the discount to apply. See `quantity_exact`. Defaults to 0 if `quantity_exact`, `quantity_min` and `quantity_max` are all unspecified.' format: int64 nullable: true quantity_max: type: integer description: 'If set, the pricing rule will apply to a maximum of this many items from `products_any` or `products_all`.' format: int64 nullable: true all_products: type: boolean description: 'If set to `true`, the product set will include every item in the catalog. Only one of `product_ids_all`, `product_ids_any`, or `all_products` can be set.' nullable: true MeasurementUnitCustom: type: object description: The information needed to define a custom unit, provided by the seller. x-release-status: PUBLIC required: - name - abbreviation properties: name: type: string description: The name of the custom unit, for example "bushel". abbreviation: type: string description: 'The abbreviation of the custom unit, such as "bsh" (bushel). This appears in the cart for the Point of Sale app, and in reports.' StandardUnitDescriptionGroup: type: object description: Group of standard measurement units. x-release-status: PUBLIC properties: standard_unit_descriptions: type: array items: $ref: '#/components/schemas/StandardUnitDescription' description: List of standard (non-custom) measurement units in this description group. nullable: true language_code: type: string description: IETF language tag. nullable: true MeasurementUnitArea: type: string enum: - IMPERIAL_ACRE - IMPERIAL_SQUARE_INCH - IMPERIAL_SQUARE_FOOT - IMPERIAL_SQUARE_YARD - IMPERIAL_SQUARE_MILE - METRIC_SQUARE_CENTIMETER - METRIC_SQUARE_METER - METRIC_SQUARE_KILOMETER x-enum-elements: - name: IMPERIAL_ACRE description: The area is measured in acres. - name: IMPERIAL_SQUARE_INCH description: The area is measured in square inches. - name: IMPERIAL_SQUARE_FOOT description: The area is measured in square feet. - name: IMPERIAL_SQUARE_YARD description: The area is measured in square yards. - name: IMPERIAL_SQUARE_MILE description: The area is measured in square miles. - name: METRIC_SQUARE_CENTIMETER description: The area is measured in square centimeters. - name: METRIC_SQUARE_METER description: The area is measured in square meters. - name: METRIC_SQUARE_KILOMETER description: The area is measured in square kilometers. description: Unit of area used to measure a quantity. x-release-status: PUBLIC UpdateItemModifierListsRequest: type: object x-release-status: PUBLIC required: - item_ids properties: item_ids: type: array items: type: string description: The IDs of the catalog items associated with the CatalogModifierList objects being updated. modifier_lists_to_enable: type: array items: type: string description: 'The IDs of the CatalogModifierList objects to enable for the CatalogItem. At least one of `modifier_lists_to_enable` or `modifier_lists_to_disable` must be specified.' nullable: true modifier_lists_to_disable: type: array items: type: string description: 'The IDs of the CatalogModifierList objects to disable for the CatalogItem. At least one of `modifier_lists_to_enable` or `modifier_lists_to_disable` must be specified.' nullable: true example: item_ids: - H42BRLUJ5KTZTTMPVSLFAACQ - 2JXOBJIHCWBQ4NZ3RIXQGJA6 modifier_lists_to_disable: - 7WRC16CJZDVLSNDQ35PP6YAD modifier_lists_to_enable: - H42BRLUJ5KTZTTMPVSLFAACQ - 2JXOBJIHCWBQ4NZ3RIXQGJA6 x-sq-sdk-sample-code: csharp: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.csharp java: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.java javascript: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.javascript php: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.php python: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.python ruby: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.ruby CatalogQuerySortedAttribute: type: object description: The query expression to specify the key to sort search results. x-release-status: PUBLIC required: - attribute_name properties: attribute_name: type: string description: The attribute whose value is used as the sort key. minLength: 1 initial_attribute_value: type: string description: 'The first attribute value to be returned by the query. Ascending sorts will return only objects with this value or greater, while descending sorts will return only objects with this value or less. If unset, start at the beginning (for ascending sorts) or end (for descending sorts).' nullable: true sort_order: $ref: '#/components/schemas/SortOrder' description: 'The desired sort order, `"ASC"` (ascending) or `"DESC"` (descending). See [SortOrder](#type-sortorder) for possible values' nullable: true securitySchemes: oauth2: type: oauth2 x-additional-headers: - name: Square-Version description: Square Connect API versions schema: default: '2025-01-23' flows: authorizationCode: authorizationUrl: https://connect.squareup.com/oauth2/authorize tokenUrl: https://connect.squareup.com/oauth2/token scopes: ADDON_CONFIGURATIONS_READ: '__HTTP Method__: `GET` Grants write access for third-party Add-ons to read configurations of their Add-ons, for example, when calling `RetrieveConfiguration` endpoint.' ADDON_CONFIGURATIONS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access for third-party Add-ons to store configurations of their Add-ons, for example, when calling `CreateConfiguration` endpoint.' APPOINTMENTS_ALL_READ: '__HTTP Method__: `GET`, `POST` Grants read access to all of a seller''s booking information, calendar, and business details. This permission must be accompanied by the `APPOINTMENTS_READ` permission.' APPOINTMENTS_ALL_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to all booking details, including double-booking a seller. This permission must be accompanied by the `APPOINTMENTS_WRITE` permission.' APPOINTMENTS_BUSINESS_SETTINGS_READ: '__HTTP Method__: `GET` Grants read access to booking business settings. For example, to call the ListTeamMemberBookingProfiles endpoint.' APPOINTMENTS_READ: '__HTTP Method__: `GET`, `POST` Grants read access to booking information. For example, to call the RetrieveBooking endpoint.' APPOINTMENTS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to booking information. For example, to call the CreateBooking endpoint.' BANK_ACCOUNTS_READ: '__HTTP Method__: `GET` Grants read access to bank account information associated with the targeted Square account. For example, to call the Connect v1 ListBankAccounts endpoint.' CASH_DRAWER_READ: '__HTTP Method__: `GET` Grants read access to cash drawer shift information. For example, to call the ListCashDrawerShifts endpoint.' CHANNELS_CREATE: '__HTTP Method__: `POST` Grants write access to create channels, for example, when calling the `CreateChannel` endpoint.' CHANNELS_READ: '__HTTP Method__: `GET` Grants read access to view channels, for example, when calling the `RetrieveChannel` endpoint.' CHANNELS_UPDATE: '__HTTP Method__: `PUT` Grants write access to update channels, for example, when calling the `UpdateChannel` endpoint.' CUSTOMERS_READ: '__HTTP Method__: `GET` Grants read access to customer information. For example, to call the ListCustomers endpoint.' CUSTOMERS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to customer information. For example, to create and update customer profiles.' DEVICES_READ: '__HTTP Method__: `GET` Grants read access to device information. For example, to call the `GetDevice` and `ListDevices` endpoints.' DEVICE_CREDENTIAL_MANAGEMENT: '__HTTP Method__: `POST`, `GET` Grants read/write access to device credentials information. For example, to call the CreateDeviceCode endpoint.' DISPUTES_READ: '__HTTP Method__: `GET` Grants read access to dispute information. For example, to call the RetrieveDispute endpoint.' DISPUTES_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to dispute information. For example, to call the SubmitEvidence endpoint.' EMPLOYEES_READ: '__HTTP Method__: `GET` Grants read access to employee profile information. For example, to call the Connect v1 Employees API.' EMPLOYEES_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to employee profile information. For example, to create and modify employee profiles.' GIFTCARDS_READ: '__HTTP Method__: `GET`, `POST` Grants read access to gift card information. For example, to call the RetrieveGiftCard endpoint.' GIFTCARDS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to gift card information. For example, to call the CreateGiftCard endpoint.' INVENTORY_READ: '__HTTP Method__: `GET` Grants read access to inventory information. For example, to call the RetrieveInventoryCount endpoint.' INVENTORY_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to inventory information. For example, to call the BatchChangeInventory endpoint.' INVOICES_READ: '__HTTP Method__: `GET`, `POST` Grants read access to invoice information. For example, to call the ListInvoices endpoint.' INVOICES_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to invoice information. For example, to call the CreateInvoice endpoint.' ITEMS_READ: '__HTTP Method__: `GET` Grants read access to product catalog information. For example, to obtain objects in a product catalog.' ITEMS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to product catalog information. For example, to modify or add to a product catalog.' LOYALTY_READ: '__HTTP Method__: `GET` Grants read access to loyalty information. For example, to call the ListLoyaltyPrograms endpoint.' LOYALTY_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to loyalty information. For example, to call the CreateLoyaltyAccount endpoint.' MERCHANT_PROFILE_READ: '__HTTP Method__: `GET` Grants read access to business and location information. For example, to obtain a location ID for subsequent activity.' MERCHANT_PROFILE_WRITE: '__HTTP Method__: `POST`, `PUT` Grants write access to business and location information. For example, to create a new location or update the business hours at an existing location.' ONLINE_STORE_SITE_READ: '__HTTP Method__: `GET`, `POST` Read access to ECOM online store site details.' ONLINE_STORE_SNIPPETS_READ: '__HTTP Method__: `GET`, `POST` Read access to ECOM online store snippets on published websites.' ONLINE_STORE_SNIPPETS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Write access to ECOM online store snippets on published websites.' ORDERS_READ: '__HTTP Method__: `GET` Grants read access to order information. For example, to call the BatchRetrieveOrders endpoint.' ORDERS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to order information. For example, to call the CreateCheckout endpoint.' PAYMENTS_READ: '__HTTP Method__: `GET` Grants read access to transaction and refund information. For example, to call the RetrieveTransaction endpoint.' PAYMENTS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to transaction and refunds information. For example, to process payments with the Payments or Checkout API.' PAYMENTS_WRITE_ADDITIONAL_RECIPIENTS: '__HTTP Method__: `POST`, `PUT`, `DELETE` Allow third party applications to deduct a portion of each transaction amount. __Required__ to use multiparty transaction functionality with the Payments API.' PAYMENTS_WRITE_IN_PERSON: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to payments and refunds information. For example, to process in-person payments.' PAYMENTS_WRITE_SHARED_ONFILE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Allows the developer to process payments on behalf of a seller using a shared on file payment method.' PAYOUTS_READ: '__HTTP Method__: `GET` Grants read access to payouts and payout entries information. For example, to call the Connect v2 `ListPayouts` endpoint.' PERMISSION_SETS_READ: '__HTTP Method__: `GET` Grants read access to Permission Sets. For example, to call the `ListPermissionSets` and `RetrievePermissionSet` endpoints.' PERMISSION_SETS_WRITE: '__HTTP Method__: `PUT` Grants write access to Permission Sets.' RESERVATIONS_READ: '__HTTP Method__: `GET` Grants read access to reservation information, for example, when calling the `RetrieveReservation` endpoint.' RESERVATIONS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to reservation information, for example, when calling the `CreateReservation` endpoint.' RESTAURANT_CHECKS_READ: '__HTTP Method__: `GET` Grants read access to check information, for example, when calling the `RetrieveCheck` endpoint.' SETTLEMENTS_READ: '__HTTP Method__: `GET` Grants read access to settlement (deposit) information. For example, to call the Connect v1 ListSettlements endpoint.' SUBSCRIPTIONS_READ: '__HTTP Method__: `GET`, `POST` Grants read access to subscription information. For example, to call the RetrieveSubscription endpoint.' SUBSCRIPTIONS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to subscription information. For example, to call the CreateSubscription endpoint.' TIMECARDS_READ: '__HTTP Method__: `GET` Grants read access to employee timecard information. For example, to call the Connect v2 SearchShifts endpoint.' TIMECARDS_SETTINGS_READ: '__HTTP Method__: `GET` Grants read access to employee timecard settings information. For example, to call the GetBreakType endpoint.' TIMECARDS_SETTINGS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to employee timecard settings information. For example, to call the UpdateBreakType endpoint.' TIMECARDS_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to employee shift information. For example, to create and modify employee shifts.' VENDOR_READ: '__HTTP Method__: `GET`, `POST` Grants read access to vendor information, for example, when calling the `RetrieveVendor` endpoint.' VENDOR_WRITE: '__HTTP Method__: `POST`, `PUT`, `DELETE` Grants write access to vendor information, for example, when calling the `BulkUpdateVendors` endpoint.' oauth2ClientSecret: type: apiKey in: header name: Authorization x-fern-global-headers: - header: Square-Version name: version optional: true env: VERSION type: literal<"2025-01-23">