Nuon components API

components

OpenAPI Specification

nuon-components-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  contact:
    email: support@nuon.co
    name: Nuon Support
  description: API for managing nuon apps, components, installs, and actions.
  title: Nuon accounts components API
  version: 0.19.1074
host: api.nuon.co
basePath: /
schemes:
- https
tags:
- description: components
  name: components
paths:
  /v1/apps/{app_id}/component/{component_name_or_id}:
    get:
      consumes:
      - application/json
      description: 'Return an app component by id or name.

        '
      operationId: GetAppComponent
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: name or ID
        in: path
        name: component_name_or_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/app.Component'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get a components for a specific app
      tags:
      - components
  /v1/apps/{app_id}/components:
    get:
      consumes:
      - application/json
      description: 'Returns all components for the provided app.

        '
      operationId: GetAppComponents
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: search query to filter components by name or ID
        in: query
        name: q
        type: string
      - description: comma-separated list of component types to filter by (e.g., terraform_module, helm_chart)
        in: query
        name: types
        type: string
      - description: comma-separated list of component IDs to filter by
        in: query
        name: component_ids
        type: string
      - description: label filter (key:value,key:value)
        in: query
        name: labels
        type: string
      - default: 0
        description: offset of results to return
        in: query
        name: offset
        type: integer
      - default: 10
        description: limit of results to return
        in: query
        name: limit
        type: integer
      - default: 0
        description: page number of results to return
        in: query
        name: page
        type: integer
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            items:
              $ref: '#/definitions/app.Component'
            type: array
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get all components for an app
      tags:
      - components
    post:
      consumes:
      - application/json
      description: 'Create a new component for an app.

        '
      operationId: CreateComponent
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateComponentRequest'
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.Component'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create a component
      tags:
      - components
  /v1/apps/{app_id}/components/build-all:
    post:
      consumes:
      - application/json
      description: 'Build all components for an app.

        '
      operationId: BuildAllComponents
      parameters:
      - description: component ID
        in: path
        name: app_id
        required: true
        type: string
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.BuildAllComponentsRequest'
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            items:
              $ref: '#/definitions/app.ComponentBuild'
            type: array
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create component build
      tags:
      - components
  /v1/apps/{app_id}/components/label-keys:
    get:
      consumes:
      - application/json
      description: Returns all distinct label key:value pairs for components in the given app.
      operationId: GetComponentLabelKeys
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            additionalProperties:
              items:
                type: string
              type: array
            type: object
      security:
      - APIKey: []
      - OrgID: []
      summary: get distinct label key:value pairs across all components for an app
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}:
    delete:
      consumes:
      - application/json
      description: 'Delete a component.

        '
      operationId: DeleteAppComponent
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/app.EmptyResponse'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: delete a component
      tags:
      - components
    patch:
      consumes:
      - application/json
      description: 'Update a component''s configuration.

        '
      operationId: UpdateAppComponent
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.UpdateComponentRequest'
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/app.Component'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: update a component
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/builds:
    get:
      consumes:
      - application/json
      description: 'Returns all builds for the provided component.

        '
      operationId: GetAppComponentBuilds
      parameters:
      - description: app id to filter by
        in: path
        name: app_id
        required: true
        type: string
      - description: component id to filter by
        in: path
        name: component_id
        required: true
        type: string
      - default: 0
        description: offset of results to return
        in: query
        name: offset
        type: integer
      - default: 10
        description: limit of results to return
        in: query
        name: limit
        type: integer
      - default: 0
        description: page number of results to return
        in: query
        name: page
        type: integer
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            items:
              $ref: '#/definitions/app.ComponentBuild'
            type: array
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get builds for components
      tags:
      - components
    post:
      consumes:
      - application/json
      description: 'Create a build for a component.

        '
      operationId: CreateAppComponentBuild
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateComponentBuildRequest'
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.ComponentBuild'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create component build
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/builds/latest:
    get:
      consumes:
      - application/json
      description: 'Returns the most recent build for the provided component.

        '
      operationId: GetAppComponentLatestBuild
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/app.ComponentBuild'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get latest build for a component
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/builds/{build_id}:
    get:
      consumes:
      - application/json
      description: 'Returns builds for one or all components in an app.

        '
      operationId: GetAppComponentBuild
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      - description: build ID
        in: path
        name: build_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/app.ComponentBuild'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get a build for a component
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/builds/{build_id}/cancel:
    post:
      consumes:
      - application/json
      description: 'Cancel a component build by cancelling its queue signal. If the build has an in-flight runner job, it will also be cancelled.

        '
      operationId: CancelAppComponentBuild
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      - description: build ID
        in: path
        name: build_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '202':
          description: Accepted
          schema:
            $ref: '#/definitions/app.ComponentBuild'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: cancel component build
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs:
    get:
      consumes:
      - application/json
      description: 'Returns all configurations for the provided component.

        '
      operationId: GetAppComponentConfigs
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      - default: 0
        description: offset of results to return
        in: query
        name: offset
        type: integer
      - default: 10
        description: limit of results to return
        in: query
        name: limit
        type: integer
      - default: 0
        description: page number of results to return
        in: query
        name: page
        type: integer
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            items:
              $ref: '#/definitions/app.ComponentConfigConnection'
            type: array
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get all configs for a component
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/docker-build:
    post:
      consumes:
      - application/json
      description: 'Create a Docker build component config.

        '
      operationId: CreateAppDockerBuildComponentConfig
      parameters:
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateDockerBuildComponentConfigRequest'
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.DockerBuildComponentConfig'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create a docker build component config
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/external-image:
    post:
      consumes:
      - application/json
      description: 'Create an external image component config.

        '
      operationId: CreateAppExternalImageComponentConfig
      parameters:
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateExternalImageComponentConfigRequest'
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.ExternalImageComponentConfig'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create an external image component config
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/helm:
    post:
      consumes:
      - application/json
      description: 'Create a helm component config.

        '
      operationId: CreateAppHelmComponentConfig
      parameters:
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateHelmComponentConfigRequest'
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.HelmComponentConfig'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create a helm component config
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/job:
    post:
      consumes:
      - application/json
      description: 'Create a job component config.

        '
      operationId: CreateAppJobComponentConfig
      parameters:
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateJobComponentConfigRequest'
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.JobComponentConfig'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create a job component config
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/kubernetes-manifest:
    post:
      consumes:
      - application/json
      description: 'Create a Kubernetes manifest component config.

        '
      operationId: CreateAppKubernetesManifestComponentConfig
      parameters:
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateKubernetesManifestComponentConfigRequest'
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.KubernetesManifestComponentConfig'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create a kubernetes manifest component config
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/latest:
    get:
      consumes:
      - application/json
      description: 'Returns the most recent config for the provided component.

        '
      operationId: GetAppComponentLatestConfig
      parameters:
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/app.ComponentConfigConnection'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: get latest config for a component
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/pulumi:
    post:
      consumes:
      - application/json
      operationId: CreateAppPulumiComponentConfig
      parameters:
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreatePulumiComponentConfigRequest'
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.PulumiComponentConfig'
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '403':
          description: Forbidden
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/stderr.ErrResponse'
      security:
      - APIKey: []
      - OrgID: []
      summary: create a pulumi component config
      tags:
      - components
  /v1/apps/{app_id}/components/{component_id}/configs/terraform-module:
    post:
      consumes:
      - application/json
      description: 'Create a terraform component config.

        '
      operationId: CreateAppTerraformModuleComponentConfig
      parameters:
      - description: Input
        in: body
        name: req
        required: true
        schema:
          $ref: '#/definitions/service.CreateTerraformModuleComponentConfigRequest'
      - description: app ID
        in: path
        name: app_id
        required: true
        type: string
      - description: component ID
        in: path
        name: component_id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/app.TerraformModuleComponentConfig'
        '400

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