1. Overview

Microservice containing the business logic for managing configuration of standard,custom tabs & custom (PRE,POST) calls.

1.1. URI scheme

Host : localhost
BasePath : /external-config-app-service/

1.2. Tags

  • action-controller : Action Controller

  • action-type-controller : Action Type Controller

  • application-tab-controller : Application Tab Controller

  • call-controller : Call Controller

  • external-config-controller : External Config Controller

  • parameter-controller : Parameter Controller

  • tab-controller : Tab Controller

2. Resources

2.1. Action-controller

Action Controller

2.1.1. Create an Action

POST /v1/actions
Parameters
Type Name Description Schema

Body

actionRequest
required

actionRequest

ActionRequest

Responses
HTTP Code Description Schema

200

OK

ActionResponse

201

Created

ActionResponse

204

No Content, Error retrieving actions

HttpErrorResponse

400

Bad Request

HttpErrorResponse

401

User Unauthorized

HttpErrorResponse

409

Action name {actionName} already exists

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.1.2. Get Actions

GET /v1/actions
Parameters
Type Name Description Schema Default

Query

actionId
optional

actionId

integer (int64)

Query

includeDeleted
optional

includeDeleted

boolean

"false"

Responses
HTTP Code Description Schema

200

OK

< ActionResponse > array

204

No Content, Error retrieving actions

HttpErrorResponse

400

Bad Request

HttpErrorResponse

401

User Unauthorized

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Produces
  • application/json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.1.3. Update an Action

PUT /v1/actions/{id}
Parameters
Type Name Description Schema

Path

id
required

id

integer (int64)

Body

actionRequest
required

actionRequest

ActionRequest

Responses
HTTP Code Description Schema

200

OK

ActionResponse

204

No Content, Error retrieving actions

HttpErrorResponse

400

Bad Request

HttpErrorResponse

401

User Unauthorized

HttpErrorResponse

404

