Nuon vcs API

vcs

Operations 12

POST /v1/vcs/connection-callback public connection to create a vcs connection via a callback #
GET /v1/vcs/connections get vcs connection for an org #
POST /v1/vcs/connections create a vcs connection for Github #
DELETE /v1/vcs/connections/{connection_id} Deletes a VCS connection #
GET /v1/vcs/connections/{connection_id} returns a vcs connection for an org #
GET /v1/vcs/connections/{connection_id}/branches List branches for a repository #
GET /v1/vcs/connections/{connection_id}/check-status check the real-time status of a VCS connection #
GET /v1/vcs/connections/{connection_id}/repos List VCS connection repositories
GET /v1/vcs/connections/{connection_id}/webhook-subscription returns the webhook subscription for a vcs connection #
POST /v1/vcs/connections/{connection_id}/webhook-subscription creates a webhook subscription for a vcs connection #
POST /v1/vcs/webhooks/{subscription_id}/events Write a VCS webhook event (shared per subscription) #
POST /v1/vcs/{vcs_connection_id}/events Write a VCS webhook event #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/nuon-vcs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

nuon-vcs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: support@nuon.co
    name: Nuon Support
  description: API for managing nuon apps, components, installs, and actions.
  title: Nuon accounts VCS API
  version: 0.19.1074
servers:
- url: https://api.nuon.co/
tags:
- description: vcs
  name: vcs
paths:
  /v1/vcs/connection-callback:
    post:
      description: 'Handle VCS connection callback for OAuth flow.

        '
      operationId: CreateVCSConnectionCallback
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/app.VCSConnection'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      summary: public connection to create a vcs connection via a callback
      tags:
      - vcs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/service.CreateConnectionCallbackRequest'
        description: Input
        required: true
  /v1/vcs/connections:
    get:
      description: 'Returns all VCS connections for the provided organization.

        '
      operationId: GetOrgVCSConnections
      parameters:
      - description: offset of results to return
        in: query
        name: offset
        schema:
          type: integer
          default: 0
      - description: limit of results to return
        in: query
        name: limit
        schema:
          type: integer
          default: 10
      - description: page number of results to return
        in: query
        name: page
        schema:
          type: integer
          default: 0
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/app.VCSConnection'
                type: array
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get vcs connection for an org
      tags:
      - vcs
    post:
      description: 'Create a VCS connection for version control integration.

        '
      operationId: CreateVCSConnection
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/app.VCSConnection'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create a vcs connection for Github
      tags:
      - vcs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/service.CreateConnectionRequest'
        description: Input
        required: true
  /v1/vcs/connections/{connection_id}:
    delete:
      description: 'Delete a VCS connection.

        '
      operationId: DeleteVCSConnection
      parameters:
      - description: Connection ID
        in: path
        name: connection_id
        required: true
        schema:
          type: string
      - description: If true, also uninstall the GitHub App on the GitHub side. Defaults to false so other Nuon orgs sharing the same installation are not impacted.
        in: query
        name: delete_github_app
        schema:
          type: boolean
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: Deletes a VCS connection
      tags:
      - vcs
    get:
      description: 'Return a VCS connection by id.

        '
      operationId: GetVCSConnection
      parameters:
      - description: connection ID
        in: path
        name: connection_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/app.VCSConnection'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: returns a vcs connection for an org
      tags:
      - vcs
  /v1/vcs/connections/{connection_id}/branches:
    get:
      description: Returns list of branches for the specified repository
      operationId: GetVCSConnectionRepoBranches
      parameters:
      - description: connection ID
        in: path
        name: connection_id
        required: true
        schema:
          type: string
      - description: repository owner
        in: query
        name: owner
        required: true
        schema:
          type: string
      - description: repository name
        in: query
        name: repo
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/service.Branch'
                type: array
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: List branches for a repository
      tags:
      - vcs
  /v1/vcs/connections/{connection_id}/check-status:
    get:
      description: 'Check the real-time status of a VCS (GitHub App) connection.


        This endpoint queries GitHub''s API directly to fetch the current installation status, including:

        - Active/Suspended state

        - Account information

        - Permissions

        - Suspension details (if applicable)


        **Important**: This endpoint always fetches fresh data from GitHub (no caching) to ensure accurate status information.


        ## Response Status Values


        - `active`: The GitHub App installation is active and functioning

        - `suspended`: The installation has been suspended (see `suspended_at` and `suspended_by` for details)

        - `unknown`: Unable to determine status (GitHub API error - see `error` field)


        ## Use Cases


        - Troubleshooting connection issues

        - Monitoring installation health

        - Detecting suspended or revoked installations

        - Validating permissions before operations

        '
      operationId: CheckVCSConnectionStatus
      parameters:
      - description: connection ID
        in: path
        name: connection_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/service.VCSConnectionStatusResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: check the real-time status of a VCS connection
      tags:
      - vcs
  /v1/vcs/connections/{connection_id}/repos:
    get:
      description: Lists all repositories accessible by a GitHub App installation (VCS connection)
      parameters:
      - description: VCS Connection ID
        in: path
        name: connection_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/service.VCSConnectionReposResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: List VCS connection repositories
      tags:
      - vcs
  /v1/vcs/connections/{connection_id}/webhook-subscription:
    get:
      description: 'Returns the webhook subscription associated with a VCS connection.

        '
      operationId: GetVCSConnectionWebhookSubscription
      parameters:
      - description: connection ID
        in: path
        name: connection_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/app.VCSWebhookSubscription'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: returns the webhook subscription for a vcs connection
      tags:
      - vcs
    post:
      description: 'Creates a webhook subscription for a VCS connection. This enqueues a signal that will register a GitHub webhook for receiving push and pull request events.

        '
      operationId: CreateVCSConnectionWebhookSubscription
      parameters:
      - description: connection ID
        in: path
        name: connection_id
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Created
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: creates a webhook subscription for a vcs connection
      tags:
      - vcs
  /v1/vcs/webhooks/{subscription_id}/events:
    post:
      description: Receives webhook events for a webhook subscription and creates a GithubEvent for processing
      operationId: WriteWebhookEvent
      parameters:
      - description: Webhook Subscription ID
        in: path
        name: subscription_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/app.GithubEvent'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      summary: Write a VCS webhook event (shared per subscription)
      tags:
      - vcs
  /v1/vcs/{vcs_connection_id}/events:
    post:
      description: Writes incoming webhook events for a VCS connection (legacy endpoint)
      operationId: WriteVCSEvent
      parameters:
      - description: VCS Connection ID
        in: path
        name: vcs_connection_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/app.GithubEvent'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stderr.ErrResponse'
      summary: Write a VCS webhook event
      tags:
      - vcs
