DMaaP Bus Controller REST API 1.1.0

Description

Bus Controller provides an API for OpenDCAE components which need to provision underlying DMaaP technologies (Data Router and Message Router). Primary clients for this API are anticipated to be the OpenDCAE Controller, OpenDCAE Orchestrator, OpenDCAE Inventory and the ECOMP Portal.

Objects managed by DMaaP are deployed in a dcaeLocation which is a unique identifier for an OpenStack tenant for a dcaeLayer, opendcae-central (aka ecomp) or opendcae-local-ntc (aka edge).

A dcaeEnvironment (e.g. FTL or prod) has a single DMaaP. A DMaaP is managed by a one or more stateless DMaaP Bus Controller(s), though Bus Controller relies on PGaaS for persistence. Each DMaaP has a single instance of Data Router, which has 1 or more DR_Nodes deployed at each dcaeLocation. DR Clients of type DR_Pub generally publish to a DR_Node that is local to its dcaeLocation. Routing for a Feed is determined by the dcaelocation of its DR_Sub clients.

A DMaaP may have many Message Router instances. Each instance is deployed as an MR_Cluster. One MR_Cluster is deployed at each dcaeLocation. MR_Clients generally communicate to the MR_Cluster at the same dcaeLocation. Replication of messages between MR_Clusters is accomplished by MR Bridge, which is provisioned by DMaaP Bus Controller based on Topic attributes.

Therefore, the role of DMaaP Bus Controller is to support other DCAE infrastructure components to dynamically provision DMaaP services on behalf of DMaaP clients, and to assist in any management or discovery activity of its clients.

A convention of this API is to return JSON responses per OpenStack style.

Contact Information

http://www.onap.org

License

Licensed under the Apache License, Version 2.0

Base URL

http://www.[host]:[port]/webapi

BRIDGE

Endpoint for retrieving MR Bridge metrics

GET /bridge

Summary

return BrTopic details

Description

Returns array of `BrTopic` objects. If source and target query params are specified, only report on that bridge. If detail param is true, list topics names, else just a count is returned.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

mmagent

query

No

string

detail

query

No

boolean

Request

Responses

200

Success

Type: BrTopic

Example:

