Y42

Y42 Manifest API

Retrieve the dbt manifest content for a space, exposing the data assets, models, sources, and lineage that make up a Y42 project for downstream tooling.

OpenAPI Specification

y42-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Y42 Public API
  description: >-
    The Y42 public REST API for the Y42 managed DataOps platform. It lets you
    programmatically manage spaces (Y42 environments) and their data-warehouse
    credentials, trigger and retrieve orchestration runs by command or by asset,
    retrieve the dbt manifest for a space, and read the latest job information.
    Paths below reflect endpoints documented in the Y42 public API reference
    (https://y42-public-api.readme.io/). Request and response schemas are not
    fully published in the public reference and are therefore omitted here rather
    than fabricated; consult the live reference for body shapes.
  termsOfService: https://www.y42.com/legal/terms-of-service
  contact:
    name: Y42 Support
    url: https://www.y42.com
  version: '4'
servers:
  - url: https://api.y42.dev
    description: Y42 public API
security:
  - bearerAuth: []
paths:
  /api/1/github-backend/{org_slug}/:
    get:
      operationId: listSpaces
      tags:
        - Spaces
      summary: List spaces
      description: Returns a list of all accessible spaces in an organization (company).
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
      responses:
        '200':
          description: A list of accessible spaces.
  /api/1/github-backend/{org_slug}/space:
    post:
      operationId: createSpace
      tags:
        - Spaces
      summary: Create a space
      description: Creates a new space (environment) within the organization.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
      responses:
        '200':
          description: The created space.
  /api/1/github-backend/{org_slug}/space/{slug}:
    get:
      operationId: getSpace
      tags:
        - Spaces
      summary: Retrieve a space
      description: Retrieves details for a single space by slug.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/Slug'
      responses:
        '200':
          description: The requested space.
    delete:
      operationId: deleteSpace
      tags:
        - Spaces
      summary: Delete a space
      description: Removes a space by slug.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/Slug'
      responses:
        '200':
          description: The space was deleted.
  /api/1/github-backend/{org_slug}/space/{slug}/credentials:
    patch:
      operationId: updateSpaceCredentials
      tags:
        - Spaces
      summary: Update space credentials
      description: >-
        Updates the data-warehouse credentials/connection (e.g. BigQuery,
        Snowflake, GCS, S3) associated with a space.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/Slug'
      responses:
        '200':
          description: The updated credentials.
  /api/1/credential/{org_slug}/{space_slug}/connections:
    post:
      operationId: createConnection
      tags:
        - Spaces
      summary: Create a connection
      description: Creates an integration/source connection credential for a space.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/SpaceSlug'
      responses:
        '200':
          description: The created connection.
  /api/4/orchestrations/{org_slug}/{space_slug}:
    post:
      operationId: triggerOrchestration
      tags:
        - Orchestration
      summary: Trigger an orchestration run
      description: >-
        Triggers an orchestration run for a space, by command or by asset,
        starting execution of the space's data pipeline.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/SpaceSlug'
      responses:
        '200':
          description: The triggered orchestration run.
  /api/4/orchestrations/{org_slug}/{space_slug}/run:
    get:
      operationId: getOrchestrationRun
      tags:
        - Runs
      summary: Get an orchestration run
      description: Retrieves information about a single orchestration run by id or conditions.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/SpaceSlug'
      responses:
        '200':
          description: The requested orchestration run.
  /api/4/orchestrations/{org_slug}/{space_slug}/runs:
    get:
      operationId: listOrchestrationRuns
      tags:
        - Runs
      summary: List orchestration runs
      description: Retrieves a list of orchestration runs for a space, filterable by conditions.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/SpaceSlug'
      responses:
        '200':
          description: A list of orchestration runs.
  /api/1/job-info-service/{org_slug}/{space_slug}/latest-jobs:
    get:
      operationId: getLatestJobs
      tags:
        - Runs
      summary: Get latest jobs
      description: Returns the latest job information for a space.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/SpaceSlug'
      responses:
        '200':
          description: The latest jobs for the space.
  /api/1/dbt/{org_slug}/{space_slug}/manifest:
    get:
      operationId: getManifest
      tags:
        - Manifest
      summary: Get dbt manifest
      description: >-
        Retrieves the dbt manifest content for a space, exposing the assets,
        models, sources, and lineage of the project.
      parameters:
        - $ref: '#/components/parameters/OrgSlug'
        - $ref: '#/components/parameters/SpaceSlug'
      responses:
        '200':
          description: The dbt manifest for the space.
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Y42 API keys are created in the organization settings inside the Y42 app
        and passed as a Bearer token in the Authorization header.
  parameters:
    OrgSlug:
      name: org_slug
      in: path
      required: true
      description: The slug of the organization (company).
      schema:
        type: string
    SpaceSlug:
      name: space_slug
      in: path
      required: true
      description: The slug of the space (environment).
      schema:
        type: string
    Slug:
      name: slug
      in: path
      required: true
      description: The slug of the space.
      schema:
        type: string