deleteattributeset.md
Delete Attribute Set
Deletes the attribute set identified by id (a positive integer). The tenant's default attribute set cannot be deleted.
Authentication
Requires a valid API key in the X-API-KEY header.
Query Parameters
| Parameter | Required | Description |
|---|---|---|
| deleteAssociatedProductsAndVariants | ❌ No | When true, products and variants associated to the attribute set are deleted along with it. When false or omitted, those products and variants are reassigned to the tenant's default attribute set. |
Response
- 200 OK — Attribute set deleted; the response body (DeleteAttributeSet2Response) summarises the operation.
- 204 No Content — Nothing to delete (idempotent success).
Error Responses
- 400 Bad Request — id is not a positive integer or the request is otherwise invalid (ValidationFailureRepresentation).
- 401 Unauthorized — Missing or invalid tenant identifier.
- 404 Not Found — No attribute set with the given identifier exists for this tenant.
- 500 Internal Server Error — Unexpected technical error.
Example
Request:
DELETE /v2/AttributeSets(7)?deleteAssociatedProductsAndVariants=false HTTP/1.1
X-API-KEY: your-api-key-here
Response:
HTTP/1.1 200 OK
Content-Type: application/json
Path parameters:
id(integer, required) Attribute set identifier (positive integer).
Query parameters:
deleteAssociatedProductsAndVariants(boolean) When true, also deletes associated products and variants. When false or omitted, those products and variants are reassigned to the default attribute set.
Response 200 fields (application/json):
@readLink(string,null)@editLink(string,null)@etag(string,null)@navigationLinks(array,null)@navigationLinks.uri(string,null)@associationLinks(array,null)@associationLinks.uri(string,null)@context(string,null)value(any,null)
Response 400 fields (application/json):
validationFailures(object,null) Example: {"Layout":[{"PropertyName":"Layout","ErrorMessage":"The layout must contain exactly the attributes of the stored layout. Missing: tags. Unknown: extra_field.","AttemptedValue":null}]}
Response 401 fields (application/json):
type(string,null)title(string,null)status(integer,null)detail(string,null)instance(string,null)
Response 500 fields (application/json):
error(string,null)details(any,null)