Skip to main content
POST
/
newsletter
/
subscribe
Subscribe to newsletter
curl --request POST \
  --url https://store.salesive.com/api/v1/newsletter/subscribe \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-shop-id: <api-key>' \
  --data '
{
  "email": "[email protected]",
  "name": "<string>",
  "source": "<string>"
}
'

Request

POST /newsletter/subscribe
x-shop-id: {{shopId}}
Content-Type: application/json

{
  "email": "[email protected]",
  "name": "John Doe",
  "source": "footer"
}

Headers

HeaderTypeDescription
x-shop-idstringIdentify the shop.
Content-TypestringAlways set to application/json.

Body parameters

FieldTypeRequiredDescription
emailstringYesEmail address to subscribe.
namestringNoSubscriber’s name.
sourcestringNoSource of subscription (e.g., “footer”, “popup”).

Successful response

{
    "status": 200,
    "success": true,
    "message": "Successfully subscribed to newsletter",
    "data": {
        "_id": "696cec6b1f67481865877497",
        "name": "John Doe",
        "email": "[email protected]",
        "shop": "68b8f52575da81b332af29f1",
        "isSubscribed": true,
        "source": "footer",
        "createdAt": "2026-01-18T14:21:31.322Z",
        "updatedAt": "2026-01-18T14:21:31.322Z"
    }
}

Error response

{
    "status": 400,
    "success": false,
    "message": "Email already subscribed",
    "data": {}
}

Authorizations

Authorization
string
header
required

JWT issued by the Salesive Store API for authenticated shoppers.

x-shop-id
string
header
required

Optional storefront identifier sent as a header to scope responses to a specific shop. Try It requests remember this value once provided.

Headers

x-shop-id
string

Optional identifier that scopes responses to a specific storefront when the referer cannot be inferred.

Body

application/json
email
string<email>
required
name
string
source
string

Source of subscription

Response

201

Subscribed successfully