v1
API
CLI
JS Client

Team / Integrations /

Create or update SSH identity

Creates or updates SSH identity data.

Required permission

Account > Ssh > General > Update

Path parameters

    • identityId

      string required
      ID of the SSH identity

Request body

  • {object}
    • name

      string required
      min length
      3
      max length
      100
      pattern
      ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$
    • description

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

      [array]
      A list of SSH public keys.
      • {object}
        • key

          string required
          The SSH public key.
    • restrictions

      {object}
      Configuration of restrictions.
      • projects

        {object}
        Configuration of project restriction settings.
        • enabled

          boolean
          Whether restriction by project should be enabled.
        • items

          [array]
          An array of previously defined projects.
          • string
            min length
            3
            max length
            100
            pattern
            ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$
      • tags

        {object}
        Configuration of tag restriction settings.
        • enabled

          boolean
          Whether restriction by tag should be enabled.
        • items

          [array]
          An array of previously defined tags to help identify and group the resource.
          • string
            min length
            3
            max length
            100
            pattern
            ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$
        • matchCondition

          string
          If all or any of the tags must be present on the target for it to match the condition.
          one of
          and, or
    • updatedAt

      string
      time of update
    • createdAt

      string
      time of creation

Response body

  • {object}
    Response object.
    • data

      {object} required
      Result data.
      • id

        string required
        ID of the docker credentials
        min length
        3
        max length
        39
        pattern
        ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$
      • name

        string required
        min length
        3
        max length
        100
        pattern
        ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$
      • description

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

        [array]
        A list of SSH public keys.
        • {object}
          • key

            string required
            The SSH public key.
      • restrictions

        {object}
        Configuration of restrictions.
        • projects

          {object}
          Configuration of project restriction settings.
          • enabled

            boolean
            Whether restriction by project should be enabled.
          • items

            [array]
            An array of previously defined projects.
            • string
              min length
              3
              max length
              100
              pattern
              ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$
        • tags

          {object}
          Configuration of tag restriction settings.
          • enabled

            boolean
            Whether restriction by tag should be enabled.
          • items

            [array]
            An array of previously defined tags to help identify and group the resource.
            • string
              min length
              3
              max length
              100
              pattern
              ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$
          • matchCondition

            string
            If all or any of the tags must be present on the target for it to match the condition.
            one of
            and, or
      • updatedAt

        string
        time of update
      • createdAt

        string
        time of creation
API
CLI
JS Client

PUT /v1/integrations/ssh-identities/{identityId}

PUT /v1/teams/{teamId}/integrations/ssh-identities/{identityId}

Example request

Request body
curl --header "Content-Type: application/json" \
  --header "Authorization: Bearer NORTHFLANK_API_TOKEN" \
  --request PUT \
  --data '{"name":"Example SSH Identity","sshPublicKeys":[{"key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ..."}],"restrictions":{"projects":{"enabled":false},"tags":{"enabled":false,"matchCondition":"or"}}}' \
  https://api.northflank.com/v1/integrations/ssh-identities/{identityId}

Example response

200 OK

Data about the SSH identity.

JSON

{
  "data": {
    "id": "example-credentials",
    "name": "Example SSH Identity",
    "sshPublicKeys": [
      {
        "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ..."
      }
    ],
    "restrictions": {
      "projects": {
        "enabled": false
      },
      "tags": {
        "enabled": false,
        "matchCondition": "or"
      }
    }
  }
}

© 2026 Northflank Ltd. All rights reserved.