LifeMine Jobs API

Open roles.

OpenAPI Specification

lifemine-jobs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: LifeMine Careers API (Greenhouse Job Board) Jobs API
  version: v1
  summary: Anonymous read API over LifeMine's open roles, departments and offices.
  description: 'LifeMine hosts its careers surface on Greenhouse under the board token `lifeminetx` (https://job-boards.greenhouse.io/lifeminetx). Greenhouse exposes every job board as a public, unauthenticated JSON API, so LifeMine''s open roles, departments, offices and application questions are machine-readable without credentials.


    This document was DERIVED by API Evangelist from two real sources: (a) the endpoint and query-parameter surface published in the Greenhouse Job Board API documentation (https://developers.greenhouse.io/job-board.html), and (b) live responses fetched from LifeMine''s own board on 2026-08-04 — every schema property below was observed in an actual payload from `boards-api.greenhouse.io/v1/boards/lifeminetx`. It is NOT a specification published by LifeMine or by Greenhouse.


    Observed on 2026-08-04: 2 open roles (both Watertown, Massachusetts), 32 departments, 3 offices (Basel CH, Gloucester MA, Watertown MA), 0 sections. Job objects carry GDPR `data_compliance` blocks and AI-disclosure fields (`ai_disclaimer`, `include_ai_disclaimer`, `ai_opt_out_request_url`).

    '
  contact:
    name: LifeMine
    url: https://lifeminetx.com/contact/
  x-derived-from:
  - https://developers.greenhouse.io/job-board.html
  - https://boards-api.greenhouse.io/v1/boards/lifeminetx
  x-derived-on: '2026-08-04'
  x-derived-by: API Evangelist enrichment pipeline (0-working/pipeline-enrich.md)
  x-not-a-provider-published-spec: true
  x-hosted-by: Greenhouse Software, Inc.
servers:
- url: https://boards-api.greenhouse.io/v1/boards/lifeminetx
  description: LifeMine's Greenhouse job board (board token lifeminetx)
security: []
tags:
- name: jobs
  description: Open roles.
paths:
  /jobs:
    get:
      operationId: listJobs
      summary: List open jobs
      description: 'All currently published roles. `meta.total` carries the count (2 when observed on 2026-08-04). Pass `content=true` to include the full HTML job description on each row.

        '
      tags:
      - jobs
      parameters:
      - name: content
        in: query
        required: false
        description: Include the full HTML job description (`content`) on every job.
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: Job list
          content:
            application/json:
              schema:
                type: object
                properties:
                  jobs:
                    type: array
                    items:
                      $ref: '#/components/schemas/Job'
                  meta:
                    type: object
                    properties:
                      total:
                        type: integer
                        description: Total number of open roles.
  /jobs/{job_id}:
    parameters:
    - name: job_id
      in: path
      required: true
      description: Greenhouse job id (from listJobs `id`).
      schema:
        type: integer
        format: int64
      example: 8587930002
    get:
      operationId: getJob
      summary: Get one job
      description: 'A single role, including the HTML `content`, `departments`, `offices`, GDPR `data_compliance` and — with `questions=true` — the application form questions.

        '
      tags:
      - jobs
      parameters:
      - name: questions
        in: query
        required: false
        description: Include the application-form `questions` array (8 questions observed on this board).
        schema:
          type: boolean
          default: false
      - name: pay_transparency
        in: query
        required: false
        description: Include pay-transparency compliance data where the role is subject to it.
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: The job
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobDetail'
        '404':
          description: Job not found or no longer published
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    JobDetail:
      allOf:
      - $ref: '#/components/schemas/Job'
      - type: object
        properties:
          departments:
            type: array
            items:
              $ref: '#/components/schemas/Department'
          offices:
            type: array
            items:
              $ref: '#/components/schemas/Office'
          questions:
            type: array
            description: Application-form questions. Present only when `questions=true`.
            items:
              $ref: '#/components/schemas/Question'
          location_questions:
            type: array
            items:
              $ref: '#/components/schemas/Question'
          demographic_questions:
            type:
            - object
            - 'null'
          compliance:
            type:
            - array
            - 'null'
          ai_disclaimer:
            type:
            - string
            - 'null'
            description: AI-usage disclaimer text shown to applicants.
          include_ai_disclaimer:
            type: boolean
          ai_opt_out_request_url:
            type:
            - string
            - 'null'
            format: uri
            description: URL an applicant uses to opt out of AI-assisted evaluation.
    DataCompliance:
      type: object
      properties:
        type:
          type: string
          description: Compliance regime, e.g. gdpr.
        requires_consent:
          type: boolean
        requires_processing_consent:
          type: boolean
        requires_retention_consent:
          type: boolean
        retention_period:
          type:
          - integer
          - 'null'
        demographic_data_consent_applies:
          type: boolean
    Job:
      type: object
      description: A published role as returned by listJobs.
      properties:
        id:
          type: integer
          format: int64
        internal_job_id:
          type: integer
          format: int64
        title:
          type: string
        absolute_url:
          type: string
          format: uri
          description: Public application URL on job-boards.greenhouse.io.
        company_name:
          type: string
        location:
          $ref: '#/components/schemas/Location'
        requisition_id:
          type:
          - string
          - 'null'
        language:
          type:
          - string
          - 'null'
        first_published:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        application_deadline:
          type:
          - string
          - 'null'
          format: date-time
        metadata:
          type:
          - array
          - 'null'
          items:
            type: object
        data_compliance:
          type: array
          description: Per-regime data-compliance settings (GDPR observed on this board).
          items:
            $ref: '#/components/schemas/DataCompliance'
        content:
          type: string
          description: HTML job description. Present only when `content=true`.
    Location:
      type: object
      properties:
        name:
          type: string
          description: Free-text location, e.g. "Watertown, Massachusetts, United States".
    Error:
      type: object
      description: Greenhouse error envelope.
      properties:
        error:
          type: string
    Question:
      type: object
      properties:
        label:
          type: string
        required:
          type: boolean
        fields:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              type:
                type: string
              values:
                type: array
                items:
                  type: object
    Department:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        parent_id:
          type:
          - integer
          - 'null'
          format: int64
        child_ids:
          type: array
          items:
            type: integer
            format: int64
        children:
          type: array
          description: Present when `render_as=tree`.
          items:
            $ref: '#/components/schemas/Department'
        jobs:
          type: array
          items:
            $ref: '#/components/schemas/Job'
    Office:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        location:
          type:
          - string
          - 'null'
        parent_id:
          type:
          - integer
          - 'null'
          format: int64
        child_ids:
          type: array
          items:
            type: integer
            format: int64
        departments:
          type: array
          items:
            $ref: '#/components/schemas/Department'
externalDocs:
  description: Greenhouse Job Board API documentation
  url: https://developers.greenhouse.io/job-board.html