Projects

Get project details

Changed on

Use 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
get/api/v1/projects/{id}

Request

Path parameters

idstring uuid required

Project ID

Example:550e8400-e29b-41d4-a716-446655440000

Response

Extended project details

status'ok' required

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 undefined enum value to the / response property for the response status

    • warning

      added the new undefined enum value to the / response property for the response status

    • warning

      added the new undefined enum value to the /// response property for the response status

    • warning

      added the new undefined enum value to the / response property for the response status

    • warning

      added the new undefined enum 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

    • info

      added the optional property to the response with the status