Fabric Service (2.2.0)

Download OpenAPI specification:Download

This is the spec that defines the API provided by the application to register devices to a fabric, configure fabric parameters, validate all the devices in the fabric and configure switches for IP Fabric with/without overlay

Fabric

getFabrics

Get All fabric details configured in the application

Responses

200

OK

404

No fabrics found in the system

500

Unexpected error

default

Unexpected error

get/fabrics
http://gofabric-service:80/v1/fabrics

getFabric

Get only specified fabric details. The fabric can be identified by id or name

query Parameters
name
required
string

Name of the fabric to retrieve

Responses

200

OK

401

Authorization information is missing or invalid.

404

A fabric with the specified name was not found.

500

Unexpected error.

default

Unexpected error

get/fabric
http://gofabric-service:80/v1/fabric

createFabric

Request Body schema: application/json

Create a new Fabric

name
required
string
description
string
stage
integer <int32>
Enum: 3 5 7
type
string
Enum: "clos" "non-clos"

Responses

200

OK

401

Authorization information is missing or invalid.

409

A fabric with the specified name already exists.

500

Unexpected error.

default

Unexpected error

post/fabric
http://gofabric-service:80/v1/fabric

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "stage": 5,
  • "type": "clos",
  • "name": "BLR-FABRIC",
  • "description": "Bengaluru DC IP Fabric"
}

deleteFabric

Delete an existing fabric by fabric name

query Parameters
name
required
string

Name of the fabric to be deleted

force
boolean
Default: false

Value true implies forced deletion of the fabric

Responses

200

OK

401

Authorization information is missing or invalid.

404

A fabric with the specified name was not found.

500

Unexpected error.

default

Unexpected error

delete/fabric
http://gofabric-service:80/v1/fabric

cloneFabric

query Parameters
source-fabric
required
string

Fabric to be cloned from

destination-fabric
required
string

Fabric to be cloned to

Responses

200

OK

401

Authorization information is missing or invalid.

409

A fabric with the specified name already exists.

500

Unexpected error.

default

Unexpected error

post/fabric/clone
http://gofabric-service:80/v1/fabric/clone

validateFabric

Validate CLOS topology of an input fabric

query Parameters
fabric-name
required
string

Name of the fabric

Responses

200

OK

401

Authorization information is missing or invalid.

404

A fabric with the specified name was not found.

500

Unexpected error.

get/fabric/validate
http://gofabric-service:80/v1/fabric/validate

FabricErrors

Get Fabric Error For an input fabric

query Parameters
fabric-name
required
string

Name of the fabric

Responses

200

OK

401

Authorization information is missing or invalid.

404

A fabric with the specified name was not found.

500

Unexpected error.

get/fabric/errors
http://gofabric-service:80/v1/fabric/errors

configureFabric

Configure IP Fabric underlay/overlay on all devices of a fabric

query Parameters
fabric-name
required
string

Name of the fabric

force
boolean
Default: false

Force the fabric configure operation on all devices of the fabric

Responses

200

OK

401

Authorization information is missing or invalid.

500

Unexpected error.

default

Unexpected error

post/fabric/configure
http://gofabric-service:80/v1/fabric/configure

importFabric

Request Body schema: multipart/form-data
file
string <binary>

efa.db file-path. This file will get uploaded to the dcapp server.

fabric_name
required
string

Name of the fabric that gets created after importing db file.

Responses

200

OK

401

Authorization information is missing or invalid.

409

Import fabric validation error

500

Unexpected error.

default

Unexpected error

post/fabric/import
http://gofabric-service:80/v1/fabric/import

Fabric Setting

getFabricSetting

query Parameters
name
required
string

Name of the fabric to retrieve

Responses

200

OK

400

Incorrect values specified for Fabric setting

401

Authorization information is missing or invalid.

404

A fabric with the specified name was not found.

409

A fabric settings already exist and cannot be updated.

500

Unexpected error.

default

Unexpected error

get/fabric/setting
http://gofabric-service:80/v1/fabric/setting

updateFabricSetting

Request Body schema: application/json

Update Fabric Settings.

name
required
string
keyval
required
Array of objects (FabricParameter)

Responses

200

OK

400

Incorrect values specified for Fabric setting

401

Authorization information is missing or invalid.

404

A fabric with the specified name was not found.

409

A fabric settings already exist and cannot be updated.

500

Unexpected error.

default

Unexpected error

put/fabric/setting
http://gofabric-service:80/v1/fabric/setting

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "name",
  • "keyval":
    [
    ]
}

Fabric Topology

getFabricPhysicalTopology

Get fabric physical topology for a specified fabric.

query Parameters
fabric-name
required
string

Name of the fabric

Responses

200

OK

401

Authorization information is missing or invalid.

404

A device with the specified IP was not found.

500

Unexpected error

default

Unexpected error

get/fabric/topology/physical
http://gofabric-service:80/v1/fabric/topology/physical

getFabricUnderlayTopology

Get fabric underlay topology for a specified fabric

query Parameters
fabric-name
required
string

Name of the fabric

Responses

200

OK

401

Authorization information is missing or invalid

404

A device with the specified IP was not found

500

Unexpected error

default

Unexpected error

get/fabric/topology/underlay
http://gofabric-service:80/v1/fabric/topology/underlay

getFabricOverlayTopology

Get fabric overlay topology for a specified fabric

query Parameters
fabric-name
required
string

Name of the fabric

Responses

200

OK

401

Authorization information is missing or invalid

404

A device with the specified IP was not found

500

Unexpected error

default

Unexpected error

get/fabric/topology/overlay
http://gofabric-service:80/v1/fabric/topology/overlay

Fabric Device

getDevicesByFabricName

Get All Devices in the specified fabric.

query Parameters
fabric-name
required
string

Fabric name

Responses

200

OK

404

No Devices found for the specified fabric.

422

Specified Fabric not found.

500

Unexpected error.

default

Unexpected error

get/fabric/devices
http://gofabric-service:80/v1/fabric/devices

addDevicesToFabric

Request Body schema: application/json

Add new devices to the specified fabric

fabric-name
string

Name of the fabric

items
Array of objects (FabricDeviceAddRequest)

Responses

200

OK

410

Specified fabric doesnt exist

500

Unexpected error.

default

CLOS topology validation error

post/fabric/devices
http://gofabric-service:80/v1/fabric/devices

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "fabric-name": "BLR-FABRIC",
  • "items":
    [
    ]
}

removeDevicesFromFabric

Remove devices from the specific fabric

Request Body schema: application/json

Details of the devices to be removed

fabric-name
string

Name of the fabric

items
Array of objects (FabricDeviceRemoveRequest)

Responses

200

OK

401

Authorization information is missing or invalid.

404

A Device with the specified IP Address was not found.

500

Unexpected error.

default

Unexpected error

delete/fabric/devices
http://gofabric-service:80/v1/fabric/devices

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items":
    [
    ]
}

This API helps user to generate the drift between the EFA intended config and actual Device config. If reconcile flag is set then generated drift will be pushed to the device

query Parameters
n