Alpic projects API

The projects API from Alpic — 2 operation(s) for projects.

OpenAPI Specification

alpic-projects-api-openapi.yml Raw ↑
openapi: 3.1.1
info:
  title: Alpic analytics projects API
  version: 1.0.0
servers:
- url: https://api.alpic.ai
security:
- bearerAuth: []
tags:
- name: projects
paths:
  /v1/projects/{projectId}:
    patch:
      operationId: projects.update.v1
      summary: Update a project
      description: Update project settings
      tags:
      - projects
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
          description: The ID of the project
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: The new name for the project
                sourceRepository:
                  anyOf:
                  - type: string
                  - type: 'null'
                  description: The source repository to connect to the project
      responses:
        '200':
          description: The project has been updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    type: string
                  teamId:
                    type: string
                  sourceRepository:
                    anyOf:
                    - type: string
                    - type: 'null'
                  runtime:
                    enum:
                    - python3.13
                    - python3.14
                    - node22
                    - node24
                    type: string
                  transport:
                    anyOf:
                    - enum:
                      - stdio
                      - sse
                      - streamablehttp
                      type: string
                    - type: 'null'
                  rootDirectory:
                    anyOf:
                    - type: string
                    - type: 'null'
                  buildCommand:
                    anyOf:
                    - type: string
                    - type: 'null'
                  buildOutputDir:
                    anyOf:
                    - type: string
                    - type: 'null'
                  installCommand:
                    anyOf:
                    - type: string
                    - type: 'null'
                  startCommand:
                    anyOf:
                    - type: string
                    - type: 'null'
                  createdAt:
                    type: string
                    format: date-time
                    x-native-type: date
                  productionEnvironment:
                    anyOf:
                    - type: object
                      properties:
                        id:
                          type: string
                        name:
                          type: string
                        mcpServerUrl:
                          type: string
                        domains:
                          type: array
                          items:
                            type: object
                            properties:
                              domain:
                                type: string
                              status:
                                enum:
                                - ongoing
                                - deployed
                                - failed
                                type: string
                              createdAt:
                                type: string
                                format: date-time
                                x-native-type: date
                            required:
                            - domain
                            - status
                            - createdAt
                        latestDeployment:
                          anyOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              status:
                                enum:
                                - ongoing
                                - deployed
                                - failed
                                - canceled
                                type: string
                              sourceCommitId:
                                anyOf:
                                - type: string
                                - type: 'null'
                              sourceCommitMessage:
                                anyOf:
                                - type: string
                                - type: 'null'
                              completedAt:
                                anyOf:
                                - type: string
                                  format: date-time
                                  x-native-type: date
                                - type: 'null'
                            required:
                            - id
                            - status
                            - sourceCommitId
                            - sourceCommitMessage
                            - completedAt
                          - type: 'null'
                      required:
                      - id
                      - name
                      - mcpServerUrl
                      - domains
                      - latestDeployment
                    - type: 'null'
                  environments:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        name:
                          type: string
                        sourceBranch:
                          anyOf:
                          - type: string
                          - type: 'null'
                        mcpServerUrl:
                          type: string
                        createdAt:
                          type: string
                          format: date-time
                          x-native-type: date
                        projectId:
                          type: string
                        latestDeployment:
                          anyOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              status:
                                enum:
                                - ongoing
                                - deployed
                                - failed
                                - canceled
                                type: string
                              sourceCommitId:
                                anyOf:
                                - type: string
                                - type: 'null'
                              sourceCommitMessage:
                                anyOf:
                                - type: string
                                - type: 'null'
                              completedAt:
                                anyOf:
                                - type: string
                                  format: date-time
                                  x-native-type: date
                                - type: 'null'
                            required:
                            - id
                            - status
                            - sourceCommitId
                            - sourceCommitMessage
                            - completedAt
                          - type: 'null'
                      required:
                      - id
                      - name
                      - sourceBranch
                      - mcpServerUrl
                      - createdAt
                      - projectId
                      - latestDeployment
                required:
                - id
                - name
                - teamId
                - sourceRepository
                - runtime
                - transport
                - rootDirectory
                - buildCommand
                - buildOutputDir
                - installCommand
                - startCommand
                - createdAt
                - productionEnvironment
                - environments
        '400':
          description: '400'
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  properties:
                    defined:
                      const: true
                    code:
                      const: BAD_REQUEST
                    status:
                      const: 400
                    message:
                      type: string
                      default: Bad Request
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
                - type: object
                  properties:
                    defined:
                      const: false
                    code:
                      type: string
                    status:
                      type: number
                    message:
                      type: string
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
        '403':
          description: '403'
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  properties:
                    defined:
                      const: true
                    code:
                      const: FORBIDDEN
                    status:
                      const: 403
                    message:
                      type: string
                      default: Forbidden
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
                - type: object
                  properties:
                    defined:
                      const: false
                    code:
                      type: string
                    status:
                      type: number
                    message:
                      type: string
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
        '404':
          description: '404'
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  properties:
                    defined:
                      const: true
                    code:
                      const: NOT_FOUND
                    status:
                      const: 404
                    message:
                      type: string
                      default: Not Found
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
                - type: object
                  properties:
                    defined:
                      const: false
                    code:
                      type: string
                    status:
                      type: number
                    message:
                      type: string
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
    get:
      operationId: projects.get.v1
      summary: Get a project
      description: Get a project by ID
      tags:
      - projects
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
          description: The ID of the project
      responses:
        '200':
          description: The project details
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    type: string
                  teamId:
                    type: string
                  sourceRepository:
                    anyOf:
                    - type: string
                    - type: 'null'
                  runtime:
                    enum:
                    - python3.13
                    - python3.14
                    - node22
                    - node24
                    type: string
                  transport:
                    anyOf:
                    - enum:
                      - stdio
                      - sse
                      - streamablehttp
                      type: string
                    - type: 'null'
                  rootDirectory:
                    anyOf:
                    - type: string
                    - type: 'null'
                  buildCommand:
                    anyOf:
                    - type: string
                    - type: 'null'
                  buildOutputDir:
                    anyOf:
                    - type: string
                    - type: 'null'
                  installCommand:
                    anyOf:
                    - type: string
                    - type: 'null'
                  startCommand:
                    anyOf:
                    - type: string
                    - type: 'null'
                  createdAt:
                    type: string
                    format: date-time
                    x-native-type: date
                  productionEnvironment:
                    anyOf:
                    - type: object
                      properties:
                        id:
                          type: string
                        name:
                          type: string
                        mcpServerUrl:
                          type: string
                        domains:
                          type: array
                          items:
                            type: object
                            properties:
                              domain:
                                type: string
                              status:
                                enum:
                                - ongoing
                                - deployed
                                - failed
                                type: string
                              createdAt:
                                type: string
                                format: date-time
                                x-native-type: date
                            required:
                            - domain
                            - status
                            - createdAt
                        latestDeployment:
                          anyOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              status:
                                enum:
                                - ongoing
                                - deployed
                                - failed
                                - canceled
                                type: string
                              sourceCommitId:
                                anyOf:
                                - type: string
                                - type: 'null'
                              sourceCommitMessage:
                                anyOf:
                                - type: string
                                - type: 'null'
                              completedAt:
                                anyOf:
                                - type: string
                                  format: date-time
                                  x-native-type: date
                                - type: 'null'
                            required:
                            - id
                            - status
                            - sourceCommitId
                            - sourceCommitMessage
                            - completedAt
                          - type: 'null'
                      required:
                      - id
                      - name
                      - mcpServerUrl
                      - domains
                      - latestDeployment
                    - type: 'null'
                  environments:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        name:
                          type: string
                        sourceBranch:
                          anyOf:
                          - type: string
                          - type: 'null'
                        mcpServerUrl:
                          type: string
                        createdAt:
                          type: string
                          format: date-time
                          x-native-type: date
                        projectId:
                          type: string
                        latestDeployment:
                          anyOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              status:
                                enum:
                                - ongoing
                                - deployed
                                - failed
                                - canceled
                                type: string
                              sourceCommitId:
                                anyOf:
                                - type: string
                                - type: 'null'
                              sourceCommitMessage:
                                anyOf:
                                - type: string
                                - type: 'null'
                              completedAt:
                                anyOf:
                                - type: string
                                  format: date-time
                                  x-native-type: date
                                - type: 'null'
                            required:
                            - id
                            - status
                            - sourceCommitId
                            - sourceCommitMessage
                            - completedAt
                          - type: 'null'
                      required:
                      - id
                      - name
                      - sourceBranch
                      - mcpServerUrl
                      - createdAt
                      - projectId
                      - latestDeployment
                required:
                - id
                - name
                - teamId
                - sourceRepository
                - runtime
                - transport
                - rootDirectory
                - buildCommand
                - buildOutputDir
                - installCommand
                - startCommand
                - createdAt
                - productionEnvironment
                - environments
        '404':
          description: '404'
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  properties:
                    defined:
                      const: true
                    code:
                      const: NOT_FOUND
                    status:
                      const: 404
                    message:
                      type: string
                      default: Not Found
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
                - type: object
                  properties:
                    defined:
                      const: false
                    code:
                      type: string
                    status:
                      type: number
                    message:
                      type: string
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
    delete:
      operationId: projects.delete.v1
      summary: Delete a project
      description: Delete a project and all its environments
      tags:
      - projects
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
          description: The ID of the project
      responses:
        '200':
          description: The project has been deleted successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    const: true
                required:
                - success
        '404':
          description: '404'
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  properties:
                    defined:
                      const: true
                    code:
                      const: NOT_FOUND
                    status:
                      const: 404
                    message:
                      type: string
                      default: Not Found
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
                - type: object
                  properties:
                    defined:
                      const: false
                    code:
                      type: string
                    status:
                      type: number
                    message:
                      type: string
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
  /v1/projects:
    get:
      operationId: projects.list.v1
      summary: List projects
      description: List all projects for a team
      tags:
      - projects
      parameters:
      - name: teamId
        in: query
        schema:
          type: string
        allowEmptyValue: true
        allowReserved: true
      responses:
        '200':
          description: The list of projects
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    name:
                      type: string
                    teamId:
                      type: string
                    sourceRepository:
                      anyOf:
                      - type: string
                      - type: 'null'
                    runtime:
                      enum:
                      - python3.13
                      - python3.14
                      - node22
                      - node24
                      type: string
                    transport:
                      anyOf:
                      - enum:
                        - stdio
                        - sse
                        - streamablehttp
                        type: string
                      - type: 'null'
                    rootDirectory:
                      anyOf:
                      - type: string
                      - type: 'null'
                    buildCommand:
                      anyOf:
                      - type: string
                      - type: 'null'
                    buildOutputDir:
                      anyOf:
                      - type: string
                      - type: 'null'
                    installCommand:
                      anyOf:
                      - type: string
                      - type: 'null'
                    startCommand:
                      anyOf:
                      - type: string
                      - type: 'null'
                    createdAt:
                      type: string
                      format: date-time
                      x-native-type: date
                    productionEnvironment:
                      anyOf:
                      - type: object
                        properties:
                          id:
                            type: string
                          name:
                            type: string
                          mcpServerUrl:
                            type: string
                          domains:
                            type: array
                            items:
                              type: object
                              properties:
                                domain:
                                  type: string
                                status:
                                  enum:
                                  - ongoing
                                  - deployed
                                  - failed
                                  type: string
                                createdAt:
                                  type: string
                                  format: date-time
                                  x-native-type: date
                              required:
                              - domain
                              - status
                              - createdAt
                          latestDeployment:
                            anyOf:
                            - type: object
                              properties:
                                id:
                                  type: string
                                status:
                                  enum:
                                  - ongoing
                                  - deployed
                                  - failed
                                  - canceled
                                  type: string
                                sourceCommitId:
                                  anyOf:
                                  - type: string
                                  - type: 'null'
                                sourceCommitMessage:
                                  anyOf:
                                  - type: string
                                  - type: 'null'
                                completedAt:
                                  anyOf:
                                  - type: string
                                    format: date-time
                                    x-native-type: date
                                  - type: 'null'
                              required:
                              - id
                              - status
                              - sourceCommitId
                              - sourceCommitMessage
                              - completedAt
                            - type: 'null'
                        required:
                        - id
                        - name
                        - mcpServerUrl
                        - domains
                        - latestDeployment
                      - type: 'null'
                    environments:
                      type: array
                      items:
                        type: object
                        properties:
                          id:
                            type: string
                          name:
                            type: string
                          sourceBranch:
                            anyOf:
                            - type: string
                            - type: 'null'
                          mcpServerUrl:
                            type: string
                          createdAt:
                            type: string
                            format: date-time
                            x-native-type: date
                          projectId:
                            type: string
                          latestDeployment:
                            anyOf:
                            - type: object
                              properties:
                                id:
                                  type: string
                                status:
                                  enum:
                                  - ongoing
                                  - deployed
                                  - failed
                                  - canceled
                                  type: string
                                sourceCommitId:
                                  anyOf:
                                  - type: string
                                  - type: 'null'
                                sourceCommitMessage:
                                  anyOf:
                                  - type: string
                                  - type: 'null'
                                completedAt:
                                  anyOf:
                                  - type: string
                                    format: date-time
                                    x-native-type: date
                                  - type: 'null'
                              required:
                              - id
                              - status
                              - sourceCommitId
                              - sourceCommitMessage
                              - completedAt
                            - type: 'null'
                        required:
                        - id
                        - name
                        - sourceBranch
                        - mcpServerUrl
                        - createdAt
                        - projectId
                        - latestDeployment
                  required:
                  - id
                  - name
                  - teamId
                  - sourceRepository
                  - runtime
                  - transport
                  - rootDirectory
                  - buildCommand
                  - buildOutputDir
                  - installCommand
                  - startCommand
                  - createdAt
                  - productionEnvironment
                  - environments
        '400':
          description: '400'
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  properties:
                    defined:
                      const: true
                    code:
                      const: BAD_REQUEST
                    status:
                      const: 400
                    message:
                      type: string
                      default: Bad Request
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
                - type: object
                  properties:
                    defined:
                      const: false
                    code:
                      type: string
                    status:
                      type: number
                    message:
                      type: string
                    data: {}
                  required:
                  - defined
                  - code
                  - status
                  - message
        '404':
          description: '404'
          content:
            application/json:
              schema:
                oneOf:
                - type: object
                  properties:
                    defined:
                      const: true
                    code:
                      const: NOT_FOUND
                    st

# --- truncated at 32 KB (41 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/alpic/refs/heads/main/openapi/alpic-projects-api-openapi.yml