Skip to main content
POST
/
v1
/
components
/
{component_id}
/
configs
/
external-image
create an external image component config
curl --request POST \
  --url https://api.nuon.co/v1/components/{component_id}/configs/external-image \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "image_url": "<string>",
  "app_config_id": "<string>",
  "auto_approve_on_policies_passing": true,
  "aws_ecr_image_config": {
    "aws_region": "<string>",
    "iam_role_arn": "<string>"
  },
  "azure_acr_image_config": {
    "client_id": "<string>",
    "registry_url": "<string>",
    "tenant_id": "<string>"
  },
  "build_timeout": "<string>",
  "checksum": "<string>",
  "dependencies": [
    "<string>"
  ],
  "deploy_timeout": "<string>",
  "gcp_gar_image_config": {
    "gcp_project_id": "<string>",
    "gcp_region": "<string>",
    "image_url": "<string>",
    "service_account_email": "<string>",
    "tag": "<string>",
    "workload_identity_provider": "<string>"
  },
  "max_auto_retries": 123,
  "operation_roles": {},
  "references": [
    "<string>"
  ],
  "skip_noops": true,
  "tag": "<string>",
  "update_policy": "<string>"
}
'
{
  "aws_ecr_image_config": {
    "aws_region": "<string>",
    "component_config_id": "<string>",
    "component_config_type": "<string>",
    "created_at": "<string>",
    "created_by_id": "<string>",
    "iam_role_arn": "<string>",
    "id": "<string>",
    "updated_at": "<string>"
  },
  "azure_acr_image_config": {
    "client_id": "<string>",
    "component_config_id": "<string>",
    "component_config_type": "<string>",
    "created_at": "<string>",
    "created_by_id": "<string>",
    "id": "<string>",
    "registry_url": "<string>",
    "tenant_id": "<string>",
    "updated_at": "<string>"
  },
  "component_config_connection_id": "<string>",
  "created_at": "<string>",
  "created_by_id": "<string>",
  "gcp_gar_image_config": {
    "component_config_id": "<string>",
    "component_config_type": "<string>",
    "created_at": "<string>",
    "created_by_id": "<string>",
    "gcp_project_id": "<string>",
    "gcp_region": "<string>",
    "id": "<string>",
    "service_account_email": "<string>",
    "updated_at": "<string>",
    "workload_identity_provider": "<string>"
  },
  "id": "<string>",
  "image_url": "<string>",
  "tag": "<string>",
  "update_policy": "<string>",
  "updated_at": "<string>"
}

Authorizations

Authorization
string
header
required

Type "Bearer" followed by a space and token.

Path Parameters

component_id
string
required

component ID

Body

application/json

Input

image_url
string
required
app_config_id
string
auto_approve_on_policies_passing
boolean
aws_ecr_image_config
object
azure_acr_image_config
object
build_timeout
string

Duration string for build operations (e.g., "30m", "1h")

checksum
string
dependencies
string[]
deploy_timeout
string

Duration string for deploy operations (e.g., "30m", "1h")

gcp_gar_image_config
object
max_auto_retries
integer
operation_roles
object
references
string[]
skip_noops
boolean
tag
string
update_policy
string

UpdatePolicy is an optional Masterminds-compatible semver constraint (e.g. "~1.25.0", "^2"). When set, the runner lists tags from the source registry, filters to those satisfying the constraint, and uses the highest matching tag. Tag becomes optional in this case.

Response

Created

aws_ecr_image_config
object
azure_acr_image_config
object
component_config_connection_id
string

value

created_at
string
created_by_id
string
gcp_gar_image_config
object
id
string
image_url
string
tag
string
update_policy
string

UpdatePolicy is an optional Masterminds-compatible semver constraint (e.g. "~1.25.0", "^2", ">=1.0.0,<2.0.0") that, when set, causes the runner to list tags from the source registry, filter to those that parse as semver and satisfy the constraint, and pick the highest matching tag at build time. Tag is then ignored as the source ref; the resolved tag is recorded on ComponentBuild.ResolvedTag.

When empty, the runner uses Tag literally.

updated_at
string