curl --request PATCH \
--url https://api.chainstack.com/v1/projects/{id}/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "My new project name",
"description": "My new project description"
}
'import requests
url = "https://api.chainstack.com/v1/projects/{id}/"
payload = {
"name": "My new project name",
"description": "My new project description"
}
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({name: 'My new project name', description: 'My new project description'})
};
fetch('https://api.chainstack.com/v1/projects/{id}/', 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.chainstack.com/v1/projects/{id}/",
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([
'name' => 'My new project name',
'description' => 'My new project description'
]),
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.chainstack.com/v1/projects/{id}/"
payload := strings.NewReader("{\n \"name\": \"My new project name\",\n \"description\": \"My new project description\"\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.chainstack.com/v1/projects/{id}/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"My new project name\",\n \"description\": \"My new project description\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.chainstack.com/v1/projects/{id}/")
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 \"name\": \"My new project name\",\n \"description\": \"My new project description\"\n}"
response = http.request(request)
puts response.read_body{
"id": "PR-123-456",
"name": "My public chain project",
"type": "public",
"networks": 0,
"created_at": "2020-06-15T07:38:00.747Z",
"creator": {
"id": "UR-111-111-111",
"email": "john.smith@example.com",
"first_name": "John",
"last_name": "Smith",
"organization": {
"id": "RG-123-456",
"name": "My organization"
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"fields": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Update a project with the Chainstack Platform API
Update the name or description of an existing Chainstack project using the Platform API. Send a PATCH request to /v1/projects// with the updated fields.
curl --request PATCH \
--url https://api.chainstack.com/v1/projects/{id}/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "My new project name",
"description": "My new project description"
}
'import requests
url = "https://api.chainstack.com/v1/projects/{id}/"
payload = {
"name": "My new project name",
"description": "My new project description"
}
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({name: 'My new project name', description: 'My new project description'})
};
fetch('https://api.chainstack.com/v1/projects/{id}/', 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.chainstack.com/v1/projects/{id}/",
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([
'name' => 'My new project name',
'description' => 'My new project description'
]),
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.chainstack.com/v1/projects/{id}/"
payload := strings.NewReader("{\n \"name\": \"My new project name\",\n \"description\": \"My new project description\"\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.chainstack.com/v1/projects/{id}/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"My new project name\",\n \"description\": \"My new project description\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.chainstack.com/v1/projects/{id}/")
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 \"name\": \"My new project name\",\n \"description\": \"My new project description\"\n}"
response = http.request(request)
puts response.read_body{
"id": "PR-123-456",
"name": "My public chain project",
"type": "public",
"networks": 0,
"created_at": "2020-06-15T07:38:00.747Z",
"creator": {
"id": "UR-111-111-111",
"email": "john.smith@example.com",
"first_name": "John",
"last_name": "Smith",
"organization": {
"id": "RG-123-456",
"name": "My organization"
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"fields": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Authorizations
Chainstack API uses API keys to authenticate requests. You can view and manage your API keys in the platform UI.
Your API keys carry many privileges, so be sure to keep them secure!
Provide your API key as the Authorization header. The value of the header consists of Bearer prefix and secret key generated through the platform UI.
curl -X GET 'https://api.chainstack.com/v1/organization/' \
--header 'Authorization: Bearer FX7CWlLg.FMpAO8cgCX2N7s41EncRru2nb5CmTZUt'
All API requests must be made over HTTPS.
Path Parameters
A unique value identifying the Object.
Body
Response
Name of the project.
Description of the project.
Type of the project.
publicfor public chain project
public Number of members invited to the consortium project.
Only for the consortium project.
Number of networks created in the project.
Creator of the project.
Show child attributes
Show child attributes
When the project was created.
Was this page helpful?