{
    "brSource": "somestring",
    "brTarget": "somestring",
    "mmAgentName": "somestring",
    "topicCount": 1
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /bridge

Summary

update MirrorMaker details

Description

replace the topic list for a specific Bridge. Use JSON Body for value to replace whitelist, but if refreshFlag param is true, simply refresh using existing whitelist.If split param is true, spread whitelist over smaller mmagents.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

mmagent

query

No

string

refresh

query

No

boolean

split

query

No

boolean

Request

Responses

200

Success

Type: BrTopic

Example:

{
    "brSource": "somestring",
    "brTarget": "somestring",
    "mmAgentName": "somestring",
    "topicCount": 1
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DCAELOCATIONS

an OpenStack tenant purposed for OpenDCAE (i.e. where OpenDCAE components might be deployed)

POST /dcaeLocations

Summary

return dcaeLocation details

Description

Create some `dcaeLocation` which is a unique identifier for an *OpenStack* tenant purposed for a *dcaeLayer* (ecomp or edge).

Request

Responses

200

Success

Type: DcaeLocation

Example:

{
    "central": true,
    "clli": "somestring",
    "dcaeLayer": "somestring",
    "dcaeLocationName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "local": true,
    "openStackAvailabilityZone": "somestring",
    "status": "EMPTY",
    "subnet": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /dcaeLocations/{locationName}

Summary

return dcaeLocation details

Description

delete a dcaeLocation

Parameters

Name

Located in

Required

Type

Format

Properties

Description

locationName

path

Yes

string

Request

Responses

200

successful operation

Type: DcaeLocation

Example:

{
    "central": true,
    "clli": "somestring",
    "dcaeLayer": "somestring",
    "dcaeLocationName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "local": true,
    "openStackAvailabilityZone": "somestring",
    "status": "EMPTY",
    "subnet": "somestring"
}
204

Success

Type: DcaeLocation

Example:

{
    "central": true,
    "clli": "somestring",
    "dcaeLayer": "somestring",
    "dcaeLocationName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "local": true,
    "openStackAvailabilityZone": "somestring",
    "status": "EMPTY",
    "subnet": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dcaeLocations/{locationName}

Summary

return dcaeLocation details

Description

Returns a specific `dcaeLocation` object with specified tag

Parameters

Name

Located in

Required

Type

Format

Properties

Description

locationName

path

Yes

string

Request

Responses

200

Success

Type: DcaeLocation

Example:

{
    "central": true,
    "clli": "somestring",
    "dcaeLayer": "somestring",
    "dcaeLocationName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "local": true,
    "openStackAvailabilityZone": "somestring",
    "status": "EMPTY",
    "subnet": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dcaeLocations

Summary

return dcaeLocation details

Description

Returns array of `dcaeLocation` objects. All objects managed by DMaaP are deployed in some `dcaeLocation` which is a unique identifier for an *OpenStack* tenant purposed for a *dcaeLayer* (ecomp or edge).

Request

Responses

200

Success

Type: DcaeLocation

Example:

{
    "central": true,
    "clli": "somestring",
    "dcaeLayer": "somestring",
    "dcaeLocationName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "local": true,
    "openStackAvailabilityZone": "somestring",
    "status": "EMPTY",
    "subnet": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /dcaeLocations/{locationName}

Summary

return dcaeLocation details

Description

update the openStackAvailabilityZone of a dcaeLocation

Parameters

Name

Located in

Required

Type

Format

Properties

Description

locationName

path

Yes

string

Request

Responses

200

Success

Type: DcaeLocation

Example:

{
    "central": true,
    "clli": "somestring",
    "dcaeLayer": "somestring",
    "dcaeLocationName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "local": true,
    "openStackAvailabilityZone": "somestring",
    "status": "EMPTY",
    "subnet": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DMAAP

V2 Endpoint for this instance of DMaaP object containing values for this OpenDCAE deployment

POST /dmaap_v2

Summary

return dmaap details

Description

Create a new DMaaP set system wide configuration settings for the *dcaeEnvironment*. Deprecated with introduction of persistence in 1610.

Request

Responses

200

Success

Type: Dmaap

Example:

{
    "accessKeyOwner": "somestring",
    "bridgeAdminTopic": "somestring",
    "dmaapName": "somestring",
    "drProvUrl": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "loggingUrl": "somestring",
    "nodeKey": "somestring",
    "status": "EMPTY",
    "topicNsRoot": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

POST /dmaap

Summary

return dmaap details

Description

Create a new DMaaP set system wide configuration settings for the *dcaeEnvironment*. Deprecated with introduction of persistence in 1610.

Request

Responses

200

Success

Type: Dmaap

Example:

{
    "accessKeyOwner": "somestring",
    "bridgeAdminTopic": "somestring",
    "dmaapName": "somestring",
    "drProvUrl": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "loggingUrl": "somestring",
    "nodeKey": "somestring",
    "status": "EMPTY",
    "topicNsRoot": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dmaap_v2

Summary

return dmaap details

Description

returns the `dmaap` object, which contains system wide configuration settings

Request

Responses

200

Success

Type: Dmaap

Example:

{
    "accessKeyOwner": "somestring",
    "bridgeAdminTopic": "somestring",
    "dmaapName": "somestring",
    "drProvUrl": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "loggingUrl": "somestring",
    "nodeKey": "somestring",
    "status": "EMPTY",
    "topicNsRoot": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dmaap

Summary

return dmaap details

Description

returns the `dmaap` object, which contains system wide configuration settings

Request

Responses

200

Success

Type: Dmaap

Example:

{
    "accessKeyOwner": "somestring",
    "bridgeAdminTopic": "somestring",
    "dmaapName": "somestring",
    "drProvUrl": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "loggingUrl": "somestring",
    "nodeKey": "somestring",
    "status": "EMPTY",
    "topicNsRoot": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /dmaap_v2

Summary

return dmaap details

Description

Update system settings for *dcaeEnvironment*.

Request

Responses

200

Success

Type: Dmaap

Example:

{
    "accessKeyOwner": "somestring",
    "bridgeAdminTopic": "somestring",
    "dmaapName": "somestring",
    "drProvUrl": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "loggingUrl": "somestring",
    "nodeKey": "somestring",
    "status": "EMPTY",
    "topicNsRoot": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /dmaap

Summary

return dmaap details

Description

Update system settings for *dcaeEnvironment*.

Request

Responses

200

Success

Type: Dmaap

Example:

{
    "accessKeyOwner": "somestring",
    "bridgeAdminTopic": "somestring",
    "dmaapName": "somestring",
    "drProvUrl": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "loggingUrl": "somestring",
    "nodeKey": "somestring",
    "status": "EMPTY",
    "topicNsRoot": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DR_NODES

Endpoint for a Data Router Node server

POST /dr_nodes

Summary

return DR_Node details

Description

create a `DR_Node` in a *dcaeLocation*. Note that multiple `DR_Node`s may exist in the same `dcaeLocation`.

Request

Responses

200

Success

Type: DR_Node

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "hostName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "status": "EMPTY",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /dr_nodes/{fqdn}

Summary

No Content

Description

Delete a single `DR_Node` object.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

fqdn

path

Yes

string

Request

Responses

200

successful operation

Type: DR_Node

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "hostName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "status": "EMPTY",
    "version": "somestring"
}
204

Success

Type: DR_Node

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "hostName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "status": "EMPTY",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dr_nodes/{fqdn}

Summary

return DR_Node details

Description

Retrieve a single `DR_Node` object.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

fqdn

path

Yes

string

Request

Responses

200

Success

Type: DR_Node

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "hostName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "status": "EMPTY",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dr_nodes

Summary

return DR_Node details

Description

Returns array of `DR_Node` object array. Need to add filter by dcaeLocation.

Request

Responses

200

Success

Type: DR_Node

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "hostName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "status": "EMPTY",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /dr_nodes/{fqdn}

Summary

return DR_Node details

Description

Update a single `DR_Node` object.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

fqdn

path

Yes

string

Request

Responses

200

Success

Type: DR_Node

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "hostName": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "status": "EMPTY",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DR_PUBS

Endpoint for a Data Router client that implements a Publisher

POST /dr_pubs

Summary

return DR_Pub details

Description

create a DR Publisher in the specified environment.

Request

Responses

200

Success

Type: DR_Pub

Example:

{
    "dcaeLocationName": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "pubId": "somestring",
    "status": "EMPTY",
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /dr_pubs/{pubId}

Summary

return DR_Pub details

Description

delete a DR Publisher in the specified environment. Delete a `DR_Pub` object by pubId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

pubId

path

Yes

string

Request

Responses

200

successful operation

Type: DR_Pub

Example:

{
    "dcaeLocationName": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "pubId": "somestring",
    "status": "EMPTY",
    "username": "somestring",
    "userpwd": "somestring"
}
204

Success

Type: DR_Pub

Example:

{
    "dcaeLocationName": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "pubId": "somestring",
    "status": "EMPTY",
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dr_pubs/{pubId}

Summary

return DR_Pub details

Description

returns a DR Publisher in the specified environment. Gets a `DR_Pub` object by pubId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

pubId

path

Yes

string

Request

Responses

200

Success

Type: DR_Pub

Example:

{
    "dcaeLocationName": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "pubId": "somestring",
    "status": "EMPTY",
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dr_pubs

Summary

return DR_Pub details

Description

Returns array of `DR_Pub` objects. Add filter for feedId.

Request

Responses

200

Success

Type: DR_Pub

Example:

{
    "dcaeLocationName": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "pubId": "somestring",
    "status": "EMPTY",
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /dr_pubs/{pubId}

Summary

return DR_Pub details

Description

update a DR Publisher in the specified environment. Update a `DR_Pub` object by pubId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

pubId

path

Yes

string

Request

Responses

200

Success

Type: DR_Pub

Example:

{
    "dcaeLocationName": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "pubId": "somestring",
    "status": "EMPTY",
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DR_SUBS

Endpoint for a Data Router client that implements a Subscriber

POST /dr_subs

Summary

return DR_Sub details

Description

Create a `DR_Sub` object.

Request

Responses

200

Success

Type: DR_Sub

Example:

{
    "bytes": [
        "somestring",
        "somestring"
    ],
    "dcaeLocationName": "somestring",
    "deliveryURL": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "status": "EMPTY",
    "subId": "somestring",
    "suspended": true,
    "use100": true,
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /dr_subs/{subId}

Summary

return DR_Sub details

Description

Delete a `DR_Sub` object, selected by subId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

subId

path

Yes

string

Request

Responses

200

Success

Type: DR_Sub

Example:

{
    "bytes": [
        "somestring",
        "somestring"
    ],
    "dcaeLocationName": "somestring",
    "deliveryURL": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "status": "EMPTY",
    "subId": "somestring",
    "suspended": true,
    "use100": true,
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dr_subs/{subId}

Summary

return DR_Sub details

Description

Retrieve a `DR_Sub` object, selected by subId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

subId

path

Yes

string

Request

Responses

200

Success

Type: DR_Sub

Example:

{
    "bytes": [
        "somestring",
        "somestring"
    ],
    "dcaeLocationName": "somestring",
    "deliveryURL": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "status": "EMPTY",
    "subId": "somestring",
    "suspended": true,
    "use100": true,
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /dr_subs

Summary

return DR_Sub details

Description

Returns array of `DR_Sub` objects. Add filter for feedId.

Request

Responses

200

Success

Type: DR_Sub

Example:

{
    "bytes": [
        "somestring",
        "somestring"
    ],
    "dcaeLocationName": "somestring",
    "deliveryURL": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "status": "EMPTY",
    "subId": "somestring",
    "suspended": true,
    "use100": true,
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /dr_subs/{subId}

Summary

return DR_Sub details

Description

Update a `DR_Sub` object, selected by subId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

subId

path

Yes

string

Request

Responses

200

Success

Type: DR_Sub

Example:

{
    "bytes": [
        "somestring",
        "somestring"
    ],
    "dcaeLocationName": "somestring",
    "deliveryURL": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "status": "EMPTY",
    "subId": "somestring",
    "suspended": true,
    "use100": true,
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

FEEDS

Endpoint for a Data Router Feed

POST /feeds

Summary

return Feed details

Description

Create a of `Feed` object.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

useExisting

query

No

string

Request

Responses

200

Success

Type: Feed

Example:

{
    "asprClassification": "somestring",
    "bytes": [
        "somestring",
        "somestring"
    ],
    "feedDescription": "somestring",
    "feedId": "somestring",
    "feedName": "somestring",
    "feedVersion": "somestring",
    "formatUuid": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "publishURL": "somestring",
    "pubs": [
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "status": "EMPTY",
    "subs": [
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "subscribeURL": "somestring",
    "suspended": true
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /feeds/{id}

Summary

return Feed details

Description

Delete a `Feed` object, specified by id.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

id

path

Yes

string

Request

Responses

200

successful operation

Type: Feed

Example:

{
    "asprClassification": "somestring",
    "bytes": [
        "somestring",
        "somestring"
    ],
    "feedDescription": "somestring",
    "feedId": "somestring",
    "feedName": "somestring",
    "feedVersion": "somestring",
    "formatUuid": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "publishURL": "somestring",
    "pubs": [
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "status": "EMPTY",
    "subs": [
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "subscribeURL": "somestring",
    "suspended": true
}
204

Success

Type: Feed

Example:

{
    "asprClassification": "somestring",
    "bytes": [
        "somestring",
        "somestring"
    ],
    "feedDescription": "somestring",
    "feedId": "somestring",
    "feedName": "somestring",
    "feedVersion": "somestring",
    "formatUuid": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "publishURL": "somestring",
    "pubs": [
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "status": "EMPTY",
    "subs": [
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "subscribeURL": "somestring",
    "suspended": true
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /feeds/{id}

Summary

return Feed details

Description

Retrieve a `Feed` object, specified by id.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

id

path

Yes

string

Request

Responses

200

Success

Type: DR_Pub

Example:

{
    "dcaeLocationName": "somestring",
    "feedId": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "pubId": "somestring",
    "status": "EMPTY",
    "username": "somestring",
    "userpwd": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /feeds

Summary

return Feed details

Description

Returns array of `Feed` objects.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

feedName

query

No

string

version

query

No

string

match

query

No

string

Request

Responses

200

Success

Type: Feed

Example:

{
    "asprClassification": "somestring",
    "bytes": [
        "somestring",
        "somestring"
    ],
    "feedDescription": "somestring",
    "feedId": "somestring",
    "feedName": "somestring",
    "feedVersion": "somestring",
    "formatUuid": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "publishURL": "somestring",
    "pubs": [
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "status": "EMPTY",
    "subs": [
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "subscribeURL": "somestring",
    "suspended": true
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /feeds/{id}

Summary

return Feed details

Description

Update a `Feed` object, specified by id.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

id

path

Yes

string

Request

Responses

200

Success

Type: Feed

Example:

{
    "asprClassification": "somestring",
    "bytes": [
        "somestring",
        "somestring"
    ],
    "feedDescription": "somestring",
    "feedId": "somestring",
    "feedName": "somestring",
    "feedVersion": "somestring",
    "formatUuid": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "logURL": "somestring",
    "owner": "somestring",
    "publishURL": "somestring",
    "pubs": [
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "dcaeLocationName": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "pubId": "somestring",
            "status": "EMPTY",
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "status": "EMPTY",
    "subs": [
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        },
        {
            "bytes": [
                "somestring",
                "somestring"
            ],
            "dcaeLocationName": "somestring",
            "deliveryURL": "somestring",
            "feedId": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "logURL": "somestring",
            "owner": "somestring",
            "status": "EMPTY",
            "subId": "somestring",
            "suspended": true,
            "use100": true,
            "username": "somestring",
            "userpwd": "somestring"
        }
    ],
    "subscribeURL": "somestring",
    "suspended": true
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

INFO

Endpoint for this instance of DBCL. Returns health info.

GET /info

Summary

return info details

Description

returns the `info` object

Request

Responses

200

Success

Type: Dmaap

Example:

{
    "accessKeyOwner": "somestring",
    "bridgeAdminTopic": "somestring",
    "dmaapName": "somestring",
    "drProvUrl": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "loggingUrl": "somestring",
    "nodeKey": "somestring",
    "status": "EMPTY",
    "topicNsRoot": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

MR_CLIENTS

Endpoint for a Message Router Client that implements a Publisher or a Subscriber

POST /mr_clients

Summary

Associate an MR_Client object to a Topic

Description

Create a `MR_Client` object.The `dcaeLocation` attribute is used to match an `MR_Cluster` object with the same value, with the intent of localizing message traffic. In legacy implementation, the `clientRole` is granted appropriate permission in AAF. Newer implementions may instead specify an AAF Identity, which will be added to the appropriate `Topic` role.

Request

Responses

200

Success

Type: MR_Client

Example:

{
    "action": [
        "somestring",
        "somestring"
    ],
    "clientIdentity": "somestring",
    "clientRole": "somestring",
    "dcaeLocationName": "somestring",
    "fqtn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "mrClientId": "somestring",
    "status": "EMPTY",
    "topicURL": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /mr_clients/{subId}

Summary

Delete an MR_Client object

Description

Delete a `MR_Client` object, specified by clientId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

subId

path

Yes

string

Request

Responses

200

successful operation

Type: MR_Client

Example:

{
    "action": [
        "somestring",
        "somestring"
    ],
    "clientIdentity": "somestring",
    "clientRole": "somestring",
    "dcaeLocationName": "somestring",
    "fqtn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "mrClientId": "somestring",
    "status": "EMPTY",
    "topicURL": "somestring"
}
204

Success

Type: MR_Client

Example:

{
    "action": [
        "somestring",
        "somestring"
    ],
    "clientIdentity": "somestring",
    "clientRole": "somestring",
    "dcaeLocationName": "somestring",
    "fqtn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "mrClientId": "somestring",
    "status": "EMPTY",
    "topicURL": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /mr_clients

Summary

return MR_Client details

Description

Returns array of `MR_Client` objects.

Request

Responses

200

Success

Type: MR_Client

Example:

{
    "action": [
        "somestring",
        "somestring"
    ],
    "clientIdentity": "somestring",
    "clientRole": "somestring",
    "dcaeLocationName": "somestring",
    "fqtn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "mrClientId": "somestring",
    "status": "EMPTY",
    "topicURL": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /mr_clients/{subId}

Summary

return MR_Client details

Description

Retrieve a `MR_Client` object, specified by clientId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

subId

path

Yes

string

Request

Responses

200

Success

Type: MR_Client

Example:

{
    "action": [
        "somestring",
        "somestring"
    ],
    "clientIdentity": "somestring",
    "clientRole": "somestring",
    "dcaeLocationName": "somestring",
    "fqtn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "mrClientId": "somestring",
    "status": "EMPTY",
    "topicURL": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /mr_clients/{clientId}

Summary

Update an MR_Client object

Description

Update a `MR_Client` object, specified by clientId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

clientId

path

Yes

string

Request

Responses

200

Success

Type: MR_Client

Example:

{
    "action": [
        "somestring",
        "somestring"
    ],
    "clientIdentity": "somestring",
    "clientRole": "somestring",
    "dcaeLocationName": "somestring",
    "fqtn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "mrClientId": "somestring",
    "status": "EMPTY",
    "topicURL": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

MR_CLUSTERS

Endpoint for a Message Router servers in a Cluster configuration

POST /mr_clusters

Summary

return MR_Cluster details

Description

Create an `MR_Cluster` object.

Request

Responses

200

Success

Type: MR_Cluster

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "replicationGroup": "somestring",
    "sourceReplicationPort": "somestring",
    "status": "EMPTY",
    "targetReplicationPort": "somestring",
    "topicPort": "somestring",
    "topicProtocol": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /mr_clusters/{clusterId}

Summary

return MR_Cluster details

Description

Delete an `MR_Cluster` object, specified by clusterId.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

clusterId

path

Yes

string

Request

Responses

200

successful operation

Type: MR_Cluster

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "replicationGroup": "somestring",
    "sourceReplicationPort": "somestring",
    "status": "EMPTY",
    "targetReplicationPort": "somestring",
    "topicPort": "somestring",
    "topicProtocol": "somestring"
}
204

Success

Type: MR_Cluster

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "replicationGroup": "somestring",
    "sourceReplicationPort": "somestring",
    "status": "EMPTY",
    "targetReplicationPort": "somestring",
    "topicPort": "somestring",
    "topicProtocol": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /mr_clusters/{clusterId}

Summary

return MR_Cluster details

Description

Retrieve an `MR_Cluster` object, specified by clusterId.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

clusterId

path

Yes

string

Request

Responses

200

Success

Type: MR_Cluster

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "replicationGroup": "somestring",
    "sourceReplicationPort": "somestring",
    "status": "EMPTY",
    "targetReplicationPort": "somestring",
    "topicPort": "somestring",
    "topicProtocol": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /mr_clusters

Summary

return MR_Cluster details

Description

Returns array of `MR_Cluster` objects.

Request

Responses

200

Success

Type: MR_Cluster

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "replicationGroup": "somestring",
    "sourceReplicationPort": "somestring",
    "status": "EMPTY",
    "targetReplicationPort": "somestring",
    "topicPort": "somestring",
    "topicProtocol": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /mr_clusters/{clusterId}

Summary

return MR_Cluster details

Description

Update an `MR_Cluster` object, specified by clusterId.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

clusterId

path

Yes

string

Request

Responses

200

Success

Type: MR_Cluster

Example:

{
    "dcaeLocationName": "somestring",
    "fqdn": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "replicationGroup": "somestring",
    "sourceReplicationPort": "somestring",
    "status": "EMPTY",
    "targetReplicationPort": "somestring",
    "topicPort": "somestring",
    "topicProtocol": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

TOPICS

Endpoint for retrieving MR Topics

POST /topics

Summary

Create a Topic object

Description

Create `Topic` object.For convenience, the message body may populate the `clients` array, in which case each entry will be added as an `MR_Client`. Beginning in ONAP Dublin Release, dbcapi will create two AAF Roles by default, one each for the publisher and subscriber per topic. MR_Clients can then specify an AAF Identity to be added to the appropriate default Role, avoiding the need to create Role(s) in advance.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

useExisting

query

No

string

Request

Responses

200

Success

Type: Topic

Example:

{
    "clients": [
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        },
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        }
    ],
    "formatUuid": "somestring",
    "fqtn": "somestring",
    "fqtnStyle": "FQTN_NOT_SPECIFIED",
    "globalMrURL": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "owner": "somestring",
    "partitionCount": "somestring",
    "publisherRole": "somestring",
    "replicationCase": "REPLICATION_NOT_SPECIFIED",
    "replicationCount": "somestring",
    "status": "EMPTY",
    "subscriberRole": "somestring",
    "tnxEnabled": "somestring",
    "topicDescription": "somestring",
    "topicName": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

DELETE /topics/{topicId}

Summary

return Topic details

Description

Delete a `Topic` object, identified by topicId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

topicId

path

Yes

string

Request

Responses

200

successful operation

Type: Topic

Example:

{
    "clients": [
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        },
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        }
    ],
    "formatUuid": "somestring",
    "fqtn": "somestring",
    "fqtnStyle": "FQTN_NOT_SPECIFIED",
    "globalMrURL": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "owner": "somestring",
    "partitionCount": "somestring",
    "publisherRole": "somestring",
    "replicationCase": "REPLICATION_NOT_SPECIFIED",
    "replicationCount": "somestring",
    "status": "EMPTY",
    "subscriberRole": "somestring",
    "tnxEnabled": "somestring",
    "topicDescription": "somestring",
    "topicName": "somestring",
    "version": "somestring"
}
204

Success

Type: Topic

Example:

{
    "clients": [
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        },
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        }
    ],
    "formatUuid": "somestring",
    "fqtn": "somestring",
    "fqtnStyle": "FQTN_NOT_SPECIFIED",
    "globalMrURL": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "owner": "somestring",
    "partitionCount": "somestring",
    "publisherRole": "somestring",
    "replicationCase": "REPLICATION_NOT_SPECIFIED",
    "replicationCount": "somestring",
    "status": "EMPTY",
    "subscriberRole": "somestring",
    "tnxEnabled": "somestring",
    "topicDescription": "somestring",
    "topicName": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /topics/{topicId}

Summary

return Topic details

Description

Retrieve a `Topic` object, identified by topicId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

topicId

path

Yes

string

Request

Responses

200

Success

Type: Topic

Example:

{
    "clients": [
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        },
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        }
    ],
    "formatUuid": "somestring",
    "fqtn": "somestring",
    "fqtnStyle": "FQTN_NOT_SPECIFIED",
    "globalMrURL": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "owner": "somestring",
    "partitionCount": "somestring",
    "publisherRole": "somestring",
    "replicationCase": "REPLICATION_NOT_SPECIFIED",
    "replicationCount": "somestring",
    "status": "EMPTY",
    "subscriberRole": "somestring",
    "tnxEnabled": "somestring",
    "topicDescription": "somestring",
    "topicName": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

GET /topics

Summary

return Topic details

Description

Returns array of `Topic` objects.

Request

Responses

200

Success

Type: Topic

Example:

{
    "clients": [
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        },
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        }
    ],
    "formatUuid": "somestring",
    "fqtn": "somestring",
    "fqtnStyle": "FQTN_NOT_SPECIFIED",
    "globalMrURL": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "owner": "somestring",
    "partitionCount": "somestring",
    "publisherRole": "somestring",
    "replicationCase": "REPLICATION_NOT_SPECIFIED",
    "replicationCount": "somestring",
    "status": "EMPTY",
    "subscriberRole": "somestring",
    "tnxEnabled": "somestring",
    "topicDescription": "somestring",
    "topicName": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

PUT /topics/{topicId}

Summary

return Topic details

Description

Update a `Topic` object, identified by topicId

Parameters

Name

Located in

Required

Type

Format

Properties

Description

topicId

path

Yes

string

Request

Responses

200

Success

Type: Topic

Example:

{
    "clients": [
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        },
        {
            "action": [
                "somestring",
                "somestring"
            ],
            "clientIdentity": "somestring",
            "clientRole": "somestring",
            "dcaeLocationName": "somestring",
            "fqtn": "somestring",
            "lastMod": "2015-01-01T15:00:00.000Z",
            "mrClientId": "somestring",
            "status": "EMPTY",
            "topicURL": "somestring"
        }
    ],
    "formatUuid": "somestring",
    "fqtn": "somestring",
    "fqtnStyle": "FQTN_NOT_SPECIFIED",
    "globalMrURL": "somestring",
    "lastMod": "2015-01-01T15:00:00.000Z",
    "owner": "somestring",
    "partitionCount": "somestring",
    "publisherRole": "somestring",
    "replicationCase": "REPLICATION_NOT_SPECIFIED",
    "replicationCount": "somestring",
    "status": "EMPTY",
    "subscriberRole": "somestring",
    "tnxEnabled": "somestring",
    "topicDescription": "somestring",
    "topicName": "somestring",
    "version": "somestring"
}
400

Error

Type: ApiError

Example:

{
    "code": 1,
    "fields": "somestring",
    "is2xx": true,
    "message": "somestring"
}

Data Structures

ApiError Model Structure

Name

Required

Type

Format

Properties

Description

code

No

integer

int32

fields

No

string

is2xx

No

boolean

message

No

string

BrTopic Model Structure

Name

Required

Type

Format

Properties

Description

brSource

No

string

brTarget

No

string

mmAgentName

No

string

topicCount

No

integer

int32

DR_Node Model Structure

Name

Required

Type

Format

Properties

Description

dcaeLocationName

No

string

fqdn

No

string

hostName

No

string

lastMod

No

string

date-time

datestamp for last update to this object

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

version

No

string

DR_Pub Model Structure

Name

Required

Type

Format

Properties

Description

dcaeLocationName

No

string

feedId

No

string

lastMod

No

string

date-time

datestamp for last update to this object

pubId

No

string

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

username

No

string

userpwd

No

string

DR_Sub Model Structure

Name

Required

Type

Format

Properties

Description

bytes

No

array of string

dcaeLocationName

No

string

deliveryURL

No

string

feedId

No

string

lastMod

No

string

date-time

datestamp for last update to this object

logURL

No

string

owner

No

string

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

subId

No

string

suspended

No

boolean

use100

No

boolean

username

No

string

userpwd

No

string

DcaeLocation Model Structure

Name

Required

Type

Format

Properties

Description

central

No

boolean

clli

No

string

dcaeLayer

No

string

dcaeLocationName

No

string

lastMod

No

string

date-time

datestamp for last update to this object

local

No

boolean

openStackAvailabilityZone

No

string

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

subnet

No

string

Dmaap Model Structure

Name

Required

Type

Format

Properties

Description

accessKeyOwner

No

string

bridgeAdminTopic

No

string

dmaapName

No

string

drProvUrl

No

string

lastMod

No

string

date-time

datestamp for last update to this object

loggingUrl

No

string

nodeKey

No

string

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

topicNsRoot

No

string

version

No

string

Feed Model Structure

Name

Required

Type

Format

Properties

Description

asprClassification

No

string

bytes

No

array of string

feedDescription

No

string

feedId

No

string

feedName

No

string

feedVersion

No

string

formatUuid

No

string

lastMod

No

string

date-time

datestamp for last update to this object

logURL

No

string

owner

No

string

publishURL

No

string

pubs

No

array of DR_Pub

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

subs

No

array of DR_Sub

subscribeURL

No

string

suspended

No

boolean

MR_Client Model Structure

Name

Required

Type

Format

Properties

Description

action

No

array of string

one or more actions from the set (‘pub’, ‘sub’, ‘view’) for which this client needs Permission

clientIdentity

No

string

an AAF identity to be associated to an appropriate topic Role

clientRole

No

string

an AAF Role to be granted an appropriate Permission. If specified, takes precedence over clientIdentity, for backwards compatibility.

dcaeLocationName

No

string

a tag indicating a logical deployment site

fqtn

No

string

Fully Qualified Topic Name constructed by dbcapi

lastMod

No

string

date-time

datestamp for last update to this object

mrClientId

No

string

a unique identifier generated by dbcapi for this client

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

topicURL

No

string

the URL for a MR instance - typically in the same dcaeLocation - that this client should use to access the topic

MR_Cluster Model Structure

Name

Required

Type

Format

Properties

Description

dcaeLocationName

No

string

fqdn

No

string

lastMod

No

string

date-time

replicationGroup

No

string

sourceReplicationPort

No

string

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

targetReplicationPort

No

string

topicPort

No

string

topicProtocol

No

string

MirrorMaker Model Structure

Name

Required

Type

Format

Properties

Description

lastMod

No

string

date-time

datestamp for last update to this object

mmName

No

string

sourceCluster

No

string

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

targetCluster

No

string

topicCount

No

integer

int32

topics

No

array of string

whitelistUpdateJSON

No

string

Topic Model Structure

Name

Required

Type

Format

Properties

Description

clients

No

array of MR_Client

an array of MR_Client objects associated to this Topic

formatUuid

No

string

a reference to an identifier that describes a data format used for this Topic

fqtn

No

string

Fully Qualified Topic Name constructed by dbcapi, following the rules for fqtnStyle

fqtnStyle

No

string

{‘enum’: [‘FQTN_NOT_SPECIFIED’, ‘FQTN_LEGACY_FORMAT’, ‘FQTN_PROJECTID_FORMAT’, ‘FQTN_PROJECTID_VERSION_FORMAT’]}

the construction rule for the fqtn field

globalMrURL

No

string

the URL of an outside MR instance

lastMod

No

string

date-time

datestamp for last update to this object

owner

No

string

a label used to identify who requested this Topic to be provisioned. In the future this may be an AAF Identity.

partitionCount

No

string

the kafka attribute for specifying the number of partitions

publisherRole

No

string

a value generated by dbcapi, this AAF Role has permission to publish to this Topic

replicationCase

No

string

{‘enum’: [‘REPLICATION_NOT_SPECIFIED’, ‘REPLICATION_NONE’, ‘REPLICATION_EDGE_TO_CENTRAL’, ‘REPLICATION_EDGE_TO_CENTRAL_TO_GLOBAL’, ‘REPLICATION_CENTRAL_TO_EDGE’, ‘REPLICATION_CENTRAL_TO_GLOBAL’, ‘REPLICATION_GLOBAL_TO_CENTRAL’, ‘REPLICATION_GLOBAL_TO_CENTRAL_TO_EDGE’, ‘REPLICATION_EDGE_TO_FQDN’, ‘REPLICATION_FQDN_TO_EDGE’, ‘REPLICATION_FQDN_TO_GLOBAL’, ‘REPLICATION_GLOBAL_TO_FQDN’, ‘REPLICATION_EDGE_TO_FQDN_TO_GLOBAL’, ‘REPLICATION_GLOBAL_TO_FQDN_TO_EDGE’]}

An indicator for how this Topic should be replicated when there are more than one MR_Cluster instances

replicationCount

No

string

the kafka attribute for specifying replication within an MR_Cluster instance

status

No

string

{‘enum’: [‘EMPTY’, ‘NEW’, ‘STAGED’, ‘VALID’, ‘INVALID’, ‘DELETED’]}

subscriberRole

No

string

a value generated by dbcapi, this AAF Role has permission to subscribe to this Topic

tnxEnabled

No

string

topicDescription

No

string

a description of what this Topic is used for

topicName

No

string

the short name used by humans, and utilized to construct the FQTN

version

No

string

a hook for any versioning needed for managing a Topic over time