> ## Documentation Index
> Fetch the complete documentation index at: https://docs.salesive.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Remove item from wishlist

> Remove a product or specific variant from the authenticated shopper's wishlist.

## Request

```http theme={null}
DELETE /wishlist/69fb494e51280f9f65d059ae
Authorization: Bearer {{token}}
x-shop-id: {{shopId}}
```

## Headers

| Header          | Type   | Description                                   |
| --------------- | ------ | --------------------------------------------- |
| `Authorization` | string | Provide the customer token as `Bearer <jwt>`. |
| `x-shop-id`     | string | Identify the shop that owns the wishlist.     |

## Path parameters

| Parameter   | Type   | Required | Description                                                                                      |
| ----------- | ------ | -------- | ------------------------------------------------------------------------------------------------ |
| `productId` | string | Yes      | Identifier of the wishlist item to remove — a product, food, or service id.                      |
| `variantId` | string | No       | Variant identifier. Include as `/wishlist/{productId}/{variantId}` to remove a specific variant. |

<Note>
  Without a `variantId`, the product is removed regardless of which variant was saved — so a shopper who hearted a specific variant can un-heart it with the plain `/wishlist/{productId}` route.
</Note>

## Request examples

### Remove product (all saved variants)

```http theme={null}
DELETE /wishlist/69fb494e51280f9f65d059ae
```

### Remove specific variant

```http theme={null}
DELETE /wishlist/69fb494e51280f9f65d059ae/692caacbb07303c9be5ea8f2
```

## Successful response

```json theme={null}
{
    "status": 200,
    "success": true,
    "message": "Item removed from wishlist",
    "data": {
        "_id": "693c048b5b24f53cda947ddb",
        "user": "69360693a7a8f7dc8ae32d6d",
        "shop": "68b8f52575da81b332af29f1",
        "items": [],
        "createdAt": "2025-12-12T12:03:23.104Z",
        "updatedAt": "2026-06-09T09:10:35.579Z",
        "__v": 4,
        "id": "693c048b5b24f53cda947ddb"
    }
}
```

## Error response

```json theme={null}
{
    "status": 404,
    "success": false,
    "message": "Wishlist item not found",
    "data": null
}
```


## OpenAPI

````yaml DELETE /wishlist/{productId}
openapi: 3.1.0
info:
  title: Salesive Store API
  description: >-
    REST interface for querying products, categories, and merchandising banners
    exposed by Salesive storefronts.
  version: 1.0.0
servers:
  - description: Production
    url: https://store.salesive.com/api/v1
security:
  - BearerAuth: []
    ShopIdHeader: []
paths:
  /wishlist/{productId}:
    delete:
      summary: Remove item from wishlist
      description: >-
        Remove a saved item from the authenticated shopper's wishlist. Omitting
        the variant removes the product regardless of which variant was saved;
        append `/{variantId}` to remove one specific variant entry.
      parameters:
        - $ref: '#/components/parameters/XShopIdHeader'
        - name: productId
          in: path
          required: true
          description: >-
            Identifier of the wishlist item to remove — a product, food, or
            service id. Without a `variantId`, removes the product regardless of
            the saved variant.
          schema:
            type: string
      responses:
        '200':
          description: Item removed from wishlist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WishlistResponse'
        '401':
          description: Unauthorized.
        '404':
          description: Item not found in wishlist.
components:
  parameters:
    XShopIdHeader:
      name: x-shop-id
      in: header
      description: >-
        Optional identifier that scopes responses to a specific storefront when
        the referer cannot be inferred.
      required: false
      schema:
        type: string
  schemas:
    WishlistResponse:
      type: object
      required:
        - status
        - success
        - message
        - data
      properties:
        status:
          type: integer
        success:
          type: boolean
        message:
          type: string
        data:
          $ref: '#/components/schemas/Wishlist'
    Wishlist:
      type: object
      required:
        - _id
        - user
        - shop
        - items
      properties:
        _id:
          type: string
          description: Wishlist identifier.
        user:
          type: string
          description: Identifier of the shopper who owns the wishlist.
        shop:
          type: string
          description: Identifier of the shop associated with the wishlist.
        items:
          type: array
          items:
            $ref: '#/components/schemas/WishlistItem'
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
    WishlistItem:
      type: object
      required:
        - product
        - addedAt
      properties:
        product:
          type: object
          description: Product or variant metadata.
          properties:
            _id:
              type: string
            name:
              type: string
            price:
              type: number
            images:
              type: array
              items:
                type: string
                format: uri
            formattedPrice:
              type: string
            sku:
              type: string
        variant:
          type: string
          description: Variant identifier if applicable.
        variantAttributes:
          type: object
          additionalProperties:
            type: string
        addedAt:
          type: string
          format: date-time
          description: Timestamp when item was added to wishlist.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT issued by the Salesive Store API for authenticated shoppers.
    ShopIdHeader:
      type: apiKey
      in: header
      name: x-shop-id
      description: >-
        Optional storefront identifier sent as a header to scope responses to a
        specific shop. Try It requests remember this value once provided.

````