Skip to content

Developer overview

Plan: the storefront JavaScript API, DOM events, custom elements and styling hooks are on every plan, including Free. Pixel events are Pro and up. The REST API is Premium.

Cove works as it is, or you can build on it: change wishlists from your own server, or build your own wishlist controls in your theme. There is no SDK to install and no script tag to add.

Part Plan What it’s for
JavaScript API (window.CoveWishlist) Every plan Read, save and remove items from your theme’s own code, for the shopper on the page.
DOM events (cove:change, cove:ready) Every plan React in your theme when the wishlist changes, from any heart, button or API call.
Custom elements (<cove-button>, <cove-count>, <cove-link>) Every plan Wishlist buttons, counters and links where the app’s theme blocks can’t go, such as page builders.
Styling hooks Every plan (custom CSS in the Studio: Pro and up) CSS custom properties and classes that stay stable within version 1.
Pixel events Pro and up Wishlist actions as Shopify customer events, for your own pixels (merchant guide). Klaviyo and Omnisend forwarding rides on the same events (Klaviyo and Omnisend).
REST API Premium Server-to-server JSON API with API keys: read a customer’s wishlist, save and remove items, list the most-saved products.
  • On the storefront, everything runs on Cove’s own script, which the app embed loads. The JavaScript API, the custom elements and Cove’s own hearts all share the same shopper (signed in or guest), the same saved state and the same requests: save through window.CoveWishlist and every heart and counter on the page updates. Each change fires cove:change on document, whoever made it. With the app embed off, none of it is on the page.
  • Pixel events are published from those same changes. On Pro and up, the embed loads a small extra script that turns each save, removal, share and back-in-stock signup into a Shopify customer event your pixels can subscribe to.
  • The REST API is for your servers: an ERP, a CRM, a marketing tool or a headless storefront’s backend. It works with Shopify customer IDs, never with a shopper’s browser, and it is the right choice when there is no Online Store theme in the way. Saves made through it show up on the storefront, the wishlist page and the “My wishlist” account page like any other.
  • Shopify Flow is the no-code route for server-side reactions such as back-in-stock and price-drop: see Shopify Flow.

Cove ships no remote code: its storefront scripts come only from the app’s theme extension, and the API answers JSON only.

The REST API is described by a public OpenAPI 3.1 document at https://covewishlist.com/developers/openapi.json. Import it into Postman, Insomnia or a code generator. The same reference is on covewishlist.com/developers, which also documents the storefront HTTP endpoints under /apps/wishlist that Cove’s own hearts call, for fully custom wishlist UIs inside an Online Store theme.

The REST API is versioned in its path (/api/v1) and follows semantic versioning: within v1, changes only add things (new endpoints, new optional fields, new error codes), so ignore fields you don’t recognise. Anything that would break an integration ships as /api/v2, announced with time to move. window.CoveWishlist, its events, the custom elements and the styling hooks follow the same rule (version 1).

None of these hands out personal data. The REST API identifies customers by numeric Shopify customer ID only and never accepts or returns an email, name or other customer detail. Events carry product, variant and list IDs, never an email, customer ID, guest token or share link. See security and privacy and GDPR.