Tenant Service (3.1.0)

Download OpenAPI specification:Download

This is the spec that defines the APIs provided by the tenant service to create a tenant and add the networks to the tenant, configure network parameters and configure switches with the tenant network's specific configurations.

Authentication

bearerAuth

Security Scheme Type HTTP
HTTP Authorization Scheme bearer
Bearer format "JWT"

Health

getHealth

This API helps to get the health of the Tenant service

Authorizations:

Responses

Response samples

Content type
application/json
{
  • "Service": "string",
  • "MessageBus": "string"
}

Tenant

getTenants

This API helps to get all tenants configured with tenant service

Authorizations:
query Parameters
object

{"group_by":"name"} Responses grouped by name {"filter":[{"name":"name","value":"Tenant1"},{"name":"id',"value":"1"}] Responses searched by name="Tenant1" and id="1" {"fuzzy":"tenant"} Responses searched using fuzzy search "tenant"

object

{"sort_by":"asc|desc"} Responses with id in ascending or descending order {"offset" : "lt:30"} Responses searched with id less than 30 {"page_size":20} Responses searched with limit of 20 entries

Responses

Response samples

Content type
application/json
{
  • "paginationResponse": {
    },
  • "tenant": [
    ]
}

getTenant

This API helps to get the specified Tenant details

Authorizations:
query Parameters
name
required
string

Name of the tenant to retrieve details

Responses

Response samples

Content type
application/json
{
  • "id": 1,
  • "name": "Tenant-A",
  • "type": "shared | private",
  • "description": "Tenant-A's Description",
  • "enable-bd": true,
  • "vlan-range": "10-20,50-60",
  • "l2-vni-range": "1-100",
  • "num-of-vrf": 20,
  • "l3-vni-range": "4096-5000",
  • "fabric-list": [
    ],
  • "port-list": [
    ],
  • "mirror-destination-port-list": [
    ],
  • "port-channel-list": [
    ],
  • "vrf-list": [
    ],
  • "epg-list": [
    ],
  • "bgp-peer-group-list": [
    ],
  • "bgp-peer-list": [
    ],
  • "mirror-session-list": [
    ]
}

createTenant

This API helps to create a tenant and reserve resources like Physical Ports, L2VNI, L3VNI, VLAN and Number of VRFs for the tenant. Tenant Name must be a unique key while creating a tenant with the tenant service.

Authorizations:
Request Body schema: application/json

Create a new tenant

name
required
string

Unique name of the tenant

type
string
Enum: "shared" "private"

POs or VRFs of shared tenant are available to other tenants. Default tenant type is private.

description
string

Description about tenant

enable-bd
boolean

Enable bridge-domain so that overlapping vlans can be supported

vlan-range
string

Range of VLANs to reserve for the tenant

l2-vni-range
string

Contiguous Range of L2 VNIs in ascending order will be reserved for the tenant within the scope of a fabric. L2 networks will consume the VNIs from this range.

num-of-vrf
integer

Number of VRFs to reserve for the tenant

l3-vni-range
string

Contiguous Range of L3 VNIs in ascending order will be reserved for the tenant within the scope of a fabric. L3 networks will consume the VNIs from this range.

fabric-list
Array of strings unique