Get a single project's full detail
curl --request GET \
--url https://app.auditynow.com/api/projects/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.auditynow.com/api/projects/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.auditynow.com/api/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://app.auditynow.com/api/projects/{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://app.auditynow.com/api/projects/{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://app.auditynow.com/api/projects/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.auditynow.com/api/projects/{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": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"clientName": "<string>",
"industry": "<string>",
"companySize": "<string>",
"status": "setup",
"createdAt": "2023-11-07T05:31:56Z",
"description": "<string>",
"currency": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"documentsCount": 123,
"analysisProgress": 50,
"stakeholdersCount": 123,
"hasAnalysis": true,
"hasInterviewAnalysis": true,
"hasAuditAnalysis": true,
"hasQuestionnaires": true,
"hasDeliverables": true,
"statusLabel": "<string>",
"statusDescription": "<string>",
"lastActivity": {
"type": "document_upload",
"date": "2023-11-07T05:31:56Z",
"description": "<string>"
},
"documents": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fileName": "<string>",
"fileType": "<string>",
"fileSize": 123,
"storagePath": "<string>",
"uploadStatus": "<string>",
"createdAt": "2023-11-07T05:31:56Z"
}
],
"businessAnalysis": [
{}
]
}{
"error": "Unauthorized"
}{
"error": "<string>",
"details": "<string>"
}Projects
Get a single project's full detail
Returns the full project record, including documents array and analysis status flags. Returns 404 if the project doesn’t exist or doesn’t belong to the authenticated user (ownership is enforced by an explicit user_id filter in this route, not RLS, since the route uses the service-role client).
GET
/
api
/
projects
/
{id}
Get a single project's full detail
curl --request GET \
--url https://app.auditynow.com/api/projects/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.auditynow.com/api/projects/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.auditynow.com/api/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://app.auditynow.com/api/projects/{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://app.auditynow.com/api/projects/{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://app.auditynow.com/api/projects/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.auditynow.com/api/projects/{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": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"clientName": "<string>",
"industry": "<string>",
"companySize": "<string>",
"status": "setup",
"createdAt": "2023-11-07T05:31:56Z",
"description": "<string>",
"currency": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"documentsCount": 123,
"analysisProgress": 50,
"stakeholdersCount": 123,
"hasAnalysis": true,
"hasInterviewAnalysis": true,
"hasAuditAnalysis": true,
"hasQuestionnaires": true,
"hasDeliverables": true,
"statusLabel": "<string>",
"statusDescription": "<string>",
"lastActivity": {
"type": "document_upload",
"date": "2023-11-07T05:31:56Z",
"description": "<string>"
},
"documents": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fileName": "<string>",
"fileType": "<string>",
"fileSize": 123,
"storagePath": "<string>",
"uploadStatus": "<string>",
"createdAt": "2023-11-07T05:31:56Z"
}
],
"businessAnalysis": [
{}
]
}{
"error": "Unauthorized"
}{
"error": "<string>",
"details": "<string>"
}Authorizations
A Personal Access Token issued from https://app.auditynow.com/dashboard/settings/api-tokens. Format: aky_<32 random chars>.
Response
Project detail

