Get a career portal
List an organization's public career portal — branding and all open roles. No authentication.
/api/public/portal/{orgSlug}
🔒 No authReturns an organization’s public career portal: its branding/theme and every open, public role. This endpoint is public — no API key is required.
Salary visibility
Each role may include salaryMin, salaryMax, salaryCurrency, and salaryPeriod. These are only present when the organization enables salary display (org.portalTheme.showSalary is true); otherwise they are omitted.
Path parameters
| Parameter | Type | Description |
|---|---|---|
orgSlug | string | The organization’s portal slug (e.g. acme). |
Example request
curl https://app.talent-ray.com/api/public/portal/acme
Response
200 OK
{
"org": {
"name": "Acme Inc.",
"logo": "https://.../logo.png",
"slug": "acme",
"domain": "acme.com",
"portalTheme": { "primaryColor": "#4F1AD6", "showSalary": true }
},
"roles": [
{
"id": "clx123abc",
"name": "Senior Backend Engineer",
"description": { },
"department": "Engineering",
"location": "Remote",
"workType": "remote",
"collarType": "white",
"salaryMin": 90000,
"salaryMax": 120000,
"salaryCurrency": "EUR",
"salaryPeriod": "year",
"createdAt": "2026-06-01T09:00:00Z"
}
]
}
| Field | Type | Description |
|---|---|---|
org | object | Portal branding and metadata. |
org.portalTheme.showSalary | boolean | Whether salary fields are included on roles. |
roles | array | All open, public roles for the org. |
roles[].workType | string | null | remote, hybrid, or onsite. |
roles[].collarType | string | null | white, gray, or blue. |
Status codes
| Status | Meaning |
|---|---|
200 | Success. |
404 | Portal not found or not enabled. |
500 | Server error. |