Get project details
Changed onUse this endpoint to retrieve the full details of a single project by its ID.
This is the endpoint to use when you already know which project you want - for example, after finding it via the List projects endpoint. It returns everything Atlas knows about the project in one response.
What you need to provide: Just the project's ID in the URL path (e.g. /api/v1/projects/abc-123). Project IDs are UUIDs - long strings of letters and numbers - returned by the List projects endpoint.
What you get back:
- Basic info - job role title, job reference number, current state (active, closed, etc.), and close reason if applicable
- Job details - contract type (full-time, part-time, contract, non-exec), work mode (office, hybrid, remote), seniority level, job function, required skills, target number of hires, and whether visa support is offered
- Compensation - salary, salary currency, expected fee, fee currency, and fee terms
- Notes - internal notes about the project
- Location - city, region, country, and formatted address
- Company - the client company the role is for, including their name, industry, size, and logo
- End client - the company the role is ultimately for when your client is hiring on its behalf, as { id, name }. null when no end client is set
- Owner - the consultant responsible for the project
- Members - all consultants working on the project and their role (member or lead)
- Contacts - the hiring contacts linked to the job, as { id, personId, name }. id is the CompanyContact ID that companyContactIds takes on Create/Update project. Empty when the job has none
- Pipeline stages and statuses - the full recruitment pipeline configured for this project (e.g. Sourcing → Longlist → Shortlist → Offer). Each stage contains its statuses (e.g. "Added", "Reviewed", "Approved"). These IDs are needed when adding a candidate to the project.
- Custom attributes - any agency-specific fields configured in your Atlas account
- Dates - when the project was created, started, and closed
Request
- Base URLhttps://api.recruitwithatlas.com
- AuthHTTP bearer
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Path parameters
Project ID
Response
Extended project details
Example response
{
"data": {
"jobRole": "Software Engineer",
"state": "active",
"skills": [
"TypeScript",
"React"
],
"hireTarget": 1,
"salaryCurrency": "USD",
"location": {
"city": "London",
"region": "England",
"country": "United Kingdom",
"formattedAddress": "London, England, United Kingdom"
},
"company": {
"name": "Acme Corp",
"industry": "Technology",
"size": "51-200"
},
"owner": {
"email": "owner@agency.com",
"name": "Jane Smith"
},
"members": [
{
"email": "member@agency.com",
"name": "John Doe",
"memberType": "member"
}
],
"companyContacts": [
{
"name": "Jane Doe"
}
],
"stages": [
{
"name": "Sourcing",
"type": "sourcing",
"phase": "internal_selection",
"statuses": [
{
"name": "Added",
"type": "sourcing_added"
}
]
}
],
"startedAt": "2026-03-23",
"closedAt": "2026-04-15"
}
}Changes
- warning
added the new
undefinedenum value to the/response property for the response status - warning
added the new
undefinedenum value to the/response property for the response status - warning
added the new
undefinedenum value to the///response property for the response status - warning
added the new
undefinedenum value to the/response property for the response status - warning
added the new
undefinedenum value to the/response property for the response status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status
- warning
- info
added the optional property
to the response with the status
- info