Skip to main content

Create a container

POST 

/containers

The operation allows you to create a new container. A container constitutes a collection of pre-written and reusable code components, functions, and modules that enhance software development efficiency.

Request

Header Parameters

    X-Codenow-Api-Key anyrequired

    CodeNOW API Key

Body

required

    name stringrequired

    Possible values: >= 3 characters and <= 170 characters


    Human readable name of the container.
    CodeNOW will generate an ID for the container based on this name.

    description stringnullable


    The detailed textual description of the container. Allows users to add additional context, notes, or any relevant information about the purpose, usage, or characteristics of the container.

    scm

    object

    required


    Defines the repository in SCM.
    Supported providers/actions can be obtained through the /scm/providers endpoint.

    action ActionType (string)required

    Possible values: [CREATE, LINK]

    Default value: CREATE


    Action that will be performed on the SCM repository.
    CREATE: New SCM repository will be created for the component.
    LINK: The component will be linked to an existing SCM repository (unique ID of the repository will be required).

    providerId stringrequired

    Possible values: non-empty

    Instance ID of an existing SCM provider
    Available providers and supported actions can be obtained through the /scm/providers endpoint.

    providerType stringrequired

    Possible values: non-empty

    Type of an existing SCM provider
    Available providers and supported actions can be obtained through the /scm/providers endpoint.

    existingRepository booleanrequired

    Defines if the new container will be created in existing repository:

    • true: you must define spaceId and repositoryId of the existing repository in the request
    • false: new repository will be created for the component
    monoRepository booleanrequired

    Defines if the new container will be share repository with other components:

    • true: you must define componentPath where the container will be hosted in the repository
    • false: the container will be hosted in the root of the repository
    componentPath stringnullable

    Possible values: Value must match regular expression ^[a-zA-Z0-9\-_~./]*$

    Define path in the repository where the container will be placed.

    spaceId stringrequired

    ID of an existing SCM spaces where repository will be hosted.
    Available repositories can be obtained through the /scm/provider/{providerType}/{providerId}/spaces endpoint.

    repositoryId stringnullable

    ID of an existing SCM repository to which the container should be placed.
    Available repositories can be obtained through the /scm/provider/{providerType}/{providerId}/spaces/{spaceId}/repos endpoint.

Responses

Container detail

Schema

    id stringrequired


    The unique identifier of the container. Based on the user-defined container name.

    displayName stringrequired


    The user-friendly name or label for the container. It allows users to provide a clear and descriptive name that helps in identifying and distinguishing different containers easily. The field accepts free text with alphanumeric and special characters.

    description stringnullable


    The detailed textual description of the container. Allows users to add additional context, notes, or any relevant information about the purpose, usage, or characteristics of the container.

    templateId stringrequired


    An internal identifier of the scaffold selected for container creation. It includes information about the selected language, build tool and framework, if specified.

    state ContainerState (string)required

    Possible values: [CREATING, READY, FAILED, DELETING]

    State of the container
    CREATING - Container is being created
    READY - Container is ready
    FAILED - Container creation failed
    DELETING - Container is being deleted

Loading...