Get Project Deliverable
curl --request GET \
--url https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable', 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.fifteenth.com/v1beta/projects/{project_id}/deliverable",
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://api.fifteenth.com/v1beta/projects/{project_id}/deliverable"
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://api.fifteenth.com/v1beta/projects/{project_id}/deliverable")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable")
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{
"project_id": 123,
"deliverable_id": 123,
"document_id": 123,
"title": "<string>",
"type": "<string>",
"status": "<string>",
"view_link": "<string>",
"summary": "<string>",
"prepared_date": "<string>",
"expires_at": "<string>",
"404 Not Found": {},
"403 Forbidden": {}
}Deliverables
Get Project Deliverable
Get the primary deliverable for a tax project with viewing link and summary
GET
/
v1beta
/
projects
/
{project_id}
/
deliverable
Get Project Deliverable
curl --request GET \
--url https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable', 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.fifteenth.com/v1beta/projects/{project_id}/deliverable",
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://api.fifteenth.com/v1beta/projects/{project_id}/deliverable"
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://api.fifteenth.com/v1beta/projects/{project_id}/deliverable")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable")
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{
"project_id": 123,
"deliverable_id": 123,
"document_id": 123,
"title": "<string>",
"type": "<string>",
"status": "<string>",
"view_link": "<string>",
"summary": "<string>",
"prepared_date": "<string>",
"expires_at": "<string>",
"404 Not Found": {},
"403 Forbidden": {}
}Overview
The Get Project Deliverable endpoint returns the primary deliverable for a tax project. This provides access to the main deliverable document along with a summary and viewing link to the Fifteenth platform.Request
Path Parameters
number
required
Project identifier to retrieve the deliverable for.
Response
number
Project identifier.
number
Unique deliverable identifier.
number
Document ID of the deliverable file.
string
Title of the deliverable.
string
Type of deliverable:
tax_return, quarterly_estimate, tax_plan, equity_plan.string
Current status:
draft, completed, delivered.string
Link to view the deliverable in the Fifteenth platform.
string
Text summary of the deliverable contents and key information.
string
ISO 8601 timestamp when the deliverable was prepared.
string
ISO 8601 timestamp when the view link expires.
Examples
import requests
project_id = 12345
url = f"https://api.fifteenth.com/v1beta/projects/{project_id}/deliverable"
headers = {
"Authorization": "Bearer 15th_your_api_key_here"
}
response = requests.get(url, headers=headers)
deliverable = response.json()
print(f"Deliverable: {deliverable['title']}")
print(f"Type: {deliverable['type']}")
print(f"Status: {deliverable['status']}")
print(f"View Link: {deliverable['view_link']}")
print(f"Summary: {deliverable['summary']}")
const projectId = 12345;
const url = `https://api.fifteenth.com/v1beta/projects/${projectId}/deliverable`;
const response = await fetch(url, {
headers: {
'Authorization': 'Bearer 15th_your_api_key_here'
}
});
const deliverable = await response.json();
console.log(`Deliverable: ${deliverable.title}`);
console.log(`Type: ${deliverable.type}`);
console.log(`Status: ${deliverable.status}`);
console.log(`View Link: ${deliverable.view_link}`);
console.log(`Summary: ${deliverable.summary}`);
curl -X GET "https://api.fifteenth.com/v1beta/projects/12345/deliverable" \
-H "Authorization: Bearer 15th_your_api_key_here"
Sample Response
{
"project_id": 12345,
"deliverable_id": 67890,
"document_id": 98765,
"title": "2024 Federal Tax Return (Form 1040)",
"type": "tax_return",
"status": "completed",
"view_link": "https://app.fifteenth.com/projects/12345/deliverable/67890/view?token=abc123",
"summary": "Your 2024 federal tax return has been completed. Key highlights: Total income of $85,000, federal tax liability of $12,500, and a refund of $2,100. The return includes wages from ABC Corporation, interest income from savings accounts, and standard deduction claimed. All required forms and schedules have been included.",
"prepared_date": "2024-02-10T10:00:00Z",
"expires_at": "2024-08-10T10:00:00Z"
}
Error Responses
object
No deliverable found for the specified project.
{
"error": {
"code": "DELIVERABLE_NOT_FOUND",
"message": "No deliverable found for project",
"details": {
"project_id": 12345
}
}
}
object
Project exists but you don’t have access.
{
"error": {
"code": "ACCESS_DENIED",
"message": "You don't have access to this project",
"details": {
"project_id": 12345
}
}
}
Next Steps
List Deliverables
View all deliverables for a project
Project Status
Check project progress and completion
Retrieve Document
Get document details using document_id
Authentication
Learn about API authentication and security