Update an app instance
curl --request PATCH \
--url https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"catalog_slug": "<string>",
"title": "<string>",
"fields": {},
"desktop": true,
"tablet": true,
"mobile": true,
"status": true,
"resource_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app}"
payload = {
"catalog_slug": "<string>",
"title": "<string>",
"fields": {},
"desktop": True,
"tablet": True,
"mobile": True,
"status": True,
"resource_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
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({
catalog_slug: '<string>',
title: '<string>',
fields: {},
desktop: true,
tablet: true,
mobile: true,
status: true,
resource_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app}', 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.contactbutton.com/v1/workspaces/{workspace}/apps/{app}",
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([
'catalog_slug' => '<string>',
'title' => '<string>',
'fields' => [
],
'desktop' => true,
'tablet' => true,
'mobile' => true,
'status' => true,
'resource_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
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.contactbutton.com/v1/workspaces/{workspace}/apps/{app}"
payload := strings.NewReader("{\n \"catalog_slug\": \"<string>\",\n \"title\": \"<string>\",\n \"fields\": {},\n \"desktop\": true,\n \"tablet\": true,\n \"mobile\": true,\n \"status\": true,\n \"resource_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\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.contactbutton.com/v1/workspaces/{workspace}/apps/{app}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"catalog_slug\": \"<string>\",\n \"title\": \"<string>\",\n \"fields\": {},\n \"desktop\": true,\n \"tablet\": true,\n \"mobile\": true,\n \"status\": true,\n \"resource_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app}")
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 \"catalog_slug\": \"<string>\",\n \"title\": \"<string>\",\n \"fields\": {},\n \"desktop\": true,\n \"tablet\": true,\n \"mobile\": true,\n \"status\": true,\n \"resource_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"data": "<unknown>",
"meta": {
"request_id": "<string>",
"next_cursor": "<string>"
}
}Update an app instance
PATCH
/
workspaces
/
{workspace}
/
apps
/
{app}
Update an app instance
curl --request PATCH \
--url https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"catalog_slug": "<string>",
"title": "<string>",
"fields": {},
"desktop": true,
"tablet": true,
"mobile": true,
"status": true,
"resource_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app}"
payload = {
"catalog_slug": "<string>",
"title": "<string>",
"fields": {},
"desktop": True,
"tablet": True,
"mobile": True,
"status": True,
"resource_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
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({
catalog_slug: '<string>',
title: '<string>',
fields: {},
desktop: true,
tablet: true,
mobile: true,
status: true,
resource_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app}', 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.contactbutton.com/v1/workspaces/{workspace}/apps/{app}",
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([
'catalog_slug' => '<string>',
'title' => '<string>',
'fields' => [
],
'desktop' => true,
'tablet' => true,
'mobile' => true,
'status' => true,
'resource_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
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.contactbutton.com/v1/workspaces/{workspace}/apps/{app}"
payload := strings.NewReader("{\n \"catalog_slug\": \"<string>\",\n \"title\": \"<string>\",\n \"fields\": {},\n \"desktop\": true,\n \"tablet\": true,\n \"mobile\": true,\n \"status\": true,\n \"resource_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\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.contactbutton.com/v1/workspaces/{workspace}/apps/{app}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"catalog_slug\": \"<string>\",\n \"title\": \"<string>\",\n \"fields\": {},\n \"desktop\": true,\n \"tablet\": true,\n \"mobile\": true,\n \"status\": true,\n \"resource_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.contactbutton.com/v1/workspaces/{workspace}/apps/{app}")
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 \"catalog_slug\": \"<string>\",\n \"title\": \"<string>\",\n \"fields\": {},\n \"desktop\": true,\n \"tablet\": true,\n \"mobile\": true,\n \"status\": true,\n \"resource_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"data": "<unknown>",
"meta": {
"request_id": "<string>",
"next_cursor": "<string>"
}
}Authorizations
A Contact Button scoped bearer key. Send Authorization: Bearer <token>.
Token abilities are enforced independently of workspace membership; both checks must pass.
OAuth 2.0 authorization-code flows are not currently available.
Body
application/json
Visible from 768px through 1023px. Defaults to mobile for legacy payloads.
Viewport visibility using mobile below 768px, tablet from 768px through 1023px, and desktop at 1024px or wider.
Show child attributes
Show child attributes
Available options:
form, list, null Related topics
Update an app instance (PUT compatibility)Get an app instanceCreate an app instanceDelete an unused app instanceUpdate a buttonWas this page helpful?
⌘I