Landing Pages
Update Landing Page
Update a draft or published landing page
PUT
/
api
/
v1
/
landing-pages
/
{landingPageId}
Update Landing Page
curl --request PUT \
--url https://api.sequenzy.com/api/v1/landing-pages/{landingPageId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"slug": "<string>",
"content": {}
}
'import requests
url = "https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}"
payload = {
"name": "<string>",
"slug": "<string>",
"content": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', slug: '<string>', content: {}})
};
fetch('https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'slug' => '<string>',
'content' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"content\": {}\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"content\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"content\": {}\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"landingPage": {
"id": "lp_abc123",
"name": "Updated Product Waitlist",
"slug": "updated-product-waitlist",
"status": "draft",
"publicUrl": null,
"previewUrl": "https://sequenzy.com/lp/preview/lp_abc123?token=..."
}
}
{
"success": false,
"error": "Provide name, slug, or content."
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"error": "Landing page not found"
}
Update a landing page name, slug, or builder content.
Omitted top-level fields keep their values. Providing
Changes to a published page take effect immediately, including content and
slug changes. This endpoint does not create a separate draft or require
another publish call. Duplicate the page to experiment without changing the
live page.
content replaces the
whole builder document, not just the supplied blocks or theme keys. Read the
current page, edit its content and send the complete document. See the
content reference for the schema and a
minimal valid example.
Request
string
required
Landing page ID.
string
Updated landing page name.
string
Updated URL slug. It is normalized and made unique for the company.
object
Updated landing page builder JSON. Form redirect URLs are validated before
saving. Button and pricing CTA URLs accept an https URL or an in-page anchor
such as
#form, and theme.sectionAnimation controls the scroll reveal.curl -X PUT "https://api.sequenzy.com/api/v1/landing-pages/lp_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Updated Product Waitlist",
"slug": "updated-product-waitlist"
}'
Responses
{
"success": true,
"landingPage": {
"id": "lp_abc123",
"name": "Updated Product Waitlist",
"slug": "updated-product-waitlist",
"status": "draft",
"publicUrl": null,
"previewUrl": "https://sequenzy.com/lp/preview/lp_abc123?token=..."
}
}
{
"success": false,
"error": "Provide name, slug, or content."
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"error": "Landing page not found"
}
⌘I
Update Landing Page
curl --request PUT \
--url https://api.sequenzy.com/api/v1/landing-pages/{landingPageId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"slug": "<string>",
"content": {}
}
'import requests
url = "https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}"
payload = {
"name": "<string>",
"slug": "<string>",
"content": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', slug: '<string>', content: {}})
};
fetch('https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'slug' => '<string>',
'content' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"content\": {}\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"content\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/landing-pages/{landingPageId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"content\": {}\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"landingPage": {
"id": "lp_abc123",
"name": "Updated Product Waitlist",
"slug": "updated-product-waitlist",
"status": "draft",
"publicUrl": null,
"previewUrl": "https://sequenzy.com/lp/preview/lp_abc123?token=..."
}
}
{
"success": false,
"error": "Provide name, slug, or content."
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"error": "Landing page not found"
}