curl --request GET \
--url https://www.ruddr.io/api/workspace/clients/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.ruddr.io/api/workspace/clients/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.ruddr.io/api/workspace/clients/{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://www.ruddr.io/api/workspace/clients/{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://www.ruddr.io/api/workspace/clients/{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://www.ruddr.io/api/workspace/clients/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.ruddr.io/api/workspace/clients/{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": "4d7a1c3e-8f2b-4a90-b5d6-e9c1f0a82d47",
"key": "acme-corp",
"name": "Acme Corp",
"code": "ACM-001",
"currency": "USD",
"notes": "Key enterprise client.",
"emails": [
"billing@acmecorp.com"
],
"streetAddress": "100 Market St, Suite 500",
"invoiceDetailsSource": "custom",
"invoiceSubject": "Invoice for professional services",
"invoiceNotes": "Payment due within 30 days of receipt.",
"invoiceEmailSubject": "Invoice from Ruddr",
"invoiceEmailBody": "Please find your invoice attached.",
"isInternal": false,
"recordStatusId": "active",
"createdAt": "2025-01-15T20:47:03.284Z",
"modifiedAt": "2025-02-05T20:47:03.284Z",
"owner": {
"id": "e5c8a2f4-3d19-4b76-a0e7-9f1d6c4b28a3",
"name": "Jane Smith"
},
"practice": {
"id": "b82e4f61-a9c3-4d17-8e05-6f3b2a7d90c1",
"name": "Consulting"
},
"industry": {
"id": "bc52e68a-96d9-46bd-881c-bda8d5e07053",
"name": "Technology"
},
"location": {
"id": "ae469b03-51f3-47c2-be12-a319e0ce7cd8",
"name": "New York"
},
"tags": [
{
"id": "91d4e7a3-f826-4c10-b5a8-0e3d9c1f72b4",
"name": "Enterprise"
}
],
"invoicePaymentTerm": {
"id": "7a3f1d8e-c249-4b65-91d7-e0a4f8b2c603",
"name": "Net 30"
},
"salesRepresentative": {
"id": "c6f2b081-d47a-4e93-a8d5-3e1c7f9a204b",
"name": "John Davis"
},
"useWorkspaceInvoiceDetails": false,
"businessUnit": {
"id": "2e8d5a7c-f314-4b09-96e1-a0c3d8f4b172",
"name": "North America"
},
"integrations": [
{
"type": "xero",
"connectionId": "9d2f6b1a-4c83-4e57-bf09-1a6d3e8c20b4",
"externalId": "5e1a9c47-2b86-4d30-9f12-7a4c8e3b50d9"
},
{
"type": "qbo",
"connectionId": "c4a7e2f9-83b1-4d65-9e07-2f1b6a4c80d3",
"externalId": "142"
}
]
}{
"status": 400,
"message": "Parameter 'id' is not a valid UUID."
}{
"status": 404,
"message": "Object with id 'a1f4e8dc-9b72-4c6a-8e3d-5f0b2a7c9d4e' not found."
}Get a client
curl --request GET \
--url https://www.ruddr.io/api/workspace/clients/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.ruddr.io/api/workspace/clients/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.ruddr.io/api/workspace/clients/{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://www.ruddr.io/api/workspace/clients/{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://www.ruddr.io/api/workspace/clients/{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://www.ruddr.io/api/workspace/clients/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.ruddr.io/api/workspace/clients/{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": "4d7a1c3e-8f2b-4a90-b5d6-e9c1f0a82d47",
"key": "acme-corp",
"name": "Acme Corp",
"code": "ACM-001",
"currency": "USD",
"notes": "Key enterprise client.",
"emails": [
"billing@acmecorp.com"
],
"streetAddress": "100 Market St, Suite 500",
"invoiceDetailsSource": "custom",
"invoiceSubject": "Invoice for professional services",
"invoiceNotes": "Payment due within 30 days of receipt.",
"invoiceEmailSubject": "Invoice from Ruddr",
"invoiceEmailBody": "Please find your invoice attached.",
"isInternal": false,
"recordStatusId": "active",
"createdAt": "2025-01-15T20:47:03.284Z",
"modifiedAt": "2025-02-05T20:47:03.284Z",
"owner": {
"id": "e5c8a2f4-3d19-4b76-a0e7-9f1d6c4b28a3",
"name": "Jane Smith"
},
"practice": {
"id": "b82e4f61-a9c3-4d17-8e05-6f3b2a7d90c1",
"name": "Consulting"
},
"industry": {
"id": "bc52e68a-96d9-46bd-881c-bda8d5e07053",
"name": "Technology"
},
"location": {
"id": "ae469b03-51f3-47c2-be12-a319e0ce7cd8",
"name": "New York"
},
"tags": [
{
"id": "91d4e7a3-f826-4c10-b5a8-0e3d9c1f72b4",
"name": "Enterprise"
}
],
"invoicePaymentTerm": {
"id": "7a3f1d8e-c249-4b65-91d7-e0a4f8b2c603",
"name": "Net 30"
},
"salesRepresentative": {
"id": "c6f2b081-d47a-4e93-a8d5-3e1c7f9a204b",
"name": "John Davis"
},
"useWorkspaceInvoiceDetails": false,
"businessUnit": {
"id": "2e8d5a7c-f314-4b09-96e1-a0c3d8f4b172",
"name": "North America"
},
"integrations": [
{
"type": "xero",
"connectionId": "9d2f6b1a-4c83-4e57-bf09-1a6d3e8c20b4",
"externalId": "5e1a9c47-2b86-4d30-9f12-7a4c8e3b50d9"
},
{
"type": "qbo",
"connectionId": "c4a7e2f9-83b1-4d65-9e07-2f1b6a4c80d3",
"externalId": "142"
}
]
}{
"status": 400,
"message": "Parameter 'id' is not a valid UUID."
}{
"status": 404,
"message": "Object with id 'a1f4e8dc-9b72-4c6a-8e3d-5f0b2a7c9d4e' not found."
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The client uuid
Response
200
The unique identifier for the object.
The URL-friendly slug for the client.
The name of the client.
The client code.
The 3-letter currency code associated with the client.
Notes associated with the client.
Email addresses used for invoicing the client.
The street address of the client used for invoicing.
The source of invoice details for this client. Determines whether invoice settings are inherited from the workspace, the assigned business unit, or configured at the client level.
workspace, custom, business_unit The subject line used on invoices for this client.
Notes included on invoices for this client.
The email subject line used when sending invoices for this client.
The email body used when sending invoices for this client.
Indicates whether this is the workspace's internal client. This client is auto-created during workspace setup.
The record status of the client.
active, archived The timestamp when the object was created.
The timestamp when the object was last modified.
The member who owns this client.
Show child attributes
Show child attributes
The practice associated with this client.
Show child attributes
Show child attributes
The industry associated with this client.
Show child attributes
Show child attributes
The location associated with this client.
Show child attributes
Show child attributes
The tags associated with this client.
Show child attributes
Show child attributes
The payment term used for invoicing this client.
Show child attributes
Show child attributes
The sales representative for this client.
Show child attributes
Show child attributes
A legacy read-only field indicating whether the client uses workspace-level invoice details. Use invoiceDetailsSource instead.
The business unit associated with this client.
Show child attributes
Show child attributes
The accounting integration mappings for this client. Each entry ties the client to a record in an external accounting system. Empty when no integrations are configured.
Show child attributes
Show child attributes