Categories:
Aura configuration API application module
Application module description for aura-configuration-api
Introduction
The application module defines services associated with the management of applications in aura-configuration-api server. Applications are external services that consume Aura services.
All these services are defined in the applications namespace (/applications).
Servers definition
By default, the servers defined in the swagger include the base path (for v2): /aura-services/v2/configuration.
Therefore, in order to access the services, the base path and service path must be used.
Examples:
- aura-services/v2/configuration/applications/
- aura-services/v2/configuration/applications/{applicationId}
Endpoints
| Path | Method | Description |
|---|---|---|
| /applications/ | GET | Get all applications information |
| /applications/ | POST | Add a new application |
| /applications/{applicationId} | GET | Get application information using application id |
| /applications/{applicationId} | PUT | Replace application information associated to application id |
| /applications/{applicationId} | PATCH | Update some fields of application information using application id |
| /applications/{applicationId} | DELETE | Delete application information using application id |
You can read the complete documentation of each service in the aura-configuration-api swagger file.
Application model
Below are the main fields of the application model according to the swagger:
| Field | Type | Description |
|---|---|---|
| id | string | Unique identifier of the application |
| name | string | Name of the application |
| brand | string | Brand associated with the application |
| nlp | object | NLP configuration (optional) |
| models | object | Models configuration (optional) |
| metadata | object | Additional metadata (optional) |
| agents | string[] | List of agent identifiers associated with the application |
| suggestions | array | Suggestions associated with the application (optional) |
Note: The agents field is an array of strings containing the identifiers of the agents associated with the application. The agents referenced must exist in the system to be inserted. If an agent is deleted, all applications referencing it will be updated accordingly.
Example response (GET /applications/{applicationId})
{
"id": "962fedef-ee1b-470f-b460-b2a78e02bb36",
"name": "aura-sql",
"brand": "Movistar",
"agents": [
"agent-1",
"agent-2"
],
"suggestions": [
{
"id": "1",
"category": "suggestions.number-of-households-per-province-category",
"value": "suggestions.number-of-households-per-province-value"
}
]
}
Example request (POST /applications)
{
"id": "new-app-id",
"name": "new-app",
"brand": "Movistar",
"agents": ["agent-1", "agent-2"]
}
Retrieving information from applications
Retrieving only some fields in application information
It is possible to get only a specific list of fields for application information, reducing the amount of data transmitted when necessary, using the includeFields query parameter.
curl --location --request GET 'http://aura-configuration-api:8999/aura-services/v2/configuration/applications?includeFields=name,brand' \
--header 'correlator: urn:uuid:c8a604ee-29f8-7cda-2979-d2ae6189c360' \
--header 'Accept: application/json' \
--header 'Authorization: XXX'
Response example:
{
"id": "8832550f-f03c-4e18-bdbe-7c6fc7adf5ff",
"name": "app",
"brand": "Movistar",
},
{
"id": "8832550f-f03c-4e18-bdbe-7c6fc7adf5fg",
"name": "app2",
"brand": "O2",
}
Excluding fields in applications information
It is also possible to exclude applications information fields using the excludeFields query parameter.
curl --location --request GET 'http://aura-configuration-api:8999/aura-services/v2/configuration/applications?excludeFields=metadata' \
--header 'correlator: urn:uuid:c8a604ee-29f8-7cda-2979-d2ae6189c360' \
--header 'Accept: application/json' \
--header 'Authorization: APIKEY XXX'
Response example:
{
"id": "8832550f-f03c-4e18-bdbe-7c6fc7adf5ff",
"name": "app",
"disabled": false,
"brand": "Movistar",
"agents": [],
"nlp": {
"channelId": "1234"
},
"models": {
"level": "user",
"presets": ["atria-rag-gpt-4"]
}
}
Database
The complete definition of the data model can be found in applications collection section within the administration module.