Skip to content

UI Network Management API v1.0.2

This schema defines the REST API for a IP Address Management System (IPAM). The IPAM system manages IP subnet definitions and their corresponding allocations.

Contact: Cloud Operations

Operations

Tag: networkManagement

list-subnets

Operation Id: list-subnets

Action: GET /subnets

Summary: Retrieve list of existing subnets

Parameters

Name In Type Required Description
api-version query ApiVersion true none
WorkloadName query string false none
MaxResults query integer false none
WorkloadEnvironment query string false none
Capabilities query array[string] false none
OrderBy query string false none

Responses

Status Meaning Description Schema
200 OK OK SubnetList

Note

This operation does not require authentication

Code samples

GET http://localhost:3000/subnets?api%2Dversion=v1.0.0 HTTP/1.1
Host: localhost:3000
Accept: application/json
# You can also use wget
curl -X GET http://localhost:3000/subnets?api%2Dversion=v1.0.0 \
  -H 'Accept: application/json'
import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('http://localhost:3000/subnets', params={
  'api-version': 'v1.0.0'
}, headers = headers)

print(r.json())

get-subnet

Operation Id: get-subnet

Action: GET /subnets/{ObjectId}

Summary: Retrieve existing subnet

Parameters

Name In Type Required Description
api-version query ApiVersion true none
ObjectId path SubnetId true none

Responses

Status Meaning Description Schema
200 OK OK SubnetList
400 Bad Request Bad Request Problem
401 Unauthorized Unauthorized Problem
404 Not Found The specified resource was not found Problem
500 Internal Server Error Internal Server Error Problem

Note

This operation does not require authentication

Code samples

GET http://localhost:3000/subnets/{ObjectId}?api%2Dversion=v1.0.0 HTTP/1.1
Host: localhost:3000
Accept: application/json
# You can also use wget
curl -X GET http://localhost:3000/subnets/{ObjectId}?api%2Dversion=v1.0.0 \
  -H 'Accept: application/json'
import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('http://localhost:3000/subnets/{ObjectId}', params={
  'api-version': 'v1.0.0'
}, headers = headers)

print(r.json())

update-subnet

Operation Id: update-subnet

Action: PATCH /subnets/{ObjectId}

Summary: Update existing subnet

Body parameter

{
  "ObjectID": "string",
  "NetworkId": "string",
  "MaskBits": 0,
  "StartIP": "string",
  "EndIP": "string",
  "Capabilities": null,
  "AssignmentProperties": null,
  "ExtensionProperties": null
}

Parameters

Name In Type Required Description
api-version query ApiVersion true none
ObjectId path SubnetId true none
body body Subnet true none

Responses

Status Meaning Description Schema
200 OK OK Subnet
400 Bad Request Bad Request Problem
401 Unauthorized Unauthorized Problem
404 Not Found The specified resource was not found Problem
422 Unprocessable Entity Unprocessable Entity Problem
500 Internal Server Error Internal Server Error Problem

Note

This operation does not require authentication

Code samples

PATCH http://localhost:3000/subnets/{ObjectId}?api%2Dversion=v1.0.0 HTTP/1.1
Host: localhost:3000
Content-Type: application/json
Accept: application/json
# You can also use wget
curl -X PATCH http://localhost:3000/subnets/{ObjectId}?api%2Dversion=v1.0.0 \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json'
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

r = requests.patch('http://localhost:3000/subnets/{ObjectId}', params={
  'api-version': 'v1.0.0'
}, headers = headers)

print(r.json())

Schemas

InnerError

{
  "code": "string",
  "innererror": {
    "code": "string",
    "innererror": {
      "code": "string",
      "innererror": {
        "code": "string",
        "innererror": {
          "code": null,
          "innererror": null
        }
      }
    }
  }
}

Properties

Name Type Required Restrictions Description
code string false none none
innererror InnerError false none none

Error

{
  "code": "string",
  "message": "string",
  "target": "string",
  "details": [
    {
      "code": "string",
      "message": "string",
      "target": "string",
      "details": [
        {
          "code": "string",
          "message": "string",
          "target": "string",
          "details": [
            {}
          ],
          "innererror": {
            "code": null,
            "innererror": null
          }
        }
      ],
      "innererror": {
        "code": "string",
        "innererror": {
          "code": "string",
          "innererror": {}
        }
      }
    }
  ],
  "innererror": {
    "code": "string",
    "innererror": {
      "code": "string",
      "innererror": {
        "code": "string",
        "innererror": {
          "code": null,
          "innererror": null
        }
      }
    }
  }
}

Properties

Name Type Required Restrictions Description
code string false none none
message string false none none
target string false none none
details [Error] false none none
innererror InnerError false none none

Problem

{
  "type": "/some/uri-reference",
  "title": "some title for the error situation",
  "status": 100,
  "detail": "some description for the error situation",
  "instance": "/some/uri-reference#specific-occurrence-context",
  "cause": {
    "code": "string",
    "message": "string",
    "target": "string",
    "details": [
      {
        "code": "string",
        "message": "string",
        "target": "string",
        "details": [
          {
            "code": null,
            "message": null,
            "target": null,
            "details": null,
            "innererror": null
          }
        ],
        "innererror": {
          "code": "string",
          "innererror": {}
        }
      }
    ],
    "innererror": {
      "code": "string",
      "innererror": {
        "code": "string",
        "innererror": {
          "code": null,
          "innererror": null
        }
      }
    }
  }
}

https://datatracker.ietf.org/doc/html/rfc7807

Properties

Name Type Required Restrictions Description
type string(uri) true none A URI reference that uniquely identifies the problem type only in the context of the provided API. Opposed to the specification in RFC-7807, it is neither recommended to be dereferenceable and point to a human-readable documentation nor globally unique for the problem type.
title string false none A short summary of the problem type. Written in English and readable for engineers, usually not suited for non technical stakeholders and not localized.
status integer(int32) false none The HTTP status code generated by the origin server for this occurrence of the problem.
detail string false none A human readable explanation specific to this occurrence of the problem that is helpful to locate the problem and give advice on how to proceed. Written in English and readable for engineers, usually not suited for non technical stakeholders and not localized.
instance string(uri-reference) false none A URI reference that identifies the specific occurrence of the problem, e.g. by adding a fragment identifier or sub-path to the problem type. May be used to locate the root of this problem in the source code.
cause Error false none none

ApiVersion

"v1.0.0"

Properties

Name Type Required Restrictions Description
anonymous string false none none

SubnetId

"string"

Properties

Name Type Required Restrictions Description
anonymous string false none none

NetworkId

"string"

Properties

Name Type Required Restrictions Description
anonymous string false none none

Subnet

{
  "ObjectID": "string",
  "NetworkId": "string",
  "MaskBits": 0,
  "StartIP": "string",
  "EndIP": "string",
  "Capabilities": null,
  "AssignmentProperties": null,
  "ExtensionProperties": null
}

Properties

Name Type Required Restrictions Description
ObjectID SubnetId false none none
NetworkId NetworkId false none none
MaskBits integer(int32) false none none
StartIP string false none none
EndIP string false none none
Capabilities any false none none
AssignmentProperties any false none none
ExtensionProperties any false none none

SubnetList

{
  "@count": 0,
  "value": [
    {
      "ObjectID": "string",
      "NetworkId": "string",
      "MaskBits": 0,
      "StartIP": "string",
      "EndIP": "string",
      "Capabilities": null,
      "AssignmentProperties": null,
      "ExtensionProperties": null
    }
  ]
}

Properties

Name Type Required Restrictions Description
@count integer(int32) true none none
value [Subnet] true none none