I just want to have my own email subscribe form post to a klaviyo page that facilitates the subscription. I don’t want to use a pre-built klaviyo form. They don’t work (at least not easily) and they don’t match the the styles on my site. I don’t need a whole klaviyo js frontend loading on my site. This should be really simple. Does it exist?
Solved
Is there a way to allow a user to subscribe to a list using my own signup form?

Best answer by msl
Here’s the magic incantation from the server side for any future readers. Just replace the three variables indicated by angle brackets. Still annoying that you can’t just do this through an html form without some client side javascript! It’d be so easy!
curl --request POST \
--url 'https://a.klaviyo.com/client/subscriptions/?company_id=<COMPANY_ID>' \
--header 'content-type: application/json' \
--header 'revision: 2023-07-15' \
--data '
{
"data": {
"type": "subscription",
"attributes": {
"profile": {
"data": {
"type": "profile",
"attributes": {
"email": "<EMAIL>"
}
}
}
},
"relationships": {
"list": {
"data": {
"type": "list",
"id": "<LIST_ID>"
}
}
}
}
}
'
Reply
Rich Text Editor, editor1
Editor toolbars
Press ALT 0 for help
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.