curl --request PATCH \
--url https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"config": {},
"translations": {}
}
'import requests
url = "https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}"
payload = {
"config": {},
"translations": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({config: {}, translations: {}})
};
fetch('https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}', 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.1club.ai/v1/platform/website/pages/{slug}/sections/{index}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'config' => [
],
'translations' => [
]
]),
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.1club.ai/v1/platform/website/pages/{slug}/sections/{index}"
payload := strings.NewReader("{\n \"config\": {},\n \"translations\": {}\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"config\": {},\n \"translations\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"config\": {},\n \"translations\": {}\n}"
response = http.request(request)
puts response.read_body{
"slug": "<string>",
"title": "<string>",
"isHomepage": true,
"sectionCount": 123,
"sectionTypes": [
"<string>"
],
"sections": [
{
"type": "<string>",
"config": {},
"translations": {}
}
],
"metaTitle": "<string>",
"metaDescription": "<string>",
"ogImage": "<string>",
"noindex": true,
"translations": {},
"seo": {
"metaTitle": "<string>",
"metaDescription": "<string>",
"ogImage": "<string>",
"canonicalUrl": "<string>",
"indexable": true,
"notIndexableReason": "page_noindex",
"localizedLocales": [
"<string>"
]
},
"url": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Update a section's config
Merges the given fields into the section’s existing config; fields you do not send keep their current values. Array fields are replaced wholesale, so send the whole array when changing one entry.
index is the section’s 0-based position as returned by GET /pages/{slug}. Indexes shift when sections are added or removed, so re-read the page rather than reusing a stale one.
translations is how one section’s copy is localized without rewriting the page. Unlike config it replaces the whole locale map, so read the section first and send back every locale you are keeping.
curl --request PATCH \
--url https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"config": {},
"translations": {}
}
'import requests
url = "https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}"
payload = {
"config": {},
"translations": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({config: {}, translations: {}})
};
fetch('https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}', 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.1club.ai/v1/platform/website/pages/{slug}/sections/{index}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'config' => [
],
'translations' => [
]
]),
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.1club.ai/v1/platform/website/pages/{slug}/sections/{index}"
payload := strings.NewReader("{\n \"config\": {},\n \"translations\": {}\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"config\": {},\n \"translations\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.1club.ai/v1/platform/website/pages/{slug}/sections/{index}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"config\": {},\n \"translations\": {}\n}"
response = http.request(request)
puts response.read_body{
"slug": "<string>",
"title": "<string>",
"isHomepage": true,
"sectionCount": 123,
"sectionTypes": [
"<string>"
],
"sections": [
{
"type": "<string>",
"config": {},
"translations": {}
}
],
"metaTitle": "<string>",
"metaDescription": "<string>",
"ogImage": "<string>",
"noindex": true,
"translations": {},
"seo": {
"metaTitle": "<string>",
"metaDescription": "<string>",
"ogImage": "<string>",
"canonicalUrl": "<string>",
"indexable": true,
"notIndexableReason": "page_noindex",
"localizedLocales": [
"<string>"
]
},
"url": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
Organization-scoped bearer credential: a customer API key (1club_sk_live_...) or an MCP OAuth access token.
Query Parameters
Body
Response
The page, with the section updated
A page on the website draft.
URL path segment. The homepage is served at "/" regardless of its slug.
Present when fetching a single page; omitted from list responses.
Show child attributes
Show child attributes
True when the page asks search engines not to index it and is left out of sitemap.xml.
Per-locale metaTitle/metaDescription overrides, keyed by locale: { "bg": { "metaTitle": "…" } }. Present when fetching a single page.
Show child attributes
Show child attributes
What the published page will actually put in its <head>, after every fallback has been applied - the authored fields alone do not answer "is my SEO right?". Present when fetching a single page. Read-only.
Show child attributes
Show child attributes
The page's public URL once published.
Was this page helpful?