Retrieve Account
curl --request GET \
--url https://api.fifteenth.com/v1beta/accounts/{account_id} \
--header 'Authorization: <authorization>'import requests
url = "https://api.fifteenth.com/v1beta/accounts/{account_id}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://api.fifteenth.com/v1beta/accounts/{account_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.fifteenth.com/v1beta/accounts/{account_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: <authorization>"
],
]);
$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/accounts/{account_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
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/accounts/{account_id}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fifteenth.com/v1beta/accounts/{account_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"email": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"status": "<string>",
"404 Not Found": {},
"403 Forbidden": {},
"400 Bad Request": {}
}Accounts
Retrieve Account
Retrieve detailed information about a specific client account
GET
/
v1beta
/
accounts
/
{account_id}
Retrieve Account
curl --request GET \
--url https://api.fifteenth.com/v1beta/accounts/{account_id} \
--header 'Authorization: <authorization>'import requests
url = "https://api.fifteenth.com/v1beta/accounts/{account_id}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://api.fifteenth.com/v1beta/accounts/{account_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.fifteenth.com/v1beta/accounts/{account_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: <authorization>"
],
]);
$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/accounts/{account_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
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/accounts/{account_id}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fifteenth.com/v1beta/accounts/{account_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"email": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"status": "<string>",
"404 Not Found": {},
"403 Forbidden": {},
"400 Bad Request": {}
}Overview
The Retrieve Account endpoint allows you to fetch complete details about a client’s tax preparation account, including current status, project information, and recent activity. This endpoint is essential for monitoring client onboarding progress and account health.Request
Path Parameters
number
required
The unique Fifteenth account identifier.Format: Numeric ID
Example:
Example:
12345Headers
string
required
Bearer token with your Partner API key
string
Should be
application/jsonQuery Parameters
Response
Account Information
string
Unique Fifteenth account identifier.
string
Client’s primary email address.
string
Client’s first name.
string
Client’s last name.
string
Current account status.Values:
active- Account is active and ready for useonboarding- Client is completing initial setup
Examples
Basic Account Retrieval
import requests
account_id = 12345
url = f"https://api.fifteenth.com/v1beta/accounts/{account_id}"
headers = {
"Authorization": "Bearer 15th_your_api_key_here",
"Content-Type": "application/json"
}
response = requests.get(url, headers=headers)
account = response.json()
print(f"Account Status: {account['status']}")
print(f"Client: {account['first_name']} {account['last_name']}")
print(f"Email: {account['email']}")
const accountId = 12345;
const url = `https://api.fifteenth.com/v1beta/accounts/${accountId}`;
const headers = {
'Authorization': 'Bearer 15th_your_api_key_here',
'Content-Type': 'application/json'
};
const response = await fetch(url, { headers });
const account = await response.json();
console.log(`Account Status: ${account.status}`);
console.log(`Client: ${account.first_name} ${account.last_name}`);
console.log(`Email: ${account.email}`);
curl -X GET "https://api.fifteenth.com/v1beta/accounts/12345" \
-H "Authorization: Bearer 15th_your_api_key_here" \
-H "Content-Type: application/json"
Response Examples
Basic Account Response
Response
{
"id": 12345,
"email": "john.doe@example.com",
"first_name": "John",
"last_name": "Doe",
"status": "active"
}
Error Responses
object
Account not found with the provided ID.
{
"error": {
"code": "ACCOUNT_NOT_FOUND",
"message": "Account not found",
"details": {
"account_id": 12345
}
}
}
object
Account exists but you don’t have access (not your partner’s client).
{
"error": {
"code": "ACCESS_DENIED",
"message": "You don't have access to this account",
"details": {
"account_id": 12345
}
}
}
object
Invalid request parameters.
{
"error": {
"code": "INVALID_PARAMETERS",
"message": "Invalid request parameters"
}
}
Status Reference
Account Status Values
| Status | Description | Typical Actions |
|---|---|---|
active | Account is ready for tax services | Upload documents, start projects |
onboarding | Client completing initial setup | Monitor onboarding progress |
suspended | Account temporarily suspended | Contact support |
completed | Tax services completed for the year | Review deliverables, plan next year |
Usage Patterns
Basic Account Information
Use the retrieve account endpoint to get basic client details:def get_client_info(account_id):
account = get_account(account_id)
print(f"Client: {account['first_name']} {account['last_name']}")
print(f"Email: {account['email']}")
print(f"Status: {account['status']}")
return account
Next Steps
List Accounts
Retrieve all accounts for your partner organization
Create Account
Create new client accounts with optional spouse
Project Status
Get detailed project progress information
Upload Documents
Upload tax documents for the account