Double column
curl
API
CLI

Services /

Create deployment service

Creates a new deployment service.

URL parameters

    • project

      string required

      ID of the project

Request attributes

  • object

    • name

      string required

      The name of the service.

      pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$

      min length: 3

      max length: 28

    • description

      string

      A description of the service.

      pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$

      max length: 200

    • billing

      object required

      • deploymentPlan

        string required

        The ID of the deployment plan to use.

        pattern: [A-Za-z0-9-]

    • deployment

      (multiple options) required

      Deployment type

      • object

        Internal deployment

        • instances

          integer required

          The number of instances to run the service on.

        • internal

          object

          • internalId

            string required

            pattern: [A-Za-z0-9-]

          • buildSHA

            string

          • branch

            string

        OR

      • object

        External deployment

        • instances

          integer required

          The number of instances to run the service on.

        • external

          object

          • registryProvider

            string required

            one of: dockerhub, gcr-eu, gcr-us, gitlab, github

          • privateImage

            boolean

          • imagePath

            string required

    • ports

      array

      • object

        • name

          string required

          The name used to identify the port.

          pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$

        • internalPort

          integer required

          The port number.

          min: 1

          max: 65535

        • public

          boolean

          If true, the port will be exposed publicly.

        • protocol

          string required

          The protocol to use for the port.

          one of: HTTP, TCP, UDP

    • configuration

      object

      • dockerCredentials

        object

    Response attributes

    • object

      • serviceType

        string required

        The type of the service created

      • serviceId

        string required

        The internal ID of the newly created service

    API
    CLI

    POST /v1beta/projects/{project}/services/deployment

    Example request

    request body

    curl

    curl --header "Content-Type: application/json" \
      --header "Authorization: Bearer NORTHFLANK_API_TOKEN" \
      --request POST \
      --data '{"name":"Example Service","description":"A service description","billing":{"deploymentPlan":"micro"},"deployment":{"instances":1,"internal":{}},"ports":[{"name":"port-1","internalPort":8080,"public":true,"protocol":"HTTP"}],"configuration":{"dockerCredentials":{}}}' \
      https://api.northflank.com/v1beta/projects/{project}/services/deployment

    Example response

    200 OK

    Details about the newly created service.

    JSON

    {
      "serviceType": "deployment",
      "serviceId": "new-service"
    }

    Example response

    400 Bad Request

    Unable to verify external image

    Example response

    409 Conflict

    There is already a service with the same derived identifier

    © 2020 Northflank Ltd. All rights reserved.

    TermsPrivacy

    contact@northflank.com