Deprecations
Everything on this page is deprecated and still works today. On 31 January 2027 these items are removed, and requests that use them start to fail. Migrate before that date.
This page covers v2 of the GraphQL and REST APIs. Every item listed is flagged as deprecated in the API itself, so you can always verify it against the live schema or the OpenAPI specs.
| API | Deprecated items |
|---|---|
| GraphQL | 167 |
| REST | 182 |
Check your integration
- GraphQL: deprecated items carry a
deprecationReasonin the schema. Most GraphQL clients and IDEs show it inline as you write a query, and the Explorer surfaces it. Retired queries and mutations are grouped in the Deprecated section of the GraphQL reference. - REST: deprecated endpoints, query parameters and fields carry the
deprecatedflag in the OpenAPI spec and appear as deprecated in the REST reference. You can also check the spec files directly.
Migrations at a glance
Most deprecations belong to one of the migrations below. Each one is listed in full further down.
| Migration | What to do | Items |
|---|---|---|
| Shop replaced by Channel | Use channelId and the Channel model. The shop and shops queries and the shopInvalidateCache mutation are removed entirely. | 28 |
| siteId no longer used | Remove the argument. It is already ignored. | 4 |
| user replaced by Contact and Customer | Use cartSetContact or cartSetCustomer, and the contact and customer fields. On carts and tenders, use a contact plus companyId, or customerId. | 10 |
| userId filtering on categories removed | Remove the argument. User context filtering is no longer supported and the value is ignored. | 3 |
| Legacy account fields on Company, Contact and Customer | Most of these are accepted but never stored. Use the sources array for external identifiers and the Company debtorId. Check each field before relying on it. | 103 |
| Single-language fields replaced by localized arrays | Use the plural localized forms: names, descriptions, shortDescriptions, slugs and shortNames. Default language is derived from the catalog and is no longer accepted on input. | 62 |
| Legacy date fields replaced by createdAt and lastModifiedAt | Use createdAt and lastModifiedAt, including in search inputs and sort fields. | 17 |
| Media queries replaced by the media namespace | Use media.image, media.images, media.video, media.videos, media.document and media.documents. | 9 |
| cost replaced by costPrices | Use costPrices with quantity 1. Values sent to the deprecated field are not stored and are not used in calculations. | 9 |
| Collections replaced by paginated equivalents | Use companiesPaginated, usersPaginated, contactsPaginated and customersPaginated. | 5 |
| Numeric ids replaced by uuid or code | Use uuid, code, categoryId or parentUuid as noted per field. | 13 |
| Mutations replaced by variants that return the entity | Use the AndReturn variants, which return the updated Bundle or Carrier instead of a boolean. | 4 |
| Company search maintenance operations removed | The companySearch query and its index maintenance mutations are removed with no public replacement. | 5 |
| source and sourceId replaced by the sources array | Use the sources array. On orders, externalId is replaced by sources. | 6 |
| Order status flags no longer used | isExportable, isConfirmable and isArchivable are unused. Remove them from reads and writes. | 21 |
| class replaced by type | Use the type field. | 5 |
| taxCode replaced by taxCodeValue | Use taxCodeValue. | 4 |
| shippingCost replaced by the business rule builder | Configure shipping logic with the business rule builder, which also covers more complex carrier cases. | 5 |
| Inventory response fields no longer used | messages and total on inventory responses are no longer populated. | 7 |
| Sort values and sortable field names | Use uppercase ASC and DESC. Sortable fields become createdAt and lastModifiedAt. | 2 |
| Order address operations renamed | Use orderAddresses and orderAddressUpdate. | 2 |
| Authentication and password reset | Use triggerPasswordSendResetEmailEvent, and pass the input parameter on passwordResetLink. | 4 |
| Other individual deprecations | Replacements are listed per item. | 21 |
Full list
Shop replaced by Channel
Use channelId and the Channel model. The shop and shops queries and the shopInvalidateCache mutation are removed entirely.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | BusinessRule.shopId | Shop is deprecated and will be removed in a future version |
| GraphQL | Input field | BusinessRuleCreateInput.shopId | Shop is deprecated and will be removed in a future version |
| GraphQL | Input field | BusinessRuleSearchInput.shopId | Shop is deprecated and will be removed in a future version |
| GraphQL | Field | Cart.shopId | Shop is deprecated and will be removed in the future. Use channelId instead |
| GraphQL | Field | Channel.shop | This field will be removed in a future version |
| GraphQL | Input field | CreateWarehouseInput.shopId | Shop is deprecated and field is to be removed in a future version |
| GraphQL | Field | Order.shopId | Use channelId instead |
| GraphQL | Argument | Query.tax(shopId:) | Shop is deprecated and will be removed in the future. |
| GraphQL | Query | shop | This query will be removed in a future version |
| GraphQL | Mutation | shopInvalidateCache | This mutation will be removed in a future version |
| GraphQL | Query | shops | This query will be removed in a future version |
| GraphQL | Field | Surcharge.shopId | Shop is deprecated and will be removed in the future. |
| GraphQL | Field | Tax.shopId | Shop is deprecated and will be removed in the future. |
| GraphQL | Input field | TaxCreateInput.shopId | Shop is deprecated and will be removed in the future. |
| GraphQL | Input field | TaxSearchInput.shopId | Shop is deprecated and will be removed in the future. |
| GraphQL | Field | Tender.shopId | Deprecated, please use channelId instead |
| GraphQL | Field | Warehouse.shopId | Shop is deprecated and will be removed in a future version |
| REST | Property | Channel.shopId | [DEPRECATED] Associated shop identifier for e-commerce operations. Links this channel to a specific shop configuration for e-commerce functionality, including payment processing, shipping, and inventory management. |
| REST | Property | CreateSurchargeInput.shopId | [DEPRECATED] Shop identifier for surcharge application scope. If not provided, the default shop will be inferred from the channel context. |
| REST | Parameter | GET /v2/taxes ?shopId | [DEPRECATED] Filter by shop-specific tax configurations. When provided, returns only tax configurations that apply to the specified shop, enabling shop-specific tax management. |
| REST | Property | Order.shopId | [DEPRECATED] Shop is deprecated and will be removed in a future version. Use channelId instead. |
| REST | Property | OrderCreateInput.shopId | [DEPRECATED] Shop is deprecated and will be removed in a future version. Use channelId instead. |
| REST | Property | Surcharge.shopId | [DEPRECATED] Shop identifier for surcharge application scope. If not provided, defaults are inferred from channel context |
| REST | Property | Tax.shopId | [DEPRECATED] Shop identifier for the tax to apply to |
| REST | Property | TaxCreateInput.shopId | [DEPRECATED] Shop identifier for tax rule application. Specifies which shop this tax configuration applies to. Used to establish shop-specific tax rules and ensure proper tax calculations for different business locations. |
| REST | Property | TaxResponse.shopId | [DEPRECATED] Shop identifier for the tax to apply to |
| REST | Property | TaxUpdateInputDto.shopId | [DEPRECATED] Shop identifier for tax rule application. Specifies which shop this tax configuration applies to. Used to establish shop-specific tax rules and ensure proper tax calculations for different business locations. |
| REST | Property | UpdatePaymentDTO.shopId | [DEPRECATED] Shop identifier for surcharge application scope. If not provided, the default shop will be inferred from the channel context. |
siteId no longer used
Remove the argument. It is already ignored.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Input field | EmailEventInput.siteId | SiteId is no longer needed |
| GraphQL | Argument | Mutation.logout(siteId:) | siteId is no longer used |
| GraphQL | Argument | Mutation.startSession(siteId:) | siteId is no longer used |
| GraphQL | Field | Tender.siteId | Deprecated in favor of channelId |
user replaced by Contact and Customer
Use cartSetContact or cartSetCustomer, and the contact and customer fields. On carts and tenders, use a contact plus companyId, or customerId.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Cart.user | Deprecated in favor of contact or customer |
| GraphQL | Field | Cart.userId | This field will be removed in a future release, use contact+companyId or customerId instead |
| GraphQL | Mutation | cartSetUser | Will be removed in the future, please use cartSetContact or cartSetCustomer mutations instead. |
| GraphQL | Input field | CartSetUserInput.userId | This field will be removed in a future release, use contact/companyId or customerId instead. |
| GraphQL | Input field | CartStartInput.userId | This field will be removed in a future release, use contact/companyId or customerId instead. |
| GraphQL | Field | ICart.user | Deprecated in favor of contact or customer |
| GraphQL | Field | Tender.user | Deprecated in favor of contact or customer |
| GraphQL | Field | Tender.userId | This field will be removed in a future release, use contact+companyId or customerId instead |
| REST | Property | Cart.userId | Legacy user identifier (deprecated). Previously used for user association. Use contactId with companyId for B2B customers or customerId for B2C customers instead. |
| REST | Property | CartStartInput.userId | User identifier for cart association (deprecated). Legacy field for associating carts with user accounts. Use contactId/companyId for B2B scenarios or customerId for B2C scenarios instead. |
userId filtering on categories removed
Remove the argument. User context filtering is no longer supported and the value is ignored.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Argument | Category.categories(userId:) | User context filtering is no longer supported. This parameter is ignored. |
| GraphQL | Argument | Query.categories(userId:) | User context filtering is no longer supported. This parameter is ignored. |
| GraphQL | Argument | Query.category(userId:) | User context filtering is no longer supported. This parameter is ignored. |
Legacy account fields on Company, Contact and Customer
Most of these are accepted but never stored. Use the sources array for external identifiers and the Company debtorId. Check each field before relying on it.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Company.inheritProductList | Deprecated, will be removed in the future |
| GraphQL | Field | Company.path | Deprecated, will be removed in the future |
| GraphQL | Field | Company.slug | Deprecated, will be removed in the future |
| GraphQL | Field | CompanyContactSearch.debtorId | Deprecated in favor of company debtorId |
| GraphQL | Field | Contact.debtorId | Deprecated in favor of company debtorId |
| REST | Property | CompanyBulkItemDto.authorizeId | Legacy authorization ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.budget | Legacy budget setting field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.budgetInherit | Legacy budget inherit field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.company | Legacy company field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.defaultobjectId | Legacy default object ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.department | Legacy department field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.inheritOrderList | Legacy inherit order list field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.inheritProductList | Configuration setting for automatic product list inheritance from parent company. Deprecated. |
| REST | Property | CompanyBulkItemDto.office | Legacy office field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.orderListAllowAll | Legacy order list allow all field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.orderListManagerId | Legacy order list manager ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyBulkItemDto.parent | Parent company information. Deperecated. |
| REST | Property | CompanyBulkItemDto.path | Hierarchical path representing the company's position in the organizational structure. Deprecated. |
| REST | Property | CompanyBulkItemDto.slug | URL-friendly identifier for company web presence and public-facing interfaces. Deprecated. |
| REST | Property | CompanyBulkItemDto.source | Legacy source system identifier for backward compatibility. Use 'sources' array instead. |
| REST | Property | CompanyBulkItemDto.sourceId | Legacy source system type ID for backward compatibility. Use 'sources' array instead. |
| REST | Property | CompanyBulkItemDto.userManagerId | Legacy user manager ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.authorizeId | Legacy authorization ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.budget | Legacy budget setting field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.budgetInherit | Legacy budget inherit field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.company | Legacy company field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.defaultobjectId | Legacy default object ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.department | Legacy department field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.inheritOrderList | Legacy inherit order list field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.inheritProductList | Configuration setting for automatic product list inheritance from parent company. Deprecated. |
| REST | Property | CompanyCreateDto.office | Legacy office field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.orderListAllowAll | Legacy order list allow all field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.orderListManagerId | Legacy order list manager ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyCreateDto.parent | Parent usergroup reference for hierarchical organizational structures. Deprecated |
| REST | Property | CompanyCreateDto.path | Hierarchical path representing the company's position in the organizational structure. Deprecated. |
| REST | Property | CompanyCreateDto.slug | URL-friendly identifier for company web presence and public-facing interfaces. Deprecated. |
| REST | Property | CompanyCreateDto.source | Legacy source system identifier for backward compatibility. Use 'sources' array instead. |
| REST | Property | CompanyCreateDto.sourceId | Legacy source system type ID for backward compatibility. Use 'sources' array instead. |
| REST | Property | CompanyCreateDto.userManagerId | Legacy user manager ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.authorizeId | Legacy authorization ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.budget | Legacy budget setting field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.budgetInherit | Legacy budget inherit field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.company | Legacy company field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.defaultobjectId | Legacy default object ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.department | Legacy department field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.inheritOrderList | Legacy inherit order list field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.inheritProductList | Configuration setting for automatic product list inheritance from parent company. Deprecated. |
| REST | Property | CompanyUpdateDto.office | Legacy office field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.orderListAllowAll | Legacy order list allow all field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.orderListManagerId | Legacy order list manager ID field for backward compatibility. Not stored in database. |
| REST | Property | CompanyUpdateDto.parent | Parent company information. Deperecated. |
| REST | Property | CompanyUpdateDto.path | Hierarchical path representing the company's position in the organizational structure. Deprecated. |
| REST | Property | CompanyUpdateDto.slug | URL-friendly identifier for company web presence and public-facing interfaces. Deprecated. |
| REST | Property | CompanyUpdateDto.source | Legacy source system identifier for backward compatibility. Use 'sources' array instead. |
| REST | Property | CompanyUpdateDto.sourceId | Legacy source system type ID for backward compatibility. Use 'sources' array instead. |
| REST | Property | CompanyUpdateDto.userManagerId | Legacy user manager ID field for backward compatibility. Not stored in database. |
| REST | Property | ContactBulkItemDto.abbreviation | Contact abbreviation |
| REST | Property | ContactBulkItemDto.parent | The primary company ID for the contact |
| REST | Property | ContactBulkItemDto.pricelistAmount | Price list amount |
| REST | Property | ContactBulkItemDto.pricelistPercentage | Price list percentage |
| REST | Property | ContactBulkItemDto.source | Source system identifier |
| REST | Property | ContactBulkItemDto.sourceId | Source system entity ID |
| REST | Property | ContactBulkItemDto.ssn | Social Security Number |
| REST | Property | ContactBulkItemDto.title | The professional title or designation of the contact |
| REST | Property | ContactCreateDto.abbreviation | Legacy contact abbreviation field for backward compatibility. Not stored in database. |
| REST | Property | ContactCreateDto.pricelistAmount | Legacy price list amount field for backward compatibility. Not stored in database. |
| REST | Property | ContactCreateDto.pricelistPercentage | Legacy price list percentage field for backward compatibility. Not stored in database. |
| REST | Property | ContactCreateDto.source | Legacy source system identifier for backward compatibility. Not stored in database. |
| REST | Property | ContactCreateDto.sourceId | Legacy source system entity ID for backward compatibility. Not stored in database. |
| REST | Property | ContactCreateDto.ssn | Legacy social security number field for backward compatibility. Not stored in database. |
| REST | Property | ContactCreateDto.title | Legacy contact title field for backward compatibility. Not stored in database. |
| REST | Property | ContactUpdateDto.abbreviation | Contact abbreviation |
| REST | Property | ContactUpdateDto.parent | The primary company ID for the contact |
| REST | Property | ContactUpdateDto.pricelistAmount | Price list amount |
| REST | Property | ContactUpdateDto.pricelistPercentage | Price list percentage |
| REST | Property | ContactUpdateDto.source | Source system identifier |
| REST | Property | ContactUpdateDto.sourceId | Source system entity ID |
| REST | Property | ContactUpdateDto.ssn | Social Security Number |
| REST | Property | ContactUpdateDto.title | The professional title or designation of the contact |
| REST | Property | CustomerBulkItemDto.abbreviation | Legacy field - abbreviation |
| REST | Property | CustomerBulkItemDto.parent | Parent customer information. Deprecated, will be removed in the future. |
| REST | Property | CustomerBulkItemDto.pricelistAmount | Legacy/ deprecated field - price list amount |
| REST | Property | CustomerBulkItemDto.pricelistPercentage | Legacy/ deprecated field - price list percentage |
| REST | Property | CustomerBulkItemDto.source | Source name for the customer. Deprecated, use sources instead. |
| REST | Property | CustomerBulkItemDto.sourceId | Source ID for the customer. Deprecated, use sources instead. |
| REST | Property | CustomerBulkItemDto.ssn | Legacy/ deprecated field - SSN |
| REST | Property | CustomerBulkItemDto.title | Legacy/ deprecated field - title |
| REST | Property | CustomerCreateDto.abbreviation | Legacy customer abbreviation field for backward compatibility. Not stored in database. |
| REST | Property | CustomerCreateDto.parent | Parent customer or company reference for hierarchical relationships. Deprecated - use company relationships instead. |
| REST | Property | CustomerCreateDto.pricelistAmount | Legacy price list amount field for backward compatibility. Not stored in database. |
| REST | Property | CustomerCreateDto.pricelistPercentage | Legacy price list percentage field for backward compatibility. Not stored in database. |
| REST | Property | CustomerCreateDto.source | Legacy source system identifier for backward compatibility. Use 'sources' array instead. |
| REST | Property | CustomerCreateDto.sourceId | Legacy source system entity ID for backward compatibility. Use 'sources' array instead. |
| REST | Property | CustomerCreateDto.ssn | Legacy social security number field for backward compatibility. Not stored in database. |
| REST | Property | CustomerCreateDto.title | Legacy customer title field for backward compatibility. Not stored in database. |
| REST | Property | CustomerUpdateDto.abbreviation | Legacy field - abbreviation |
| REST | Property | CustomerUpdateDto.parent | Parent customer information. Deprecated, will be removed in the future. |
| REST | Property | CustomerUpdateDto.pricelistAmount | Legacy/ deprecated field - price list amount |
| REST | Property | CustomerUpdateDto.pricelistPercentage | Legacy/ deprecated field - price list percentage |
| REST | Property | CustomerUpdateDto.source | Source name for the customer. Deprecated, use sources instead. |
| REST | Property | CustomerUpdateDto.sourceId | Source ID for the customer. Deprecated, use sources instead. |
| REST | Property | CustomerUpdateDto.ssn | Legacy/ deprecated field - SSN |
| REST | Property | CustomerUpdateDto.title | Legacy/ deprecated field - title |
Single-language fields replaced by localized arrays
Use the plural localized forms: names, descriptions, shortDescriptions, slugs and shortNames. Default language is derived from the catalog and is no longer accepted on input.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Category.description | Use descriptions instead of description. |
| GraphQL | Field | Category.name | Use names instead of name. |
| GraphQL | Field | Category.shortDescription | Use shortDescriptions instead of shortDescription. |
| GraphQL | Field | Category.slug | Use slugs instead of slug. |
| GraphQL | Input field | CategorySearchInput.slug | Use slugs instead of slug. |
| GraphQL | Field | Cluster.defaultLanguage | No longer used, defaults to 'NL' |
| GraphQL | Field | Cluster.language | No longer used, defaults to 'NL' |
| GraphQL | Field | ClusterConfigSetting.name | Use 'attributeName' field instead. This field will be removed in a future version. |
| GraphQL | Input field | ClusterCreateInput.defaultLanguage | No longer used, defaults to 'NL' |
| GraphQL | Input field | ClusterOptionCreateInput.defaultLanguage | No longer used, defaults to 'NL' |
| GraphQL | Input field | ClusterOptionUpdateInput.defaultLanguage | No longer used, defaults to 'NL' |
| GraphQL | Input field | CreateCategoryInput.defaultLanguage | Default language is now derived from the catalogue and no longer accepted on this input. |
| GraphQL | Input field | CreateCategoryInput.description | Use descriptions instead of description. Only one of description or descriptions is allowed. |
| GraphQL | Input field | CreateCategoryInput.name | Use names instead of name. Only one of name or names is allowed. |
| GraphQL | Input field | CreateCategoryInput.shortDescription | Use shortDescriptions instead of shortDescription. Only one of shortDescription or shortDescriptions is allowed. |
| GraphQL | Input field | CreateCategoryInput.slug | Use slugs instead of slug. Only one of slug or slugs is allowed. |
| GraphQL | Input field | CreateProductInput.language | No longer used, defaults to 'NL' |
| GraphQL | Input field | CreateProductInput.shortName | Use shortNames instead |
| GraphQL | Field | IBaseProduct.language | No longer used, defaults to 'NL' |
| GraphQL | Field | ICluster.language | No longer used, defaults to 'NL' |
| GraphQL | Field | IProduct.language | No longer used, defaults to 'NL' |
| GraphQL | Field | IProduct.shortName | Use shortNames instead |
| GraphQL | Field | Product.defaultLanguage | No longer used, defaults to 'NL' |
| GraphQL | Field | Product.language | No longer used, defaults to 'NL' |
| GraphQL | Field | Product.shortName | Use shortNames instead |
| GraphQL | Input field | UpdateCategoryInput.defaultLanguage | Default language is now derived from the catalogue and no longer accepted on this input. |
| GraphQL | Input field | UpdateCategoryInput.description | Use descriptions instead of description. Only one of description or descriptions is allowed. |
| GraphQL | Input field | UpdateCategoryInput.name | Use names instead of name. Only one of name or names is allowed. |
| GraphQL | Input field | UpdateCategoryInput.shortDescription | Use shortDescriptions instead of shortDescription. Only one of shortDescription or shortDescriptions is allowed. |
| GraphQL | Input field | UpdateCategoryInput.slug | Use slugs instead of slug. Only one of slug or slugs is allowed. |
| GraphQL | Input field | UpdateProductInput.language | No longer used, defaults to 'NL' |
| GraphQL | Input field | UpdateProductInput.shortName | Use shortNames instead |
| REST | Property | BulkCategoryDto.defaultLanguage | Default language for category content used when a requested language is unavailable. |
| REST | Property | BulkCategoryDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | BulkClusterConfigDto.defaultLanguage | Legacy default-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | BulkClusterConfigDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | BulkClusterDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | BulkClusterOptionDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | BulkProductDto.language | Language code (deprecated - do not use in new implementations) |
| REST | Property | BulkProductDto.shortName | Single-language short label shown when the full name is too long. Superseded by the localized short names field. |
| REST | Property | CreateCategoryDto.defaultLanguage | Default language for category content used when a requested language is unavailable. |
| REST | Property | CreateCategoryDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | CreateClusterConfigDto.defaultLanguage | Default language code (deprecated - do not use in new implementations) |
| REST | Property | CreateClusterConfigDto.language | Language code (deprecated - do not use in new implementations) |
| REST | Property | CreateClusterDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | CreateClusterOptionDto.defaultLanguage | Default language code (deprecated - do not use in new implementations) |
| REST | Property | CreateClusterOptionDto.language | Language code (deprecated - do not use in new implementations) |
| REST | Property | CreateProductDto.defaultLanguage | Legacy default-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | CreateProductDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | CreateProductDto.shortName | Single-language short label shown when the full name is too long. Superseded by the localized short names field. |
| REST | Property | ParentReferenceDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | UpdateCategoryDto.defaultLanguage | Default language for category content used when a requested language is unavailable. |
| REST | Property | UpdateCategoryDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | UpdateClusterConfigDto.defaultLanguage | Default language code (deprecated - do not use in new implementations) |
| REST | Property | UpdateClusterConfigDto.language | Language code (deprecated - do not use in new implementations) |
| REST | Property | UpdateClusterDto.defaultLanguage | Legacy default-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | UpdateClusterDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | UpdateClusterOptionDto.defaultLanguage | Default language code (deprecated - do not use in new implementations) |
| REST | Property | UpdateClusterOptionDto.language | Language code (deprecated - do not use in new implementations) |
| REST | Property | UpdateProductDto.defaultLanguage | Legacy default-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | UpdateProductDto.language | Legacy single-language hint retained for backward compatibility; use the localized fields instead. |
| REST | Property | UpdateProductDto.shortName | Single-language short label shown when the full name is too long. Superseded by the localized short names field. |
Legacy date fields replaced by createdAt and lastModifiedAt
Use createdAt and lastModifiedAt, including in search inputs and sort fields.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Input field | CategorySearchInput.dateCreatedFrom | Use createdAtFrom instead of dateCreatedFrom. |
| GraphQL | Input field | CategorySearchInput.dateCreatedTo | Use createdAtTo instead of dateCreatedTo. |
| GraphQL | Input field | CategorySearchInput.dateModifiedFrom | Use lastModifiedAtFrom instead of dateModifiedFrom. |
| GraphQL | Input field | CategorySearchInput.dateModifiedTo | Use lastModifiedAtTo instead of dateModifiedTo. |
| GraphQL | Enum value | CategorySortableFields.dateChanged | Use "lastModifiedAt" instead |
| GraphQL | Enum value | CategorySortableFields.dateCreated | Use "createdAt" instead |
| GraphQL | Field | Inventory.dateModified | Use lastModifiedAt instead |
| GraphQL | Field | InventoryResponse.dateModified | Use lastModifiedAt instead |
| GraphQL | Field | Order.date | Deprecated in favour of createdAt |
| REST | Property | CategorySearchRestDto.dateCreated | Deprecated: use createdAt instead. Date range for creation date filtering |
| REST | Property | CategorySearchRestDto.dateModified | Deprecated: use lastModifiedAt instead. Date range for modification date filtering |
| REST | Property | ClusterSearchRestDto.dateCreated | Deprecated: use createdAt instead. Date range for creation date filtering |
| REST | Property | ClusterSearchRestDto.dateModified | Deprecated: use lastModifiedAt instead. Date range for modification date filtering |
| REST | Property | Inventory.dateModified | [Deprecated] Last modification timestamp. Use lastModifiedAt instead. |
| REST | Property | Order.date | Legacy order creation timestamp. Deprecated field previously used for order creation time. Use 'createdAt' field instead for accurate order timing information. |
| REST | Property | ProductSearchRestDto.dateCreated | Deprecated: use createdAt instead. Date range for creation date filtering |
| REST | Property | ProductSearchRestDto.dateModified | Deprecated: use lastModifiedAt instead. Date range for modification date filtering |
Media queries replaced by the media namespace
Use media.image, media.images, media.video, media.videos, media.document and media.documents.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Query | mediaDocument | Deprecated in favor of media.document |
| GraphQL | Query | mediaDocuments | Deprecated in favor of media.documents |
| GraphQL | Query | mediaImage | Deprecated in favor of media.image |
| GraphQL | Query | mediaImages | Deprecated in favor of media.images |
| GraphQL | Query | mediaVideo | Deprecated in favor of media.video |
| GraphQL | Query | mediaVideos | Deprecated in favor of media.videos |
| GraphQL | Field | Product.mediaDocuments | Deprecated in favor of media.documents |
| GraphQL | Field | Product.mediaImages | Deprecated in favor of media.images |
| GraphQL | Field | Product.mediaVideos | Deprecated in favor of media.videos |
cost replaced by costPrices
Use costPrices with quantity 1. Values sent to the deprecated field are not stored and are not used in calculations.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Price.cost | Deprecated in favor of using costPrices (quantity 1) |
| GraphQL | Input field | PriceCreateInput.cost | Deprecated in favor of costPrices, note provided value will not be stored or used in calculations |
| GraphQL | Input field | PriceSearchInput.cost | Deprecated in favor of costPrices |
| GraphQL | Enum value | PriceSortField.COST_PRICE | Deprecated in favor of price.costPrices. Price query itself can't be sorted on price.cost. Input will be ignored. |
| GraphQL | Input field | PriceUpdateInput.cost | Deprecated in favor of costPrices, note provided value will not be stored or used in calculations |
| REST | Property | PriceBulkInput.cost | Product acquisition cost for margin calculations. The cost incurred to acquire or produce the product, used for profit margin analysis, pricing decisions, and financial reporting. Essential for maintaining profitable pricing strategies. ["Deprecated in favor of costPrices"] |
| REST | Property | PriceCreateInput.cost | Product acquisition cost for margin calculations. The cost incurred to acquire or produce the product, used for profit margin analysis, pricing decisions, and financial reporting. Essential for maintaining profitable pricing strategies. ["Deprecated in favor of costPrices"] |
| REST | Property | PriceSearchInput.cost | Filter by cost price range. Cost price represents the acquisition cost for margin calculations and pricing decisions. [Deprecated in favor of costPrices] |
| REST | Property | PriceUpdateDTO.cost | Product acquisition cost for margin calculations. The cost incurred to acquire or produce the product, used for profit margin analysis, pricing decisions, and financial reporting. Essential for maintaining profitable pricing strategies. ["Deprecated in favor of costPrices"] |
Collections replaced by paginated equivalents
Use companiesPaginated, usersPaginated, contactsPaginated and customersPaginated.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Orderlist.companies | Use companiesPaginated. |
| GraphQL | Field | Orderlist.users | Use usersPaginated. |
| GraphQL | Field | Pricesheet.companies | Use companiesPaginated. |
| GraphQL | Field | Pricesheet.contacts | Use contactsPaginated. |
| GraphQL | Field | Pricesheet.customers | Use customersPaginated. |
Numeric ids replaced by uuid or code
Use uuid, code, categoryId or parentUuid as noted per field.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Category.id | Use categoryId instead |
| GraphQL | Field | Category.parentId | Use parentUuid instead |
| GraphQL | Field | CategoryItemOperationResult.directoryId | Use the 'key' field instead. This field is maintained for backward compatibility with legacy API. |
| GraphQL | Field | Channel.channelId | Use id instead |
| GraphQL | Field | Cluster.sku | Use 'code' instead. Returns the same value as 'code' for clusters. |
| GraphQL | Field | ClusterConfigSetting.id | Use uuid instead. |
| GraphQL | Input field | ClusterCreateInput.sku | Use 'code' instead |
| GraphQL | Field | ITenderBaseItem.id | Deprecate, please use uuid instead |
| GraphQL | Field | TenderBaseItem.id | Deprecate, please use uuid instead |
| GraphQL | Field | TenderMainItem.id | Deprecated, please use uuid instead |
| REST | Property | BulkClusterDto.sku | Stock keeping unit. Uniquely identifies a product within the catalogue. |
| REST | Property | CreateClusterDto.sku | Stock keeping unit. Uniquely identifies a product within the catalogue. |
| REST | Property | UpdateClusterDto.sku | Stock keeping unit. Uniquely identifies a product within the catalogue. |
Mutations replaced by variants that return the entity
Use the AndReturn variants, which return the updated Bundle or Carrier instead of a boolean.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Mutation | bundleAddItems | Use bundleAddItemsAndReturnBundle instead |
| GraphQL | Mutation | bundleRemoveItem | Use bundleRemoveItemAndReturnBundle instead |
| GraphQL | Mutation | carrierAssignWarehouse | Use carrierAssignWarehouseAndReturnCarrier instead. |
| GraphQL | Mutation | carrierUnassignWarehouse | Use carrierUnassignWarehouseAndReturnCarrier instead. |
Company search maintenance operations removed
The companySearch query and its index maintenance mutations are removed with no public replacement.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Query | companySearch | This query is deprecated and will be removed in a future version. |
| GraphQL | Mutation | companySearchCleanupOrphanedIndices | This mutation is deprecated and will be removed in a future version. |
| GraphQL | Mutation | companySearchFixAliasWriteIndex | This mutation is deprecated and will be removed in a future version. |
| GraphQL | Mutation | companySearchIndexUpdateMapping | This mutation is deprecated and will be removed in a future version. |
| GraphQL | Mutation | companySearchReindex | This mutation is deprecated and will be removed in a future version. |
source and sourceId replaced by the sources array
Use the sources array. On orders, externalId is replaced by sources.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Input field | BaseProductSearchInput.sourceIds_deprecated | Use source and sourceIds combination instead |
| GraphQL | Input field | CategoryBaseProductsSearchInput.sourceIds_deprecated | Use source and sourceIds combination instead |
| GraphQL | Input field | CategoryBaseProductsSearchInput.sourceNames_deprecated | Use source and sourceIds combination instead |
| GraphQL | Field | Order.externalId | Use sources instead |
| REST | Property | Order.externalId | [DEPRECATED] External system identifier for order integration. Used to link this order with records in external systems like ERP, accounting software, or third-party marketplaces for synchronization purposes. |
| REST | Property | OrderCreateInput.externalId | [DEPRECATED] ExternalId |
Order status flags no longer used
isExportable, isConfirmable and isArchivable are unused. Remove them from reads and writes.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Input field | CreateOrderStatusInput.isArchivable | Unused. To be removed in a future version |
| GraphQL | Input field | CreateOrderStatusInput.isConfirmable | Unused. To be removed in a future version |
| GraphQL | Input field | CreateOrderStatusInput.isExportable | Unused. To be removed in a future version |
| GraphQL | Field | OrderStatus.isArchivable | Unused. To be removed in a future version |
| GraphQL | Field | OrderStatus.isConfirmable | Unused. To be removed in a future version |
| GraphQL | Field | OrderStatus.isExportable | Unused. To be removed in a future version |
| GraphQL | Input field | OrderStatusesSearchInput.isArchivable | Unused. To be removed in a future version |
| GraphQL | Input field | OrderStatusesSearchInput.isConfirmable | Unused. To be removed in a future version |
| GraphQL | Input field | OrderStatusesSearchInput.isExportable | Unused. To be removed in a future version |
| GraphQL | Input field | UpdateOrderStatusInput.isArchivable | Unused. To be removed in a future version |
| GraphQL | Input field | UpdateOrderStatusInput.isConfirmable | Unused. To be removed in a future version |
| GraphQL | Input field | UpdateOrderStatusInput.isExportable | Unused. To be removed in a future version |
| REST | Property | CreateOrderStatusInput.isArchivable | Marks if the order status can be archived [Unused. To be removed in a future version] |
| REST | Property | CreateOrderStatusInput.isConfirmable | Marks if the order is confirmable [Unused. To be removed in a future version] |
| REST | Property | CreateOrderStatusInput.isExportable | Marks if the order is exportable [Unused. To be removed in a future version] |
| REST | Property | OrderStatus.isArchivable | Marks if the order status can be archived [Unused. To be removed in a future version] |
| REST | Property | OrderStatus.isConfirmable | Marks if the order is confirmable [Unused. To be removed in a future version] |
| REST | Property | OrderStatus.isExportable | Marks if the order is exportable [Unused. To be removed in a future version] |
| REST | Property | UpdateOrderStatusDTO.isArchivable | Marks if the order can be archived [Unused. To be removed in a future version] |
| REST | Property | UpdateOrderStatusDTO.isConfirmable | Marks if the order is confirmable [Unused. To be removed in a future version] |
| REST | Property | UpdateOrderStatusDTO.isExportable | Marks if the order is exportable [Unused. To be removed in a future version] |
class replaced by type
Use the type field.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Cluster.class | Use 'type' field instead. This field will be removed in a future version. |
| GraphQL | Field | IBaseProduct.class | Use 'type' field instead. This field will be removed in a future version. |
| GraphQL | Field | ICluster.class | Use 'type' field instead. This field will be removed in a future version. |
| GraphQL | Field | IProduct.class | Use 'type' field instead. This field will be removed in a future version. |
| GraphQL | Field | Product.class | Use 'type' field instead. This field will be removed in a future version. |
taxCode replaced by taxCodeValue
Use taxCodeValue.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| REST | Property | BulkProductDto.taxCode | Product tax code. Deprecated. |
| REST | Property | CreateSurchargeInput.taxCode | Tax classification code (deprecated - use taxCodeValue instead) that determines applicable tax rates and regulations for the surcharge. |
| REST | Parameter | GET /v2/surcharges ?taxCode | deprecated - use taxCodeValue instead |
| REST | Property | UpdatePaymentDTO.taxCode | Tax code (deprecated - use taxCodeValue instead) |
shippingCost replaced by the business rule builder
Configure shipping logic with the business rule builder, which also covers more complex carrier cases.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | Carrier.shippingCost | Deprecated in favour of Propeller's business rule builder, where logic can be set up for carriers and more complex use cases |
| GraphQL | Input field | CarrierCreateInput.shippingCost | Deprecated in favor of Propeller's business rule builder, where logic can be set up for carriers and more complex use cases |
| REST | Property | Carrier.shippingCost | Base shipping cost for this carrier (deprecated in favor of business rule builder) |
| REST | Property | CarrierCreateInput.shippingCost | Deprecated in favor of Propeller's business rule builder, where logic can be set up for carriers and more complex use cases |
| REST | Property | UpdateCarrierDTO.shippingCost | Deprecated in favor of Propeller's business rule builder, where logic can be set up for carriers and more complex use cases |
Inventory response fields no longer used
messages and total on inventory responses are no longer populated.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | InventoryDeleteResponse.messages | No longer used |
| GraphQL | Field | InventoryResponse.messages | No longer used |
| GraphQL | Field | InventoryResponse.total | No longer used |
| GraphQL | Field | ProductInventory.messages | No longer used |
| REST | Property | InventoryRest.messages | No replacement. |
| REST | Property | InventoryRest.total | No replacement. |
| REST | Property | ProductInventory.messages | [DEPRECATED] No longer used |
Sort values and sortable field names
Use uppercase ASC and DESC. Sortable fields become createdAt and lastModifiedAt.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Enum value | SortOrder.asc | Use ASC instead |
| GraphQL | Enum value | SortOrder.desc | Use DESC instead |
Order address operations renamed
Use orderAddresses and orderAddressUpdate.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Query | addressesByOrderId | Use orderAddresses |
| GraphQL | Mutation | orderUpdateAddress | Use orderAddressUpdate |
Authentication and password reset
Use triggerPasswordSendResetEmailEvent, and pass the input parameter on passwordResetLink.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Mutation | logout | signOut mutation will be available in the future |
| GraphQL | Argument | Mutation.passwordResetLink(email:) | use input parameter instead |
| GraphQL | Argument | Mutation.passwordResetLink(redirectUrl:) | use input parameter instead |
| GraphQL | Mutation | publishPasswordResetEmailEvent | Deprecated in favor of using the triggerPasswordSendResetEmailEvent that utilizes the event-action-manager and template-engine |
Other individual deprecations
These do not belong to a wider migration. Each has its own replacement.
| API | Type | Item | Replacement or note |
|---|---|---|---|
| GraphQL | Field | AdminUserTenant.name | Use federated field to get name |
| GraphQL | Field | AttributeDescription.defaultValue | Will become nullable in a future major version. Until then, descriptions without a configured default value return a placeholder AttributeValue with id "0" (an empty value matching the attribute type) instead of null. |
| GraphQL | Field | Category.path | This field will be removed in a future version. Use categoryPath field resolver for breadcrumb navigation instead. |
| GraphQL | Input field | CategorySearchInput.categoryId | Use categoryIds instead of categoryId. |
| GraphQL | Input field | CategorySearchInput.parentCategoryId | Use parentCategoryIds instead of parentCategoryId. |
| GraphQL | Field | Channel.defaultLetterId | To be removed |
| GraphQL | Field | Cluster.drillDowns | Use config.setting instead |
| GraphQL | Enum value | OrderItemClass.payment | Unused. To be removed in a future version |
| GraphQL | Enum value | OrderItemClass.postage | Unused. To be removed in a future version |
| GraphQL | Field | OrderTotals.orderId | Use the parent Order.id instead |
| GraphQL | Argument | Product.bulkPrices(taxZone:) | Use the taxZone in the input instead |
| GraphQL | Field | Product.offers | Pricing and availability are managed through different fields; this field is preserved for federation compatibility and currently returns an empty list. |
| GraphQL | Input field | ProductSearchInput.containerPathSlugs | Use containerSlugs with getDescendants: true instead |
| GraphQL | Input field | ProductSearchInput.path | No longer used. |
| GraphQL | Field | TenderCarrier.amount | Deprecated, please use price instead |
| GraphQL | Field | TenderTotal.discountOverruled | Not used anymore |
| REST | Property | BulkProductDto.oemCode | Code assigned to the product by the original equipment manufacturer. |
| REST | Property | CreateProductDto.oemCode | Code assigned to the product by the original equipment manufacturer. |
| REST | Endpoint | GET /v2/favoritelists | [DEPRECATED] List favorite lists |
| REST | Property | OrderTotals.orderId | The orderId of this Order. Depricated use the parent Order.id instead |
| REST | Property | UpdateProductDto.oemCode | Code assigned to the product by the original equipment manufacturer. |
Questions
If you are not sure whether a change affects your integration, contact your Propeller account manager with the queries or endpoints you use.