Action with id {id#} doesn’t exist

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.1.4. Delete an Action

DELETE /v1/actions/{id}
Parameters
Type Name Description Schema

Path

id
required

id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

object

204

No Content, Error retrieving actions

HttpErrorResponse

400

Bad Request

HttpErrorResponse

401

User Unauthorized

HttpErrorResponse

404

Action with id {id#} doesn’t exist

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Produces
  • application/json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2. Action-type-controller

Action Type Controller

2.2.1. Create an ActionType

POST /v1/actionTypes
Parameters
Type Name Description Schema

Body

actionTypeRequest
required

actionTypeRequest

ActionTypeRequest

Responses
HTTP Code Description Schema

200

OK

ActionTypeResponse

201

Created

ActionTypeResponse

204

No Content, Error retrieving actions

HttpErrorResponse

400

Bad Request

HttpErrorResponse

401

User Unauthorized

HttpErrorResponse

409

ActionType name {actionTypeName} already exists

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.2. Get ActionTypes

GET /v1/actionTypes
Parameters
Type Name Description Schema Default

Query

actionTypeId
optional

actionTypeId

integer (int64)

Query

includeDeleted
optional

includeDeleted

boolean

"false"

Responses
HTTP Code Description Schema

200

OK

< ActionType > array

204

No Content, Error retrieving actionTypes

HttpErrorResponse

401

User Unauthorized

No Content

500

Internal Server Error

HttpErrorResponse

Produces
  • /

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.3. Update an ActionType

PUT /v1/actionTypes/{id}
Parameters
Type Name Description Schema

Path

id
required

id

integer (int64)

Body

actionTypeRequest
required

actionTypeRequest

ActionTypeRequest

Responses
HTTP Code Description Schema

200

OK

ActionTypeResponse

204

No Content, Error retrieving actions

HttpErrorResponse

400

Bad Request

HttpErrorResponse

401

User Unauthorized

HttpErrorResponse

404

ActionType with id {id#} doesn’t exist

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.2.4. Delete an ActionType

DELETE /v1/actionTypes/{id}
Parameters
Type Name Description Schema

Path

id
required

id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

object

204

No Content, Error retrieving actions

HttpErrorResponse

400

Bad Request

HttpErrorResponse

401

User Unauthorized

HttpErrorResponse

404

ActionType with id {id#} doesn’t exist

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Produces
  • application/json

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.3. Application-tab-controller

Application Tab Controller

2.3.1. Get tabs mapped to appId.

GET /apps/{appId}/tabs
Parameters
Type Name Description Schema Default

Path

appId
required

appId

integer (int64)

Query

enabled
optional

enabled

boolean

Query

page
optional

page

integer (int32)

0

Query

size
optional

size

integer (int32)

20

Responses
HTTP Code Description Schema

200

OK

< ApplicationTabResponseResults > array

400

Bad Request

HttpErrorResponse

401

Unauthorized

HttpErrorResponse

404

Not Found

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.3.2. Get tab details mapped to appId

GET /apps/{appId}/tabs/{tabId}
Parameters
Type Name Description Schema

Path

appId
required

appId

integer (int64)

Path

tabId
required

tabId

integer (int64)

Query

segmentId
optional

segmentId

integer (int64)

Query

workOrderId
optional

workOrderId

integer (int64)

Responses
HTTP Code Description Schema

200

OK

ApplicationTabDetailResponse

400

Bad Request

HttpErrorResponse

401

Unauthorized

HttpErrorResponse

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

422

Unprocessable Entity

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.4. Call-controller

Call Controller

2.4.1. Create configuration for given action

POST /v1/configurations
Parameters
Type Name Description Schema

Body

externalConfigRequest
optional

External config data Object

ExternalConfigRequest

Responses
HTTP Code Description Schema

201

Created

ExternalConfigResource

400

Invalid data supplied

HttpErrorResponse

401

User Unauthorized

No Content

404

Action/ActionType/Configuration is not found

HttpErrorResponse

409

Conflict, configuration already exists. Use a PUT to update

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.4.2. Update configuration for given action

PUT /v1/configurations/{id}
Parameters
Type Name Description Schema

Path

id
required

id

integer (int64)

Body

externalUpdateConfigRequest
optional

External config data Object

ExternalConfigUpdateRequest

Responses
HTTP Code Description Schema

200

OK

ExternalConfigResource

400

Invalid data supplied

HttpErrorResponse

401

User Unauthorized

No Content

404

Not Found, Action/ActionType/Configuration is not valid

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.4.3. Delete Configuration

DELETE /v1/configurations/{id}
Parameters
Type Name Description Schema

Path

id
required

id

integer (int64)

Responses
HTTP Code Description Schema

200

OK

object

400

Invalid data supplied

HttpErrorResponse

401

User Unauthorized

No Content

404

Configuration details not found

HttpErrorResponse

500

Internal Server Error

HttpErrorResponse

Produces
  • /

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.5. External-config-controller

External Config Controller

2.5.1. Get Configurations

GET /v1/configurations
Parameters
Type Name Description Schema Default

Query

actionId
optional

actionId

integer (int32)

Query

actionName
optional

actionName

string

Query

actionTypeId
optional

actionTypeId

integer (int32)

Query

configId
optional

configId

integer (int64)

Query

includeDeleted
optional

includeDeleted

boolean

"false"

Query

page
optional

page

integer (int32)

0

Query

segmentId
optional

segmentId

integer (int64)

Query

size
optional

size

integer (int32)

20

Query

workOrderId
optional

workOrderId

integer (int64)

Responses
HTTP Code Description Schema

200

OK

ExternalConfigResponsePage

204

No Content, Error retrieving actions

HttpErrorResponse

401

User Unauthorized

No Content

500

Internal Server Error

HttpErrorResponse

Produces
  • /

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.6. Parameter-controller

Parameter Controller

2.6.1. Get Parameters

GET /v1/parameters
Parameters
Type Name Description Schema Default

Query

id
optional

id

string

Query

includeCustomProperties
optional

includeCustomProperties

boolean

"true"

Query

name
optional

name

string

Responses
HTTP Code Description Schema

200

OK

< ParameterResponse > array

204

No Content, Error retrieving parameters

HttpErrorResponse

401

User Unauthorized

No Content

500

Internal Server Error

HttpErrorResponse

Produces
  • /

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.7. Tab-controller

Tab Controller

2.7.1. Get the application collections

GET /apps
Responses
HTTP Code Description Schema

200

OK

< Application > array

401

Unauthorized

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.7.2. Update tabs details mapped to appId

PUT /apps/{appId}/tabs
Parameters
Type Name Description Schema

Path

appId
required

appId

integer (int64)

Body

request
required

request

< UpdateTabToggleRequest > array

Responses
HTTP Code Description Schema

200

OK

< UpdateTabToggleResponse > array

400

Bad Request

HttpErrorResponse

401

Unauthorized

HttpErrorResponse

404

Not Found

HttpErrorResponse

422

Unprocessable Entity

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.7.3. Create a tab

POST /tabs
Parameters
Type Name Description Schema

Body

request
required

request

CreateTabRequest

Responses
HTTP Code Description Schema

201

CREATED

TabDetailResponse

400

Bad Request

HttpErrorResponse

401

Unauthorized

HttpErrorResponse

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

422

Unprocessable Entity

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.7.4. Get the tab collections

GET /tabs
Parameters
Type Name Description Schema Default

Query

page
optional

page

integer (int32)

0

Query

size
optional

size

integer (int32)

20

Query

type
optional

type

enum (Standard, Custom)

Responses
HTTP Code Description Schema

200

OK

< TabDetailResponseResults > array

401

Unauthorized

HttpErrorResponse

404

Not Found

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.7.5. Get a tab

GET /tabs/{tabId}
Parameters
Type Name Description Schema

Path

tabId
required

tabId

integer (int64)

Responses
HTTP Code Description Schema

200

OK

TabDetailResponse

400

Bad Request

HttpErrorResponse

401

Unauthorized

HttpErrorResponse

404

Not Found

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.7.6. Update a tab

PUT /tabs/{tabId}
Parameters
Type Name Description Schema

Path

tabId
required

tabId

integer (int64)

Body

request
required

request

UpdateTabRequest

Responses
HTTP Code Description Schema

200

OK

TabDetailResponse

400

Bad Request

HttpErrorResponse

401

Unauthorized

HttpErrorResponse

403

Forbidden

HttpErrorResponse

404

Not Found

HttpErrorResponse

422

Unprocessable Entity

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Consumes
  • application/json

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

2.7.7. Delete a tab

DELETE /tabs/{tabId}
Parameters
Type Name Description Schema

Path

tabId
required

tabId

integer (int64)

Responses
HTTP Code Description Schema

200

OK

MessageResponse

400

Bad Request

HttpErrorResponse

401

Unauthorized

HttpErrorResponse

404

Not Found

HttpErrorResponse

500

Internal Server error

HttpErrorResponse

Produces
  • application/json;charset=UTF-8

Security
Type Name Scopes

oauth2

access_token

default

oauth2

client_creds

default

oauth2

resource_owner

default

oauth2

implicit_grant

default

3. Definitions

3.1. ActionRequest

Name Schema

description
optional

string

name
optional

string

3.2. ActionResponse

Name Description Schema

createdBy
optional

string

createdOn
optional

string

deleted
optional

Example : false

boolean

description
optional

string

id
optional

integer (int64)

lastModifiedBy
optional

string

lastModifiedOn
optional

string

name
optional

string

3.3. ActionType

Name Description Schema

createdBy
optional

string

createdOn
optional

string (date-time)

deleted
optional

Example : false

boolean

description
optional

string

id
optional

integer (int64)

lastModifiedBy
optional

string

lastModifiedOn
optional

string (date-time)

name
optional

string

3.4. ActionTypeRequest

Name Schema

description
optional

string

name
optional

string

3.5. ActionTypeResponse

Name Description Schema

createdBy
optional

string

createdOn
optional

string

deleted
optional

Example : false

boolean

description
optional

string

id
optional

integer (int64)

lastModifiedBy
optional

string

lastModifiedOn
optional

string

name
optional

string

3.6. AppMappingRequest

Name Schema

app_id
optional

integer (int64)

enable_mapping
optional

boolean

3.7. AppMappingResponse

Name Schema

app_id
optional

integer (int64)

enable_mapping
optional

boolean

3.8. Application

Name Schema

id
optional

integer (int32)

name
optional

string

3.9. ApplicationTabDetailResponse

Name Schema

description
optional

string

display_name
optional

string

id
optional

integer (int64)

standard
optional

boolean

tab_config_data
optional

TabConfigData

tab_config_expressions
optional

TabConfigExpressions

3.10. ApplicationTabResponseResource

Name Schema

description
optional

string

displayName
optional

string

enabled
optional

boolean

id
optional

integer (int64)

links
optional

< Link > array

sequenceOrder
optional

integer (int32)

standard
optional

boolean

3.11. ApplicationTabResponseResults

Name Schema

content
optional

< ApplicationTabResponseResource > array

links
optional

< Link > array

page
optional

PageMetadata

3.12. CreateTabRequest

Name Schema

description
optional

string

display_name
optional

string

standard
optional

boolean

tab_app_mappings
optional

< AppMappingRequest > array

tab_config_data
optional

TabConfigData

3.13. Error

Name Schema

code
optional

integer (int32)

details
optional

object

3.14. ExternalConfigRequest

Name Schema

actionId
optional

integer (int64)

actionTypeId
optional

integer (int64)

data
optional

object

3.15. ExternalConfigResource

Name Description Schema

actionId
optional

integer (int64)

actionName
optional

string

actionType
optional

string

actionTypeId
optional

integer (int64)

configId
optional

integer (int64)

createdBy
optional

string

createdOn
optional

string

data
optional

object

deleted
optional

Example : false

boolean

id
optional

integer (int64)

lastModifiedOn
optional

string

links
optional

< Link > array

updatedBy
optional

string

3.16. ExternalConfigResponse

Name Description Schema

actionId
optional

integer (int64)

actionName
optional

string

actionType
optional

string

actionTypeId
optional

integer (int64)

configId
optional

integer (int64)

createdBy
optional

string

createdOn
optional

string

data
optional

object

deleted
optional

Example : false

boolean

id
optional

integer (int64)

lastModifiedOn
optional

string

updatedBy
optional

string

3.17. ExternalConfigResponsePage

Name Schema

content
optional

< ExternalConfigResponse > array

links
optional

< Link > array

page
optional

PageMetadata

3.18. ExternalConfigUpdateRequest

Name Schema

actionId
optional

integer (int64)

actionTypeId
optional

integer (int64)

data
optional

object

3.19. HttpErrorResponse

Name Schema

error
optional

Error

path
optional

string

timestamp
optional

string

3.20. InputParamterRequest

Name Schema

custom_property
optional

boolean

input_mapping_key
optional

string

input_parameter_id
optional

integer (int64)

input_parameter_value
optional

string

property_definition_id
optional

string

property_definition_initial_id
optional

string

property_definition_initial_value
optional

string

property_group_id
optional

string

Name Schema

href
optional

string

rel
optional

string

templated
optional

boolean

3.22. MessageResponse

Name Schema

message
optional

string

3.23. PageMetadata

Name Schema

number
optional

integer (int64)

size
optional

integer (int64)

totalElements
optional

integer (int64)

totalPages
optional

integer (int64)

3.24. ParameterResponse

Name Description Schema

customProperty
optional

Example : false

boolean

dataType
optional

string

id
optional

string

name
optional

string

propertyCategoryId
optional

string

propertyGroupId
optional

string

3.25. TabConfigData

Name Schema

authentication
optional

boolean

enable_seriallot
optional

boolean

external_url
optional

string

tab_input_parameters
optional

< InputParamterRequest > array

3.26. TabConfigExpressions

Type : object

3.27. TabDetailResponse

Name Schema

description
optional

string

display_name
optional

string

id
optional

integer (int64)

standard
optional

boolean

tab_app_mappings
optional

< AppMappingResponse > array

tab_config_data
optional

TabConfigData

tab_config_expressions
optional

TabConfigExpressions

3.28. TabDetailResponseResource

Name Schema

description
optional

string

display_name
optional

string

id
optional

integer (int64)

links
optional

< Link > array

standard
optional

boolean

tab_app_mappings
optional

< AppMappingResponse > array

tab_config_data
optional

TabConfigData

tab_config_expressions
optional

TabConfigExpressions

3.29. TabDetailResponseResults

Name Schema

content
optional

< TabDetailResponseResource > array

links
optional

< Link > array

page
optional

PageMetadata

3.30. UpdateTabRequest

Name Schema

description
optional

string

display_name
optional

string

tab_app_mappings
optional

< AppMappingRequest > array

tab_config_data
optional

TabConfigData

3.31. UpdateTabToggleRequest

Name Schema

enabled
optional

integer (int32)

sequenceOrder
optional

integer (int32)

tabId
optional

integer (int64)

3.32. UpdateTabToggleResponse

Name Schema

content
optional

< UpdateTabToggleRequest > array

message
optional

string

4. Security

4.1. access_token

Type : oauth2
Flow : accessCode
Token URL : https://10.181.213.73/uaa/oauth/authorize
Token URL : https://10.181.213.73/uaa/oauth/token

Name Description

default

Default oauth2 scope.

4.2. resource_owner

Type : oauth2
Flow : password
Token URL : https://10.181.213.73/uaa/oauth/token

Name Description

default

Default oauth2 scope.

4.3. implicit_grant

Type : oauth2
Flow : implicit
Token URL : https://10.181.213.73/uaa/oauth/authorize

Name Description

default

Default oauth2 scope.

4.4. client_creds

Type : oauth2
Flow : application
Token URL : https://10.181.213.73/uaa/oauth/token

Name Description

default

Default oauth2 scope.