curl --request GET \
--url https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_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://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"environments": [
{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"publicUrl": "<string>",
"config": {
"deploymentSpec": {
"replicas": 123,
"autoscaling": {
"maxReplicas": 123
},
"staticIP": true,
"resources": {
"limits": {
"cpu": "<string>",
"memory": "<string>"
},
"requests": {
"cpu": "<string>",
"memory": "<string>"
}
},
"serviceAccountName": "<string>"
}
},
"executionPool": "<string>",
"files": [
{
"filename": "<string>",
"content": "<string>"
}
],
"labels": {},
"deployedVersion": {
"id": "<string>",
"name": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"description": "<string>",
"labels": {}
}
}
],
"name": "<string>",
"currentFiles": {
"files": [
{
"filename": "<string>",
"content": "<string>"
}
],
"labels": {}
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"settings": {
"acceptCodeChangesAutomatically": true,
"testingMockWithAI": true,
"planningChatVersion": "<string>",
"chatStoredInDB": true
},
"metadata": {
"sentimentHistory": [
{
"timestamp": "2023-11-07T05:31:56Z",
"sentimentScore": 123,
"messageId": "<string>"
}
]
},
"dynamicVariablesSchema": {}
}{
"code": "<string>",
"message": "<string>",
"fields": [
{
"field": "<string>",
"message": "<string>"
}
],
"details": "<string>"
}Get Project
GetProject returns the files and configuration for the specified project ID. If one does not exist then a 404 will be returned.
curl --request GET \
--url https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_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://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"environments": [
{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"publicUrl": "<string>",
"config": {
"deploymentSpec": {
"replicas": 123,
"autoscaling": {
"maxReplicas": 123
},
"staticIP": true,
"resources": {
"limits": {
"cpu": "<string>",
"memory": "<string>"
},
"requests": {
"cpu": "<string>",
"memory": "<string>"
}
},
"serviceAccountName": "<string>"
}
},
"executionPool": "<string>",
"files": [
{
"filename": "<string>",
"content": "<string>"
}
],
"labels": {},
"deployedVersion": {
"id": "<string>",
"name": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"description": "<string>",
"labels": {}
}
}
],
"name": "<string>",
"currentFiles": {
"files": [
{
"filename": "<string>",
"content": "<string>"
}
],
"labels": {}
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"settings": {
"acceptCodeChangesAutomatically": true,
"testingMockWithAI": true,
"planningChatVersion": "<string>",
"chatStoredInDB": true
},
"metadata": {
"sentimentHistory": [
{
"timestamp": "2023-11-07T05:31:56Z",
"sentimentScore": 123,
"messageId": "<string>"
}
]
},
"dynamicVariablesSchema": {}
}{
"code": "<string>",
"message": "<string>",
"fields": [
{
"field": "<string>",
"message": "<string>"
}
],
"details": "<string>"
}Authorizations
Bearer token authentication used by the Versori Platform. External consumers must provide an API key, however internal consumers must provide a JWT id_token issued by our IdP.
Response
OK
The Project represents a deployable unit within our platform that includes both the functional components (files) and configuration. It serves as the backbone of custom or predefined functionalities, allowing organizations to create, update, and manage APIs and projects.
The unique identifier for the project.
List of environments for the project.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
ProjectSettings hold configuration for the project
Show child attributes
Show child attributes
ProjectMetadata hold metadata for the project
Show child attributes
Show child attributes
DynamicVariablesSchema is the JSON schema for the project's dynamic variables.