Configuration Service

Download OpenAPI specification:Download

General store for tenant-specific information.

You can use the Configuration Service to manage three types of configurations:

  • Tenant configurations — applicable to all services across the tenant.
  • Client configurations — associated with particular services.
  • Global configurations — associated to all services across all tenants.

Key Features:

  • Store tenant-specific, JSON formatted information, such as redirects or custom error / information messages.

Key Benefits:

  • Easy-access store for undefined information

Tenant configurations

Manage Tenant Configurations

Retrieving configurations

Retrieves a list of configurations.


Required scopes

  • configuration.configuration_view
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

query Parameters
keys
string
Responses
200

OK

get/{tenant}/configurations
Request samples
Response samples
application/json
[
  • {},
  • {},
  • {},
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Creating configurations

Creates new configurations.


Required scopes

  • configuration.configuration_manage
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

Request Body schema: application/json
Array
key
string non-empty

Configuration's key.

object or string or Array of arrays or boolean

Client configuration's value. It can be any valid JSON object.

version
integer

Configuration's version.

secured
boolean
Default: false

Flag indicating whether the configuration should be encrypted.

Responses
201

Created

400

Bad Request

409

Conflict

post/{tenant}/configurations
Request samples
application/json
[
  • {
    },
  • {
    }
]
Response samples
application/json
[
  • {
    },
  • {
    }
]

Retrieving a configuration

Retrieves a specified configuration.


Required scopes

  • configuration.configuration_view
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

propertyKey
required
string

Desired configuration's key.

Responses
200

OK

404
get/{tenant}/configurations/{propertyKey}
Request samples
Response samples
application/json
{
  • "key": "project_lang",
  • "secured": false,
  • "value": "[{\"id\":\"en\",\"label\":\"English\",\"default\":true,\"required\":true}]",
  • "version": 2
}

Updating a configuration

Updates a specified configuration.


Required scopes

  • configuration.configuration_manage
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

propertyKey
required
string

Desired configuration's key.

Request Body schema: application/json
key
string non-empty

Configuration's key.

object or string or Array of arrays or boolean

Client configuration's value. It can be any valid JSON object.

version
integer

Configuration's version.

secured
boolean
Default: false

Flag indicating whether the configuration should be encrypted.

Responses
200

OK

400

Bad Request

409

Conflict

put/{tenant}/configurations/{propertyKey}
Request samples
application/json
{
  • "key": "project_country",
  • "secured": false,
  • "value": "AT",
  • "version": 1
}
Response samples
application/json
{
  • "key": "project_country",
  • "secured": false,
  • "value": "AT",
  • "version": 1
}

Deleting a configuration

Deletes a specified configuration.


Required scopes

  • configuration.configuration_manage
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

propertyKey
required
string

Desired configuration's key.

Responses
204

No Content

404

Not Found

delete/{tenant}/configurations/{propertyKey}
Request samples
Response samples
application/json
{
  • "details": [
    ],
  • "message": "Tenant configuration could not be found",
  • "status": 404,
  • "type": "application/json"
}

Client configurations

Manage Client Configurations

Retrieving clients

Retrieves a list of clients for a specified tenant.


Required scopes

  • configuration.configuration_view
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

Responses
200

OK

400
403
get/{tenant}/clients
Request samples
Response samples
application/json
[
  • "saas-ag.caas-indexing-service-client"
]

Retrieving client configurations

Retrieves a list of configurations for a specified client.


Required scopes

  • configuration.configuration_view
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

client
required
string

Desired client's unique identifier.

query Parameters
keys
string
Responses
200

OK

get/{tenant}/clients/{client}/configurations
Request samples
Response samples
application/json
[
  • {
    },
  • {
    }
]

Creating client configurations

Creates a new client configuration.


Required scopes

  • configuration.configuration_manage
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

client
required
string

Desired client's unique identifier.

Request Body schema: application/json
Array
id
string non-empty

Client configuration's unique identifier.

client
string non-empty

The client to which the configuration applies.

key
string non-empty

Client configuration's key.

object or string or Array of arrays or boolean

Client configuration's value. It can be any valid JSON object.

Responses
201

Created

400

Bad Request

409

Conflict

post/{tenant}/clients/{client}/configurations
Request samples
application/json
[
  • {
    }
]
Response samples
application/json
[
  • {
    }
]

Retrieving a client configuration

Retrieves a specified client configuration.


Required scopes

  • configuration.configuration_view
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

client
required
string

Desired client's unique identifier.

propertyKey
required
string

Desired configuration's key.

Responses
200

OK

404
get/{tenant}/clients/{client}/configurations/{propertyKey}
Request samples
Response samples
application/json
{
  • "_id": "saas-ag.caas-indexing-service-client_indexing_configuration",
  • "client": "saas-ag.caas-indexing-service-client",
  • "key": "indexing_configuration",
  • "value": {
    }
}

Updating a client configuration

Updates a specified client configuration.


Required scopes

  • configuration.configuration_manage
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

client
required
string

Desired client's unique identifier.

propertyKey
required
string

Desired configuration's key.

Request Body schema: application/json
id
string non-empty

Client configuration's unique identifier.

client
string non-empty

The client to which the configuration applies.

key
string non-empty

Client configuration's key.

object or string or Array of arrays or boolean

Client configuration's value. It can be any valid JSON object.

Responses
200

OK

400

Bad Request

409

Conflict

put/{tenant}/clients/{client}/configurations/{propertyKey}
Request samples
application/json
{
  • "id": "test_client_test_key",
  • "client": "test_client",
  • "key": "test_key",
  • "value": false
}
Response samples
application/json
{
  • "_id": "test_client_test_key",
  • "client": "test_client",
  • "key": "test_key",
  • "value": false
}

Deleting a client configuration

Deletes a specified client configuration.


Required scopes

  • configuration.configuration_manage
SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

client
required
string

Desired client's unique identifier.

propertyKey
required
string

Desired configuration's key.

Responses
204

No Content

400

Bad Request

404

Conflict

delete/{tenant}/clients/{client}/configurations/{propertyKey}
Request samples
Response samples
application/json
{
  • "message": "Invalid tenant supplied without proper authorization",
  • "status": 400,
  • "type": "application/json"
}

Global configurations

Read Global Configurations

Retrieving global configurations

Retrieves a list of global configurations.

SecurityOAuth2
Request
path Parameters
tenant
required
string

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

query Parameters
keys
string
Responses
200

OK

get/{tenant}/global-configurations
Request samples
Response samples
application/json
[
  • {},
  • {},
  • {},
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]