components:
  schemas:
    app.VCSWebhookSubscription:
      properties:
        created_at:
          type: string
        created_by_id:
          type: string
        github_hook_id:
          type: integer
        github_install_id:
          type: string
        id:
          type: string
        status:
          $ref: '#/components/schemas/app.CompositeStatus'
        updated_at:
          type: string
        vcs_connection_id:
          type: string
        webhook_url:
          type: string
      type: object
    app.VCSConnectionCommit:
      properties:
        author_email:
          type: string
        author_name:
          type: string
        created_at:
          type: string
        created_by_id:
          type: string
        id:
          type: string
        message:
          type: string
        owner_id:
          description: Polymorphic ownership - references VCS config that owns this commit
          type: string
        owner_type:
          type: string
        sha:
          type: string
        updated_at:
          type: string
        vcs_connection_id:
          type: string
      type: object
    cctx.SignalContext:
      properties:
        account_id:
          type: string
        log_stream_id:
          type: string
        org_id:
          type: string
        trace_id:
          type: string
      type: object
    service.VCSConnectionRepo:
      properties:
        default_branch:
          type: string
        description:
          type: string
        fork:
          type: boolean
        full_name:
          type: string
        html_url:
          type: string
        id:
          type: integer
        name:
          type: string
        private:
          type: boolean
        updated_at:
          type: string
      type: object
    signaldb.SignalData:
      properties:
        signal: {}
      type: object
    service.Branch:
      properties:
        name:
          type: string
      type: object
    github.Plan:
      properties:
        collaborators:
          type: integer
        filled_seats:
          type: integer
        name:
          type: string
        private_repos:
          type: integer
        seats:
          type: integer
        space:
          type: integer
      type: object
    service.VCSConnectionStatusResponse:
      properties:
        account:
          $ref: '#/components/schemas/service.VCSConnectionAccount'
        checked_at:
          type: string
        error:
          type: string
        github_install_id:
          type: string
        permissions:
          additionalProperties:
            type: string
          type: object
        repository_selection:
          type: string
        status:
          type: string
        suspended_at:
          type: string
        suspended_by:
          $ref: '#/components/schemas/github.User'
      type: object
    github.Match:
      properties:
        indices:
          items:
            type: integer
          type: array
        text:
          type: string
      type: object
    app.QueueSignal:
      properties:
        callback:
          $ref: '#/components/schemas/callback.Ref'
        callbacks:
          items:
            $ref: '#/components/schemas/callback.Ref'
          type: array
        created_at:
          type: string
        created_by_id:
          type: string
        emitter_id:
          description: 'Optional: if this signal was emitted by an emitter'
          type: string
        enqueued:
          type: boolean
        execution_count:
          type: integer
        expires_at:
          type: string
        id:
          type: string
        org_id:
          type: string
        owner_id:
          type: string
        owner_type:
          type: string
        queue:
          $ref: '#/components/schemas/app.Queue'
        queue_id:
          type: string
        signal:
          $ref: '#/components/schemas/signaldb.SignalData'
        signal_context:
          $ref: '#/components/schemas/cctx.SignalContext'
        status:
          $ref: '#/components/schemas/app.CompositeStatus'
        type:
          type: string
        updated_at:
          type: string
        workflow:
          $ref: '#/components/schemas/signaldb.WorkflowRef'
      type: object
    service.VCSConnectionReposResponse:
      properties:
        repositories:
          items:
            $ref: '#/components/schemas/service.VCSConnectionRepo'
          type: array
        total_count:
          type: integer
      type: object
    app.QueueEmitter:
      properties:
        created_at:
          type: string
        created_by_id:
          type: string
        cron_schedule:
          description: 'Schedule configuration

            For cron mode: cron expression (e.g., "0 * * * *")'
          type: string
        description:
          type: string
        emit_count:
          type: integer
        fired:
          description: 'For scheduled mode: whether the signal has been fired'
          type: boolean
        id:
          type: string
        jitter_window:
          description: 'For cron mode: spread emitter ticks deterministically across this window

            to avoid thundering-herd when many emitters share a schedule. A hash of the

            emitter ID determines each emitter''s static offset within the window. Zero

            disables jitter (default).'
          type: integer
        last_emitted_at:
          type: string
        mode:
          allOf:
          - $ref: '#/components/schemas/app.QueueEmitterMode'
          description: 'Emitter mode: "cron" for recurring, "scheduled" for one-shot'
        name:
          description: Emitter identity
          type: string
        next_emit_at:
          type: string
        org_id:
          type: string
        queue_id:
          description: 'Many-to-one: each emitter belongs to exactly one queue'
          type: string
        scheduled_at:
          description: 'For scheduled mode: the time to fire the signal'
          type: string
        signal_expires_in:
          description: 'Optional TTL for emitted signals. When set, each emitted signal''s ExpiresAt

            is computed as time.Now().Add(SignalExpiresIn) at emission time.'
          type: integer
        signal_template:
          $ref: '#/components/schemas/signaldb.SignalData'
        signal_type:
          description: Signal template - the signal to emit on each tick
          type: string
        status:
          allOf:
          - $ref: '#/components/schemas/app.CompositeStatus'
          description: Runtime state using shared CompositeStatus
        updated_at:
          type: string
        workflow:
          allOf:
          - $ref: '#/components/schemas/signaldb.WorkflowRef'
          description: Workflow reference for the emitter's cron workflow
      type: object
    app.Status:
      enum:
      - error
      - pending
      - in-progress
      - checking-plan
      - success
      - not-attempted
      - cancelled
      - retrying
      - discarded
      - user-skipped
      - auto-skipped
      - planning
      - applying
      - queued
      - warning
      - failed-pending-retry
      - generating
      - awaiting-user-run
      - provisioning
      - active
      - outdated
      - expired
      - approved
      - drifted
      - no-drift
      - approval-expired
      - approval-denied
      - approval-retry
      - building
      - deleting
      - noop
      - approval-awaiting
      type: string
      x-enum-varnames:
      - StatusError
      - StatusPending
      - StatusInProgress
      - StatusCheckPlan
      - StatusSuccess
      - StatusNotAttempted
      - StatusCancelled
      - StatusRetrying
      - StatusDiscarded
      - StatusUserSkipped
      - StatusAutoSkipped
      - StatusPlanning
      - StatusApplying
      - StatusQueued
      - StatusWarning
      - StatusFailedPendingRetry
      - InstallStackVersionStatusGenerating
      - InstallStackVersionStatusPendingUser
      - InstallStackVersionStatusProvisioning
      - InstallStackVersionStatusActive
      - InstallStackVersionStatusOutdated
      - InstallStackVersionStatusExpired
      - WorkflowStepApprovalStatusApproved
      - WorkflowStepDrifted
      - WorkflowStepNoDrift
      - WorkflowStepApprovalStatusApprovalExpired
      - WorkflowStepApprovalStatusApprovalDenied
      - WorkflowStepApprovalStatusApprovalRetryPlan
      - StatusBuilding
      - StatusDeleting
      - InstallDeployStatusV2Noop
      - AwaitingApproval
    app.QueueEmitterMode:
      enum:
      - cron
      - scheduled
      - fire_once
      type: string
      x-enum-varnames:
      - QueueEmitterModeCron
      - QueueEmitterModeScheduled
      - QueueEmitterModeFireOnce
    app.VCSConnection:
      properties:
        created_at:
          type: string
        created_by_id:
          type: string
        github_account_id:
          type: string
        github_account_name:
          type: string
        github_install_id:
          type: string
        id:
          type: string
        queues:
          items:
            $ref: '#/components/schemas/app.Queue'
          type: array
        status:
          $ref: '#/components/schemas/app.CompositeStatus'
        updated_at:
          type: string
        vcs_connection_commit:
          items:
            $ref: '#/components/schemas/app.VCSConnectionCommit'
          type: array
      type: object
    service.CreateConnectionRequest:
      properties:
        github_install_id:
          type: string
      required:
      - github_install_id
      type: object
    github.TextMatch:
      properties:
        fragment:
          type: string
        matches:
          items:
            $ref: '#/components/schemas/github.Match'
          type: array
        object_type:
          type: string
        object_url:
          type: string
        property:
          type: string
      type: object
    app.CompositeStatus:
      properties:
        created_at_ts:
          type: integer
        created_by_id:
          type: string
        history:
          items:
            $ref: '#/components/schemas/app.CompositeStatus'
          type: array
        metadata:
          additionalProperties: {}
          type: object
        status:
          $ref: '#/components/schemas/app.Status'
        status_human_description:
          type: string
      type: object
    service.VCSConnectionAccount:
      properties:
        id:
          type: integer
        login:
          type: string
        type:
          type: string
      type: object
    app.GithubEvent:
      properties:
        created_at:
          type: string
        created_by_id:
          type: string
        event_type:
          type: string
        github_install_id:
          type: string
        id:
          type: string
        payload:
          $ref: '#/components/schemas/blobstore.Blob'
        status:
          $ref: '#/components/schemas/app.CompositeStatus'
        updated_at:
          type: string
      type: object
    blobstore.Blob:
      type: object
    callback.Ref:
      properties:
        namespace:
          type: string
        signal_name:
          type: string
        workflow_id:
          type: string
      type: object
    github.User:
      properties:
        avatar_url:
          type: string
        bio:
          type: string
        blog:
          type: string
        collaborators:
          type: integer
        company:
          type: string
        created_at:
          $ref: '#/components/schemas/github.Timestamp'
        disk_usage:
          type: integer
        email:
          type: string
        events_url:
          type: string
        followers:
          type: integer
        followers_url:
          type: string
        following:
          type: integer
        following_url:
          type: string
  

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