> ## Documentation Index
> Fetch the complete documentation index at: https://docs.domino.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Render PPM Installation Snippet

> Generate a copyable Rscript command for PPM package installation with automatic biocVersion detection when needed



## OpenAPI

````yaml /api-specs/cloud/public-api.yaml post /api/v4/ppm/snippet
openapi: 3.0.3
info:
  title: Domino Public API
  description: Domino Public API Endpoints
  version: cloud
servers: []
security:
  - DominoApiKey: []
  - BearerAuthentication: []
tags:
  - name: AIGateway
  - name: AppInstances
  - name: AppVersions
  - name: Apps
  - name: AsyncPredictions
  - name: AuditTrail
  - name: BillingTag
  - name: BillingTagSettings
  - name: Cost
  - name: CustomMetrics
  - name: DataSource
  - name: DatasetRw
  - name: DeploymentTargets
  - name: Environments
  - name: Extensions
  - name: GenAI
  - name: HardwareTier
  - name: Jobs
  - name: ModelAPI
  - name: ModelAPIVersion
  - name: ModelDeployment
  - name: Organizations
  - name: PPM
  - name: PersonalAccessToken
  - name: ProjectSharedDatasets
  - name: ProjectTemplates
  - name: Projects
  - name: ProjectsCommits
  - name: ProjectsFiles
  - name: RegisteredModels
  - name: ServiceAccounts
  - name: Users
  - name: Workspaces
paths:
  /api/v4/ppm/snippet:
    post:
      tags:
        - PPM
      summary: Render PPM Installation Snippet
      description: >-
        Generate a copyable Rscript command for PPM package installation with
        automatic biocVersion detection when needed
      operationId: renderSnippet
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RenderSnippetRequest'
        description: Request to render a snippet
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderSnippetResponse'
          description: Success
        '400':
          $ref: '#/components/responses/400'
        '500':
          $ref: '#/components/responses/500'
components:
  schemas:
    RenderSnippetRequest:
      properties:
        biocVersion:
          description: >-
            Bioconductor version for Bioconductor repositories (e.g., "3.19",
            "3.20"). If omitted, auto-discovers latest version
          type: string
        constraints:
          description: >-
            Comma-separated package constraints (e.g.,
            "ggplot2==3.5.0,dplyr>=1.0.0,sf"). If omitted, generates snippet
            without specific packages
          type: string
        mode:
          description: >-
            Output mode for the snippet. "r" generates pure R code for direct
            execution in R console. "bash" wraps the R code in a Rscript command
            for bash execution. Defaults to "r" if omitted
          enum:
            - r
            - bash
          type: string
        repo:
          description: >-
            Specific repository name filter (e.g., "cran", "bioconductor",
            "pypi"). If omitted, uses all enabled repos
          type: string
        repoType:
          description: Repository type filter. If omitted, uses all repository types
          enum:
            - R
            - Bioconductor
            - Python
          type: string
        targetSnapshot:
          description: >-
            Target snapshot date for the snippet generation. If omitted, uses
            latest
          type: string
        workspaceRepos:
          description: >-
            Array of workspace repositories from renv.lock. If provided, snippet
            generation is based on matching server repositories
          items:
            $ref: '#/components/schemas/WorkspaceRepo'
          type: array
      type: object
    RenderSnippetResponse:
      properties:
        text:
          description: The rendered Rscript command
          type: string
      required:
        - text
      type: object
    WorkspaceRepo:
      properties:
        baseUrl:
          description: PPM server base URL
          type: string
        currentSnapshot:
          description: Snapshot date or "latest"
          type: string
        fullUrl:
          description: Complete repository URL with snapshot
          type: string
        repoName:
          description: Repository name (e.g., "cran", "bioconductor")
          type: string
      required:
        - baseUrl
        - repoName
        - currentSnapshot
        - fullUrl
      type: object
  responses:
    '400':
      content:
        application/json:
          schema:
            properties:
              error:
                type: string
            type: object
      description: Bad Request
    '500':
      content:
        application/json:
          schema:
            properties:
              error:
                type: string
            type: object
      description: Internal Server Error
  securitySchemes:
    DominoApiKey:
      in: header
      name: X-Domino-Api-Key
      type: apiKey
    BearerAuthentication:
      in: header
      name: Authorization
      type: apiKey

````