GET Get CMS page
{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/
QUERY PARAMS

builderId
content-type
document-id
Examples
REQUEST

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/");

CURLcode ret = curl_easy_perform(hnd);
(require '[clj-http.client :as client])

(client/get "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/")
require "http/client"

url = "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/"

response = HTTP::Client.get url
puts response.body
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Get,
    RequestUri = new Uri("{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/"),
};
using (var response = await client.SendAsync(request))
{
    response.EnsureSuccessStatusCode();
    var body = await response.Content.ReadAsStringAsync();
    Console.WriteLine(body);
}
var client = new RestClient("{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/");
var request = new RestRequest("", Method.Get);
var response = client.Execute(request);
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
GET /baseUrl/_v/cms/api/:builderId/:content-type/:document-id/ HTTP/1.1
Host: example.com

AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("GET", "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/")
  .execute()
  .toCompletableFuture()
  .thenAccept(System.out::println)
  .join();

client.close();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/"))
    .method("GET", HttpRequest.BodyPublishers.noBody())
    .build();
HttpResponse response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/")
  .get()
  .build();

Response response = client.newCall(request).execute();
HttpResponse response = Unirest.get("{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/")
  .asString();
const data = null;

const xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener('readystatechange', function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open('GET', '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/');

xhr.send(data);
import axios from 'axios';

const options = {
  method: 'GET',
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/'
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const url = '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
const settings = {
  async: true,
  crossDomain: true,
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/',
  method: 'GET',
  headers: {}
};

$.ajax(settings).done(function (response) {
  console.log(response);
});
val client = OkHttpClient()

val request = Request.Builder()
  .url("{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/")
  .get()
  .build()

val response = client.newCall(request).execute()
const http = require('https');

const options = {
  method: 'GET',
  hostname: 'example.com',
  port: null,
  path: '/baseUrl/_v/cms/api/:builderId/:content-type/:document-id/',
  headers: {}
};

const req = http.request(options, function (res) {
  const chunks = [];

  res.on('data', function (chunk) {
    chunks.push(chunk);
  });

  res.on('end', function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.end();
const request = require('request');

const options = {
  method: 'GET',
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/'
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
const unirest = require('unirest');

const req = unirest('GET', '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/');

req.end(function (res) {
  if (res.error) throw new Error(res.error);

  console.log(res.body);
});
const axios = require('axios').default;

const options = {
  method: 'GET',
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/'
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const fetch = require('node-fetch');

const url = '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
#import 

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/"]
                                                       cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                   timeoutInterval:10.0];
[request setHTTPMethod:@"GET"];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
                                            completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
                                                if (error) {
                                                    NSLog(@"%@", error);
                                                } else {
                                                    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
                                                    NSLog(@"%@", httpResponse);
                                                }
                                            }];
[dataTask resume];
open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/" in

Client.call `GET uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
 "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
request('GET', '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/');

echo $response->getBody();
setUrl('{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/');
$request->setMethod(HTTP_METH_GET);

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
setRequestUrl('{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/');
$request->setRequestMethod('GET');
$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
$response = Invoke-WebRequest -Uri '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/' -Method GET 
$response = Invoke-RestMethod -Uri '{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/' -Method GET 
import http.client

conn = http.client.HTTPSConnection("example.com")

conn.request("GET", "/baseUrl/_v/cms/api/:builderId/:content-type/:document-id/")

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
import requests

url = "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/"

response = requests.get(url)

print(response.json())
library(httr)

url <- "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/"

response <- VERB("GET", url, content_type("application/octet-stream"))

content(response, "text")
require 'uri'
require 'net/http'

url = URI("{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
require 'faraday'

conn = Faraday.new(
  url: 'https://example.com',
)

response = conn.get('/baseUrl/_v/cms/api/:builderId/:content-type/:document-id/') do |req|
end

puts response.status
puts response.body
use reqwest;

#[tokio::main]
pub async fn main() {
    let url = "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/";

    let client = reqwest::Client::new();
    let response = client.get(url)
        .send()
        .await;

    let results = response.unwrap()
        .json::()
        .await
        .unwrap();

    dbg!(results);
}
curl --request GET \
  --url {{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/
http GET {{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/
wget --quiet \
  --method GET \
  --output-document \
  - {{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/_v/cms/api/:builderId/:content-type/:document-id/")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
RESPONSE HEADERS

Content-Type
application/json
RESPONSE BODY json

{
  "id": "ad2fd81d-a53c-4281-8d01-a4fc2f274db3",
  "name": "Home",
  "sections": [
    {
      "data": {
        "actionLink": "link.url.com",
        "dismissible": true,
        "icon": "Bell",
        "linkText": "alert link",
        "text": "alert text"
      },
      "id": "1651804180614",
      "name": "Alert"
    },
    {
      "data": {
        "imageAlt": "hero image",
        "imageSrc": "https://storeframework.vtexassets.com/assets/vtex.file-manager-graphql/images/299f7d32-bb6a-40fd-82a0-4af5573ba572___17239443c00c1e894cff10ca05018058.jpg",
        "link": "/office",
        "linkText": "See all",
        "subtitle": "At FastStore you can shop the best tech of 2022. Enjoy and get 10% off on your first purchase.",
        "title": "New Products Available"
      },
      "id": "1647286556072",
      "name": "Hero"
    },
    {
      "data": {
        "after": "0",
        "first": 5,
        "selectedFacets": [
          {
            "key": "productClusterIds",
            "value": "140"
          }
        ],
        "sort": "score_desc",
        "title": "Most Wanted!"
      },
      "id": "1649293076336",
      "name": "ProductShelf"
    },
    {
      "data": {
        "after": "0",
        "first": 3,
        "selectedFacets": [
          {
            "key": "productClusterIds",
            "value": "141"
          }
        ],
        "sort": "score_desc",
        "title": "Just Arrived"
      },
      "id": "1649293548351",
      "name": "ProductTiles"
    },
    {
      "data": {
        "actionLabel": "See all",
        "actionPath": "/office",
        "caption": "Enjoy and get 10% off on your first purchase!!",
        "title": "Receive our news and promotions in advance."
      },
      "id": "1647286735093",
      "name": "BannerText"
    },
    {
      "data": {
        "after": "0",
        "first": 5,
        "selectedFacets": [
          {
            "key": "productClusterIds",
            "value": "142"
          }
        ],
        "sort": "score_desc",
        "title": "Deals & Promotions"
      },
      "id": "1649293131632",
      "name": "ProductShelf"
    }
  ],
  "status": "published",
  "type": "home",
  "versionId": "e3867e2c-7082-4fe6-83ed-c473242b6970",
  "versionStatus": "publishing"
}
GET Get all CMS pages by Content Type
{{baseUrl}}/_v/cms/api/:builderId/:content-type
QUERY PARAMS

builderId
content-type
Examples
REQUEST

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/_v/cms/api/:builderId/:content-type");

CURLcode ret = curl_easy_perform(hnd);
(require '[clj-http.client :as client])

(client/get "{{baseUrl}}/_v/cms/api/:builderId/:content-type")
require "http/client"

url = "{{baseUrl}}/_v/cms/api/:builderId/:content-type"

response = HTTP::Client.get url
puts response.body
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Get,
    RequestUri = new Uri("{{baseUrl}}/_v/cms/api/:builderId/:content-type"),
};
using (var response = await client.SendAsync(request))
{
    response.EnsureSuccessStatusCode();
    var body = await response.Content.ReadAsStringAsync();
    Console.WriteLine(body);
}
var client = new RestClient("{{baseUrl}}/_v/cms/api/:builderId/:content-type");
var request = new RestRequest("", Method.Get);
var response = client.Execute(request);
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "{{baseUrl}}/_v/cms/api/:builderId/:content-type"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
GET /baseUrl/_v/cms/api/:builderId/:content-type HTTP/1.1
Host: example.com

AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("GET", "{{baseUrl}}/_v/cms/api/:builderId/:content-type")
  .execute()
  .toCompletableFuture()
  .thenAccept(System.out::println)
  .join();

client.close();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("{{baseUrl}}/_v/cms/api/:builderId/:content-type"))
    .method("GET", HttpRequest.BodyPublishers.noBody())
    .build();
HttpResponse response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("{{baseUrl}}/_v/cms/api/:builderId/:content-type")
  .get()
  .build();

Response response = client.newCall(request).execute();
HttpResponse response = Unirest.get("{{baseUrl}}/_v/cms/api/:builderId/:content-type")
  .asString();
const data = null;

const xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener('readystatechange', function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open('GET', '{{baseUrl}}/_v/cms/api/:builderId/:content-type');

xhr.send(data);
import axios from 'axios';

const options = {
  method: 'GET',
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type'
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const url = '{{baseUrl}}/_v/cms/api/:builderId/:content-type';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
const settings = {
  async: true,
  crossDomain: true,
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type',
  method: 'GET',
  headers: {}
};

$.ajax(settings).done(function (response) {
  console.log(response);
});
val client = OkHttpClient()

val request = Request.Builder()
  .url("{{baseUrl}}/_v/cms/api/:builderId/:content-type")
  .get()
  .build()

val response = client.newCall(request).execute()
const http = require('https');

const options = {
  method: 'GET',
  hostname: 'example.com',
  port: null,
  path: '/baseUrl/_v/cms/api/:builderId/:content-type',
  headers: {}
};

const req = http.request(options, function (res) {
  const chunks = [];

  res.on('data', function (chunk) {
    chunks.push(chunk);
  });

  res.on('end', function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.end();
const request = require('request');

const options = {
  method: 'GET',
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type'
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
const unirest = require('unirest');

const req = unirest('GET', '{{baseUrl}}/_v/cms/api/:builderId/:content-type');

req.end(function (res) {
  if (res.error) throw new Error(res.error);

  console.log(res.body);
});
const axios = require('axios').default;

const options = {
  method: 'GET',
  url: '{{baseUrl}}/_v/cms/api/:builderId/:content-type'
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const fetch = require('node-fetch');

const url = '{{baseUrl}}/_v/cms/api/:builderId/:content-type';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
#import 

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/_v/cms/api/:builderId/:content-type"]
                                                       cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                   timeoutInterval:10.0];
[request setHTTPMethod:@"GET"];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
                                            completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
                                                if (error) {
                                                    NSLog(@"%@", error);
                                                } else {
                                                    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
                                                    NSLog(@"%@", httpResponse);
                                                }
                                            }];
[dataTask resume];
open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "{{baseUrl}}/_v/cms/api/:builderId/:content-type" in

Client.call `GET uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
 "{{baseUrl}}/_v/cms/api/:builderId/:content-type",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
request('GET', '{{baseUrl}}/_v/cms/api/:builderId/:content-type');

echo $response->getBody();
setUrl('{{baseUrl}}/_v/cms/api/:builderId/:content-type');
$request->setMethod(HTTP_METH_GET);

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
setRequestUrl('{{baseUrl}}/_v/cms/api/:builderId/:content-type');
$request->setRequestMethod('GET');
$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
$response = Invoke-WebRequest -Uri '{{baseUrl}}/_v/cms/api/:builderId/:content-type' -Method GET 
$response = Invoke-RestMethod -Uri '{{baseUrl}}/_v/cms/api/:builderId/:content-type' -Method GET 
import http.client

conn = http.client.HTTPSConnection("example.com")

conn.request("GET", "/baseUrl/_v/cms/api/:builderId/:content-type")

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
import requests

url = "{{baseUrl}}/_v/cms/api/:builderId/:content-type"

response = requests.get(url)

print(response.json())
library(httr)

url <- "{{baseUrl}}/_v/cms/api/:builderId/:content-type"

response <- VERB("GET", url, content_type("application/octet-stream"))

content(response, "text")
require 'uri'
require 'net/http'

url = URI("{{baseUrl}}/_v/cms/api/:builderId/:content-type")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
require 'faraday'

conn = Faraday.new(
  url: 'https://example.com',
)

response = conn.get('/baseUrl/_v/cms/api/:builderId/:content-type') do |req|
end

puts response.status
puts response.body
use reqwest;

#[tokio::main]
pub async fn main() {
    let url = "{{baseUrl}}/_v/cms/api/:builderId/:content-type";

    let client = reqwest::Client::new();
    let response = client.get(url)
        .send()
        .await;

    let results = response.unwrap()
        .json::()
        .await
        .unwrap();

    dbg!(results);
}
curl --request GET \
  --url {{baseUrl}}/_v/cms/api/:builderId/:content-type
http GET {{baseUrl}}/_v/cms/api/:builderId/:content-type
wget --quiet \
  --method GET \
  --output-document \
  - {{baseUrl}}/_v/cms/api/:builderId/:content-type
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/_v/cms/api/:builderId/:content-type")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
RESPONSE HEADERS

Content-Type
application/json
RESPONSE BODY json

{
  "data": [
    {
      "id": "d05d3db8-62b2-4f0b-9b70-d6d25ff29b6e",
      "name": "Electronics",
      "parameters": {
        "collection": {
          "brandId": "123",
          "sort": "\"\""
        }
      },
      "sections": [
        {
          "data": {
            "content": "{\"blocks\":[{\"key\":\"dtg7g\",\"text\":\"-\",\"type\":\"unstyled\",\"depth\":0,\"inlineStyleRanges\":[],\"entityRanges\":[],\"data\":{}}],\"entityMap\":{}}"
          },
          "id": "1632244409269",
          "name": "RichText"
        },
        {
          "data": {
            "content": "{\"blocks\":[{\"key\":\"2qtft\",\"text\":\",\",\"type\":\"unstyled\",\"depth\":0,\"inlineStyleRanges\":[],\"entityRanges\":[],\"data\":{}}],\"entityMap\":{}}"
          },
          "id": "1632244445091",
          "name": "RichText"
        }
      ],
      "status": "published",
      "type": "plp",
      "versionId": "ed51d1cd-e020-4f16-b48b-ca83e720472d",
      "versionStatus": "published"
    },
    {
      "id": "4ab6388d-79e6-492f-adda-3e251b85eeb6",
      "name": "Beauty",
      "parameters": {
        "collection": {
          "clusterId": "1182",
          "seo": {
            "description": "beauty products",
            "slug": "/beauty",
            "title": "Page title"
          },
          "sort": "\"\""
        }
      },
      "sections": [
        {
          "data": {
            "alt": "beauty",
            "description": "beauty products",
            "desktop": {
              "srcSet": "https://storecomponents.vtexassets.com/assets/vtex.file-manager-graphql/images/dda7c17e-5182-4439-b5af-94f651e2d835___1ef09be73ec9e80c719da13432666441.jpeg"
            },
            "mobile": {
              "srcSet": "https://storecomponents.vtexassets.com/assets/vtex.file-manager-graphql/images/ed8ef334-c1e5-4269-8728-34dbffeda424___1ef09be73ec9e80c719da13432666441.jpeg"
            },
            "title": "beauty"
          },
          "id": "1643319987751",
          "name": "SearchBanner"
        }
      ],
      "status": "published",
      "type": "plp",
      "versionId": "95f940d4-584e-4b3d-9872-8c713ba42583",
      "versionStatus": "published"
    }
  ],
  "hasNextPage": false,
  "totalItems": 2
}
GET Get all Content Types
{{baseUrl}}/_v/cms/api/:builderId/
QUERY PARAMS

builderId
Examples
REQUEST

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/_v/cms/api/:builderId/");

CURLcode ret = curl_easy_perform(hnd);
(require '[clj-http.client :as client])

(client/get "{{baseUrl}}/_v/cms/api/:builderId/")
require "http/client"

url = "{{baseUrl}}/_v/cms/api/:builderId/"

response = HTTP::Client.get url
puts response.body
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Get,
    RequestUri = new Uri("{{baseUrl}}/_v/cms/api/:builderId/"),
};
using (var response = await client.SendAsync(request))
{
    response.EnsureSuccessStatusCode();
    var body = await response.Content.ReadAsStringAsync();
    Console.WriteLine(body);
}
var client = new RestClient("{{baseUrl}}/_v/cms/api/:builderId/");
var request = new RestRequest("", Method.Get);
var response = client.Execute(request);
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "{{baseUrl}}/_v/cms/api/:builderId/"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
GET /baseUrl/_v/cms/api/:builderId/ HTTP/1.1
Host: example.com

AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("GET", "{{baseUrl}}/_v/cms/api/:builderId/")
  .execute()
  .toCompletableFuture()
  .thenAccept(System.out::println)
  .join();

client.close();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("{{baseUrl}}/_v/cms/api/:builderId/"))
    .method("GET", HttpRequest.BodyPublishers.noBody())
    .build();
HttpResponse response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("{{baseUrl}}/_v/cms/api/:builderId/")
  .get()
  .build();

Response response = client.newCall(request).execute();
HttpResponse response = Unirest.get("{{baseUrl}}/_v/cms/api/:builderId/")
  .asString();
const data = null;

const xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener('readystatechange', function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open('GET', '{{baseUrl}}/_v/cms/api/:builderId/');

xhr.send(data);
import axios from 'axios';

const options = {method: 'GET', url: '{{baseUrl}}/_v/cms/api/:builderId/'};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const url = '{{baseUrl}}/_v/cms/api/:builderId/';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
const settings = {
  async: true,
  crossDomain: true,
  url: '{{baseUrl}}/_v/cms/api/:builderId/',
  method: 'GET',
  headers: {}
};

$.ajax(settings).done(function (response) {
  console.log(response);
});
val client = OkHttpClient()

val request = Request.Builder()
  .url("{{baseUrl}}/_v/cms/api/:builderId/")
  .get()
  .build()

val response = client.newCall(request).execute()
const http = require('https');

const options = {
  method: 'GET',
  hostname: 'example.com',
  port: null,
  path: '/baseUrl/_v/cms/api/:builderId/',
  headers: {}
};

const req = http.request(options, function (res) {
  const chunks = [];

  res.on('data', function (chunk) {
    chunks.push(chunk);
  });

  res.on('end', function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.end();
const request = require('request');

const options = {method: 'GET', url: '{{baseUrl}}/_v/cms/api/:builderId/'};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
const unirest = require('unirest');

const req = unirest('GET', '{{baseUrl}}/_v/cms/api/:builderId/');

req.end(function (res) {
  if (res.error) throw new Error(res.error);

  console.log(res.body);
});
const axios = require('axios').default;

const options = {method: 'GET', url: '{{baseUrl}}/_v/cms/api/:builderId/'};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const fetch = require('node-fetch');

const url = '{{baseUrl}}/_v/cms/api/:builderId/';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
#import 

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/_v/cms/api/:builderId/"]
                                                       cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                   timeoutInterval:10.0];
[request setHTTPMethod:@"GET"];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
                                            completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
                                                if (error) {
                                                    NSLog(@"%@", error);
                                                } else {
                                                    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
                                                    NSLog(@"%@", httpResponse);
                                                }
                                            }];
[dataTask resume];
open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "{{baseUrl}}/_v/cms/api/:builderId/" in

Client.call `GET uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
 "{{baseUrl}}/_v/cms/api/:builderId/",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
request('GET', '{{baseUrl}}/_v/cms/api/:builderId/');

echo $response->getBody();
setUrl('{{baseUrl}}/_v/cms/api/:builderId/');
$request->setMethod(HTTP_METH_GET);

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
setRequestUrl('{{baseUrl}}/_v/cms/api/:builderId/');
$request->setRequestMethod('GET');
$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
$response = Invoke-WebRequest -Uri '{{baseUrl}}/_v/cms/api/:builderId/' -Method GET 
$response = Invoke-RestMethod -Uri '{{baseUrl}}/_v/cms/api/:builderId/' -Method GET 
import http.client

conn = http.client.HTTPSConnection("example.com")

conn.request("GET", "/baseUrl/_v/cms/api/:builderId/")

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
import requests

url = "{{baseUrl}}/_v/cms/api/:builderId/"

response = requests.get(url)

print(response.json())
library(httr)

url <- "{{baseUrl}}/_v/cms/api/:builderId/"

response <- VERB("GET", url, content_type("application/octet-stream"))

content(response, "text")
require 'uri'
require 'net/http'

url = URI("{{baseUrl}}/_v/cms/api/:builderId/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
require 'faraday'

conn = Faraday.new(
  url: 'https://example.com',
)

response = conn.get('/baseUrl/_v/cms/api/:builderId/') do |req|
end

puts response.status
puts response.body
use reqwest;

#[tokio::main]
pub async fn main() {
    let url = "{{baseUrl}}/_v/cms/api/:builderId/";

    let client = reqwest::Client::new();
    let response = client.get(url)
        .send()
        .await;

    let results = response.unwrap()
        .json::()
        .await
        .unwrap();

    dbg!(results);
}
curl --request GET \
  --url {{baseUrl}}/_v/cms/api/:builderId/
http GET {{baseUrl}}/_v/cms/api/:builderId/
wget --quiet \
  --method GET \
  --output-document \
  - {{baseUrl}}/_v/cms/api/:builderId/
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/_v/cms/api/:builderId/")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
RESPONSE HEADERS

Content-Type
application/json
RESPONSE BODY json

{
  "contentTypes": [
    {
      "configurationSchemaSets": [],
      "id": "home",
      "name": "Home Page"
    },
    {
      "configurationSchemaSets": [
        {
          "configurations": [
            {
              "name": "Collection",
              "schema": {
                "description": "Definition of a Collection for the CMS",
                "oneOf": [
                  {
                    "description": "Configure a Category",
                    "properties": {
                      "categoryId": {
                        "title": "Category ID",
                        "type": "string"
                      },
                      "sort": {
                        "default": "\"\"",
                        "enum": [
                          "\"\"",
                          "discount:desc",
                          "release:desc",
                          "name:asc",
                          "name:desc",
                          "orders:desc",
                          "price:asc",
                          "price:desc"
                        ],
                        "enumNames": [
                          "Relevance",
                          "Discount",
                          "Release date",
                          "Name, ascending",
                          "Name, descending",
                          "Sales",
                          "Price: Low to High",
                          "Price: High to Low"
                        ],
                        "title": "Default ordering",
                        "type": "string"
                      }
                    },
                    "required": [
                      "categoryId",
                      "sort"
                    ],
                    "title": "Category",
                    "type": "object"
                  },
                  {
                    "description": "Configure a Brand",
                    "properties": {
                      "brandId": {
                        "title": "Brand ID",
                        "type": "string"
                      },
                      "sort": {
                        "default": "\"\"",
                        "enum": [
                          "\"\"",
                          "discount:desc",
                          "release:desc",
                          "name:asc",
                          "name:desc",
                          "orders:desc",
                          "price:asc",
                          "price:desc"
                        ],
                        "enumNames": [
                          "Relevance",
                          "Discount",
                          "Release date",
                          "Name, ascending",
                          "Name, descending",
                          "Sales",
                          "Price: Low to High",
                          "Price: High to Low"
                        ],
                        "title": "Default ordering",
                        "type": "string"
                      }
                    },
                    "required": [
                      "brandId",
                      "sort"
                    ],
                    "title": "Brand",
                    "type": "object"
                  },
                  {
                    "description": "Configure a Collection",
                    "properties": {
                      "clusterId": {
                        "title": "Collection ID",
                        "type": "string"
                      },
                      "seo": {
                        "properties": {
                          "description": {
                            "default": "Page description",
                            "description": "Suggested for search engines",
                            "title": "Description (Meta description)",
                            "type": "string"
                          },
                          "slug": {
                            "default": "/path/to/page",
                            "description": "Final part of the page's address. No spaces allowed.",
                            "pattern": "^/([a-zA-Z0-9]|-|/|_)*",
                            "title": "URL slug",
                            "type": "string"
                          },
                          "title": {
                            "default": "Page title",
                            "description": "Appears in the browser tab and is suggested for search engines",
                            "title": "Title",
                            "type": "string"
                          }
                        },
                        "required": [
                          "title",
                          "description",
                          "slug"
                        ],
                        "title": "Seo",
                        "type": "object",
                        "widget": {
                          "ui:ObjectFieldTemplate": "GoogleSeoPreview"
                        }
                      },
                      "sort": {
                        "default": "\"\"",
                        "enum": [
                          "\"\"",
                          "discount:desc",
                          "release:desc",
                          "name:asc",
                          "name:desc",
                          "orders:desc",
                          "price:asc",
                          "price:desc"
                        ],
                        "enumNames": [
                          "Relevance",
                          "Discount",
                          "Release date",
                          "Name, ascending",
                          "Name, descending",
                          "Sales",
                          "Price: Low to High",
                          "Price: High to Low"
                        ],
                        "title": "Default ordering",
                        "type": "string"
                      }
                    },
                    "required": [
                      "clusterId",
                      "sort",
                      "seo"
                    ],
                    "title": "Collection",
                    "type": "object"
                  }
                ],
                "title": "Collection"
              }
            }
          ],
          "name": "Parameters"
        }
      ],
      "id": "plp",
      "name": "PLP"
    },
    {
      "configurationSchemaSets": [
        {
          "configurations": [
            {
              "name": "siteMetadataWithSlug",
              "schema": {
                "description": "Configure global site metadata",
                "properties": {
                  "description": {
                    "default": "A beautifuly designed site for general VTEX stores",
                    "title": "Meta tag description",
                    "type": "string"
                  },
                  "slug": {
                    "default": "/landing-page-url",
                    "title": "URL Slug",
                    "type": "string"
                  },
                  "title": {
                    "default": "Store Theme | VTEX FastStore",
                    "description": "Display this title when no other tile is available",
                    "title": "Default page title",
                    "type": "string"
                  },
                  "titleTemplate": {
                    "default": "%s | Store Theme",
                    "title": "Title template to be used in category/product pages",
                    "type": "string"
                  }
                },
                "title": "Site Metadata",
                "type": "object",
                "widget": {
                  "ui:ObjectFieldTemplate": "GoogleSeoPreview"
                }
              }
            }
          ],
          "name": "SEO"
        }
      ],
      "id": "institutionalPage",
      "name": "Institutional page"
    }
  ]
}