Die BPC Version 4.1 wird nicht mehr gewartet.

Sollten Sie diese BPC Version nutzen, empfehlen wir Ihnen eine Migration auf eine aktuelle Version. Die Dokumentation zur neusten BPC Version finden Sie hier. Sollten Sie Fragen haben, wenden Sie sich bitte an unseren Support.

BPC API

In most cases, a logged-in user or an API key is required to access the BPC API. The latter is recommended. Please also note the required role or permission in each case.

Audit Log API

These are the endpoints of the audit log service.

Method Endpoint

/cxf/bpc-auditlog/auditlog/log

Description

To create a new audit log entry, send a JSON message with the following structure:

{
    "level": "INFO",
    "originator": "[INUBIT]",
    "action": "TESTACTION",
    "description": "Only a test",
    "oldValues": "5",
    "newValues": "10",
    "externalReference": {
        "workflow": "update_units",
        "engine": "IS8"
    }
}

Note: 'externalReference' is optional and must be a JSON object when used.

For calls from IGUASU, the following HTTP headers are used, and their values are written to the following 'externalReference' object fields:

HTTP Header 'externalReference' field

IGUASU System ID

externalReference.system

IGUASU Instance ID

externalReference.instance

IGUASU Processor ID

externalReference.processor

IGUASU-Service-ID

externalReference.service

Returns

HTTP Status Code

  • 200: OK

  • 400: The transferred data is not valid

  • 401: Authentication could not be performed

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: AUDIT_LOG_USER

  • Right: AUDIT_LOG_CREATE_ENTRY

GET

/cxf/bpc-auditlog/auditlog/open/monitor

Description

Redirects the user to the monitor using the audit log OpenSearch index.

All provided query parameters are used to build a monitor filter on fields of the 'externalReference' object.

For IGUASU, the following query parameters can be used to access the HTTP header values from when the entry was created.

Query parameter HTTP header

system

IGUASU System ID

instance

IGUASU Instance ID

processor

IGUASU Processor ID

service

IGUASU Service ID

Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

  • 401: Authentication could not be performed

  • 404: Module instance was not found

  • 500: BPC deeplink could not be created

  • 503: BPC or instance are currently in maintenance mode

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

Authentication API

These are the authentication endpoints.

Method Endpoint

GET

/cxf/bpc-core/authentication

Description

Check if the user session is valid. This function checks for the presence of an ssoToken. If a token is found, it is verified with the identity provider. If no token is found or the verification fails, a 401 "UNAUTHORIZED" response will be returned. If the token is confirmed by the provider, a 200 OK response will be sent.

Returns

The user session as JSON.

HTTP Status Code

  • 200: OK

  • 401: Unauthorized

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

/cxf/bpc-core/authentication

Description

Terminates the current user session.

Returns

HTTP Status Code

  • 200: OK when no user flow identity provider is in use

  • 205: OK when a user flow identity provider is in use

Required Access Rights

Can be used without a user session.

/cxf/bpc-core/authentication/sessions/all

Description

Destroy all user sessions.

Returns

HTTP Status Code

  • 200: OK

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: USER_ADMIN

  • Right: USER_DELETE_SESSIONS

/cxf/bpc-core/authentication/sessions/{sessionId}

Description

Destroys a specific user session.

Path Parameter

sessionId

the non-hijackable ID of the user session to destroy

Returns

HTTP status code

  • 200: OK

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: USER_ADMIN

  • Right: USER_DELETE_SESSIONS

/cxf/bpc-core/authentication

Description

Form-based login. Credentials are forwarded to the identity provider. If the login is successful, the ssoToken is set as a cookie in the response, and the information from provider is returned as JSON.

Consumes

  • application/x-www-form-urlencoded

Returns

The user session as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

PUT

/cxf/bpc-core/authentication

Description

Form-based update of an existing session with the given tenant name.

Consumes

  • application/x-www-form-urlencoded

Form Parameter

tenantname

the name of the tenant

Returns

The user session as JSON.

HTTP status code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

PUT

/cxf/bpc-core/authentication/language/{lang}

Description

Set the provided language in the user session. When Keycloak is used as an IdP, the language is set in the Keycloak user profile (locale).

Path Parameter

lang

the language to set

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

/cxf/bpc-core/authentication/reset

Description

Forwards the provided body to the user self-service portal of the currently used identity provider.

Consumes

  • application/x-www-form-urlencoded

Returns

The response from the user self-service

HTTP Status Code

  • 200: OK

  • 500: Something is wrong with the identity provider settings

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

/cxf/bpc-core/authentication/changepassword

Description

Form-based update of the user’s password. If the IdP does not support updating user passwords, the user self-service is used.

Form parameters to provide:

  • username - the name of the user whose password is to be changed

  • oldPassword - the old password

  • newPassword - the new password

Consumes

  • application/x-www-form-urlencoded

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/authentication/{userName}/impersonate

Description

Impersonate a user. Works only when Keycloak is used as the identity provider.

Path Parameter

userName

the name of the user to impersonate

Returns

The user session as JSON.

HTTP Status Code

  • 200: OK

  • 500: No username given

  • 500: No user session provided

  • 500: Current identity provider does not support impersonation

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USER_IMPERSONATE

/cxf/bpc-core/authentication/user/info/{accessTokenType}/token

Description

Get user info using an access token. Can only be used with an OpenID Connect provider.

CURL example using 'bearer' as the access token type
curl -X POST \
    --header 'X-ApiKey: <YourApiKey>' \
    --header 'Content-Type: application/x-www-form-urlencoded' \
    --data-urlencode 'accessToken=<ValueOfTheAccessToken>'  \
    'http://localhost:8181/cxf/bpc-core/authentication/user/info/bearer/token'

Consumes

  • application/x-www-form-urlencoded

Path Parameter

accessTokenType

the type of the given access token. Can be bearer, dpop, or mac. Keycloak appears to use 'bearer'.

Form Parameter

accessToken

the user’s access token to retrieve the user’s information

Returns

The requested user info as JSON.

HTTP Status Code

  • 200: OK

  • 500: Access token type missing or not supported

  • 500: Access token missing

  • 500: Current identity provider does not support token exchange

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: USER_ADMIN

  • Right: GET_USER_INFO_BY_TOKEN

BOM API

These are the BOM endpoints. BOM stands for Bill of Materials and is an aggregation of all software dependencies that the BPC modules/bundles have. To be listed, the modules/bundles must place their BOM in the file /META-INF/bom.json.

Method Endpoint

/cxf/bpc-core/bom

Description

Forces a reload of the BOMs.

Returns

HTTP Status Code

  • 200: OK

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BOMS_ADMIN

  • Right: BOMS_RELOAD

GET

/cxf/bpc-core/bom/all

Description

Get the BOMs of all BPC bundles.

Returns

The requested BOMs. Example response:

{
  "SYMBOLIC_NAME_BUNDLE_1": BOM_FILE_CONTENT_1,
  "SYMBOLIC_NAME_BUNDLE_2": BOM_FILE_CONTENT_2,
  "SYMBOLIC_NAME_BUNDLE_n": BOM_FILE_CONTENT_n
}
  • SYMBOLIC_NAME_BUNDLE_1 etc. is the symbolic name of the BPC bundle

  • BOM_FILE_CONTENT_1 etc. is the content of the /META-INF/bom.json file

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/bom/bundles

Description

Get only the symbolic names of BPC bundles with BOMs.

Returns

The requested list. Example response:

[
  "SYMBOLIC_NAME_BUNDLE_1",
  "SYMBOLIC_NAME_BUNDLE_2",
  "SYMBOLIC_NAME_BUNDLE_n"
]

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/bom/bundle/{symbolicNameOfBundle}

Description

Get the BOM of a specific BPC bundle by its symbolic name.

Path Parameter

symbolicNameOfBundle

the symbolic name of the bundle for which to retrieve the BOM

Returns

The content of the /META-INF/bom.json file

HTTP Status Code

  • 200: OK

  • 404: Requested BOM not found

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/bom/bundle/download/{symbolicNameOfBundle}

Description

Download the BOM of a specific BPC bundle by its symbolic name.

Path Parameter

symbolicNameOfBundle

the symbolic name of the bundle for which you want to download the BOM

Returns

The content of the /META-INF/bom.json file

HTTP Status Code

  • 200: OK

  • 404: Requested BOM not found

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

Backups API

These are the backup endpoints.

Method Endpoint

GET

/cxf/bpc-core/configuration/backups

Description

Get a list of all backups/snapshots as JSON.

Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_VIEW

/cxf/bpc-core/configuration/backups/create

Description

Creates a backup/snapshot of the BPC configuration index bpc-configuration.

Returns

The backup/snapshot information as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_CREATE

/cxf/bpc-core/configuration/backups/create/{backupJobIdentifier}

Description

Creates a backup/snapshot of the indexes related to a backup job.

Path Parameter

backupJobIdentifier

the identifier of the backup job

Returns

The backup/snapshot information as JSON.

HTTP Status Code

  • 200: OK

  • 404: Backup job not found

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_CREATE

GET

/cxf/bpc-core/configuration/backups/{snapshotName}

Description

Get the data of a specific backup/snapshot.

Path Parameter

snapshotName

the name of the backup/snapshot for which to retrieve information

Returns

The requested backup/snapshot data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_VIEW

/cxf/bpc-core/configuration/backups/{snapshotName}

Description

Delete a specific backup/snapshot.

Path Parameter

snapshotName

the name of the backup/snapshot to delete

Returns

The information about the deleted backup/snapshot as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_DELETE

PUT

/cxf/bpc-core/configuration/backups/activate/{snapshotName}

Description

Restores and activates a specific backup/snapshot.

Path Parameter

snapshotName

the name of the backup/snapshot to restore and activate

Returns

Some information about the restored and activated backup/snapshot as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_ACTIVATE

PUT

/cxf/bpc-core/configuration/backups/restore/{snapshotName}

Description

Restores but does not activate a specific backup/snapshot.

Path Parameter

snapshotName

the name of the snapshot to restore

Query Parameter

index-name

to give the OpenSearch index a new name (Optional; works only when the backup contains exactly one index)

Returns

Some information about the restored backup/snapshot as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_RESTORE

GET

/cxf/bpc-core/configuration/backups/download/{snapshotName}

Description

Download the contents of a backup/snapshot.

Path Parameter

snapshotName

the name of the backup/snapshot to download

Returns

The requested data as JSON. Uses the snapshotName parameter value as the filename.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_DOWNLOAD

GET

/cxf/bpc-core/configuration/backups/export/{snapshotName}

Description

Export the content of a bpc-configuration index backup/snapshot as a GlobalConfig object.

Path Parameter

snapshotName

the name of the backup/snapshot

Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: BACKUPS_ADMIN

  • Right: BACKUPS_EXPORT

Configuration API

These are the configuration endpoints.

Method Endpoint

GET

/cxf/bpc-core/configuration

Description

Get a complete version of the BPC configuration.

It will contain all modules, instances, and their settings, but restricted to the user’s permissions.

Each module provides its own default configuration and that of its instances.

Additionally, some metadata—such as the model version and information about the bpc-configuration index used—is provided.

{
  "metadata": {
    "modelVersion": {current model version},
    "fromIndex": { settings and mappings of the bpc-configuration index }
  },
  "modules": [
    {
        "moduleId": "{id of the module}",
        "moduleName": "{name of the module}",
        "settings": [ ... ],
        "instances": [ ... ],
        "defaultConfiguration": [ ... ],
        "instancesDefaultConfiguration": [ ... ]
    },
    ...
  ]
}

Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/compact

Description

Get a compact version of the BPC configuration.

It will contain all modules, instances, and their settings, but restricted to the user’s access rights. It will return only those settings where the ` _mandatoryForFrontend ` flag is set to ` true`.

Additionally, metadata about the model version is provided.

{
  "metadata": {
    "modelVersion": {current model version}
  },
  "modules": [
    {
        "moduleId": "{id of the module}",
        "moduleName": "{name of the module}",
        "settings": [ ... ],
        "instances": [ ... ]
    },
    ...
  ]
}

Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/init

Description

Get the base BPC configuration to initialize the frontend.

Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

GET

/cxf/bpc-core/configuration/uuid/generate

Description

Generates unique IDs using "SHA-256". The result is a 256-bit UUID as a HEX string.

Query Parameter

count

the number of UUIDs to generate. Must be in the range 1–1000. Default is 1.

Returns

The requested UUIDs as a JSON array.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/apikey/generate

Description

Generates a unique API key using "SHA-256" (256-bit UUID as a HEX string) and the API key ID.

example response
{
  "apiKey": "039c969b4ec2e3d8f23cfca226c932403318d5b53e6653782f8e0e163c772e1e",
  "id": "API-34c05ef"
}

Returns

The requested data as a JSON object.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/{moduleId}/{instanceType}/newInstanceId

Description

Get a new instance ID for the provided module and module type.

Path Parameters

moduleId

the ID of the module for which a new instance ID is to be obtained

instanceType

the instance type; provide 'none' if the module does not support different types

Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/{moduleId}

Description

Get the configuration of a specific module.

The result contains the module’s settings, but is restricted to the user’s permissions.

Additionally, the default configuration for the module itself and for instances is provided.

Contains a compact list of instances with their ID, type, and name if the module is instantiable.

{
  "moduleId": "{id of the module}",
  "moduleName": "{name of the related module}",
  "settings": [ ... ],
  "instancesCompact": [ ... ],
  "defaultConfiguration": [ ... ],
  "instancesDefaultConfiguration": [ ... ]
}

Path Parameter

moduleId

the ID of the module

Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/{moduleId}/{moduleInstanceId}

Description

Get the configuration of a specific module instance.

If the configuration of an instance is requested, only the settings for which the user has access rights are returned.

{
  "moduleId": "{moduleInstanceId}",
  "moduleName": "{name of the related module}",
  "instanceType": "none|{instance type}",
  "settings": [ ... ]
}

If the configuration of a module is requested, it returns the same results as the endpoint without the moduleInstanceId path parameter.

Path Parameter

moduleId

the ID of the related module

moduleInstanceId

the ID of the module instance; can be set to 'noinstance' to retrieve the module configuration instead

Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/configuration/{moduleId}

Description

Set the module configuration provided in the body.

Consumes

  • application/json

Path Parameter

moduleId

the ID of the module to update

Query Parameter

force

true to skip settings validation; false to perform validation. The default is false.

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/configuration/{moduleId}/{moduleInstanceId}

Description

Set the module instance configuration provided in the body.

Consumes

  • application/json

Path Parameter

moduleId

the ID of the related module

moduleInstanceId

the ID of the module instance to update

Query Parameters

instanceType

the type of the module instance. Set to 'noinstance' if types are not supported by the module

force

true to skip settings validation, false to perform validation. Default is false.

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/configuration/{moduleId}/{moduleInstanceId}/settings/{settingName}

Description

Delete a single setting from a module instance. If this instance has a default value for this setting, the default will be restored.

Path Parameter

moduleId

the ID of the related module

moduleInstanceId

the ID of the related module instance

settingName

the name of the setting to delete

Returns

HTTP Status Code

  • 200: OK

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/configuration/{moduleId}/{moduleInstanceId}/settings

Description

Delete a list of settings (provided in the body) from a module instance.

Consumes

  • application/json

Path Parameters

moduleId

the ID of the module

moduleInstanceId

the ID of the module instance

Returns

HTTP status code

  • 200: OK

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/configuration/{moduleId}/{moduleInstanceId}

Description

Delete a specific module instance.

Path Parameter

moduleId

the ID of the related module

moduleInstanceId

the ID of the module instance to delete

Returns

HTTP Status Code

  • 200: OK

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/configuration/test/{moduleId}/{moduleInstanceId}

Description

Performs a connection test on a specific module instance. Additional data to be processed can be provided in the POST body as a JSON object.

Consumes

  • application/json

Path Parameters

moduleId

the ID of the related module

moduleInstanceId

the ID of the module instance to perform the connection test on

Returns

The error result as JSON; returns nothing if successful

HTTP status code

  • 200: OK

  • 404: Module not found

  • 404: Module instance not found

  • 406: Module cannot have module instances

  • 500: Connection test failed

  • 501: No suitable connection tester implementation exists

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/jsonschema/{moduleId}/{setting}

Description

Get the JSON schema to validate a JSON-based module setting.

Path Parameter

moduleId

the ID of the module

setting

the name of the setting

Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

  • 404: Module not found

  • 404: Module configuration missing

  • 404: Setting not found

  • 500: Setting without a defined JSON schema

  • 500: JSON schema defined but not found or invalid

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/configuration/jsonschema/{moduleId}/{instanceType}/{setting}

Description

Get the JSON schema to validate a JSON-based module instance setting.

Path Parameter

moduleId

the ID of the module

instanceType

the instance type. Set to 'none' when the module does not support instance types

setting

the name of the setting

Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

  • 404: Module not found or when it is a non-instantiable module

  • 404: Module configuration missing

  • 404: Setting not found

  • 500: Setting without a defined JSON schema

  • 500: JSON schema defined but not found or invalid

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

Configuration File API

These are the endpoints to set properties in the BPC-related Karaf properties file: etc/de.virtimo.bpc.core.cfg

Method Endpoint

PUT

/cxf/bpc-core/configuration/local/{propertyName}

Description

Sets a property in the local BPC-related Karaf properties file: etc/de.virtimo.bpc.core.cfg.

Required Role and Right:

  • Role : SERVER_ADMIN

  • Right : SERVER_SET_LOCAL_PROPERTY

Path Parameter

propertyName

the name of the property

Query Parameter

value

the value of the property

type

the type of the property

force

by default, only existing properties can be updated; set to true to add new ones

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

PUT

/cxf/bpc-core/configuration/server/{serverUUID}/{propertyName}

Description

Sets a property in the remote BPC-related Karaf properties file: etc/de.virtimo.bpc.core.cfg.

Path Parameter

serverUUID

the UUID of the remote BPC server

propertyName

the name of the property

Query Parameter

value

the value of the property

type

the type of the property

force

by default, only existing properties can be updated; set to true to add new ones

Returns

The response from the remote BPC.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: SERVER_ADMIN

  • Right: SERVER_SET_REMOTE_PROPERTY

Data Lock API

These are the data lock endpoints, which are closely tied to OpenSearch (responses). Please try using the storage endpoints instead.

Method Endpoint

GET

/cxf/bpc-core/datalock

Description

Get data lock items from the OpenSearch index bpc-datalock.

Query Parameters

start

first record to be read. Default is 0.

limit

number of records to read. Default is 1000.

Returns

The requested items as JSON (1:1 OpenSearch response)

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/datalock/{itemId}

Description

Get a specific data lock item from the OpenSearch index bpc-datalock.

Path Parameter

itemId

the ID of the item

Returns

The requested item as JSON (1:1 OpenSearch response)

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/datalock/{itemId}

Description

Sets the provided data for a specific item. The body data is written to the OpenSearch index bpc-datalock.

Consumes

  • application/json

Path Parameter

itemId

the ID of the item for which to set the data

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

PUT

/cxf/bpc-core/datalock/{itemId}

Description

Updates an item with the provided data in the body. The item is updated in the OpenSearch index bpc-datalock.

Consumes

  • application/json

Path Parameter

itemId

the ID of the item to update

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-core/datalock/{itemId}

Description

Deletes a specific item from the OpenSearch index bpc-datalock.

Consumes

  • application/json

Path Parameter

itemId

the ID of the item to delete

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

A logged-in user or API key is required.

Deployment API

These are the deployment endpoints.

Method Endpoint

GET

/cxf/bpc-deployment/deployment/systems

Description

Get a list of all deployment systems (= backend Connections of type 'deployment_system').

Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_GET_SYSTEMS

GET

/cxf/bpc-deployment/deployment/diff

Description

Get the diff between a source deployment system or snapshot and a target deployment system.

Query Parameters

source

the backend connection ID of the source deployment system. Not required when snapshot is used.

target

the backend connection ID of the target deployment system

snapshot

name of an OpenSearch snapshot to be used instead of a source deployment system. Not required when source is used.

Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_GET_DIFF

/cxf/bpc-deployment/deployment/diff/settings

Description

Get the diff of deployment source and target settings provided in the body content.

Body:

{
  "source": [ BPC settings, ... ],
  "target": [ BPC settings, ... ]
}

Returns

The diff as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_GET_SETTINGS_DIFF

/cxf/bpc-deployment/deployment/deploy

Description

Deploys the body content to the target system.

Consumes

  • application/json

Query Parameters

deploymentSourceId

the backend connection ID of the deployment source system

deploymentTargetId

the backend connection ID of the deployment target system

enableMaintenanceMode

true if maintenance mode should be enabled on the target system, false otherwise. The default is false.

validate

true if standard settings validation should be performed on the target system, false if it should be skipped. The default is true.

Returns

The deployment processing instructions as a JSON file to download when the deploymentTargetId is set to @@@JSON@@@, otherwise the deployment response.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_EXECUTE

/cxf/bpc-deployment/deployment/import

Description

Processes the deployment instructions provided by the body content.

Consumes

  • application/json

Query Parameter

enableMaintenanceMode

true if maintenance mode should be enabled; false otherwise. The default is false.

validate

true if standard settings validation should be performed; false if it should be skipped. The default is true.

Returns

HTTP Status Code

  • 200: Import complete

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_EXECUTE

/cxf/bpc-deployment/deployment/bundles/download

Description

To download specific bundles (JAR/WAR files) by their IDs as MIME multipart data.

Body:

[ IdOfBundle1, IdOfBundle2, ... ]

Consumes

  • application/json

Returns

The bundles as MIME multipart data

HTTP status code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_EXECUTE

GET

/cxf/bpc-deployment/deployment/bundles/download/{bundleId}

Description

To download a specific bundle (JAR/WAR files) by its ID.

Path Parameter

bundleId

the ID of the bundle to download

Returns

The bundle as a data stream

HTTP status code

  • 200: OK

  • 404: Bundle not found

  • 500: Bundle cannot be downloaded

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_EXECUTE

/cxf/bpc-deployment/deployment/bundles/import

Description

Imports the bundles provided by multipart form data.

curl example
curl -X POST \
     -H 'X-APIKey: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee' \
     -H 'X-InitiatedByUser: inubit' \
     -H 'X-InitiatedFromServerName: localhost' \
     -H 'X-InitiatedFromServerUUID: inubit-installer' \
     -F file=@test.jar \
     -F file=@test.war \
     'http://localhost:8181/cxf/bpc-deployment/deployment/bundles/import'

Consumes

  • multipart/form-data

Returns

HTTP Status Code

  • 200: Bundles imported

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_EXECUTE

/cxf/bpc-deployment/deployment/bundles/import/extjs

Description

Special endpoint to import a single bundle from ExtJS using multipart form data.

Consumes

  • multipart/form-data

Returns

ExtJS-compliant status information with the filename

HTTP Status Code

  • 200: OK

  • 500: Upload not possible

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_EXECUTE

/cxf/bpc-deployment/deployment/migrate

Description

Deployment diffs can only be performed when both systems use the same model version. This endpoint converts the model configurations provided in the content body to the model version of this installation.

Consumes

  • application/json

Returns

The migrated module configurations as JSON

HTTP status code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_GET_MIGRATED_MODULES_CONFIG

/cxf/bpc-deployment/deployment/index/{index}/copy

Description

Copy an index from one deployment system to another.

Path Parameter

index

the name of the index to copy

Query Parameters

source

the backend connection ID of the deployment source system

target

the backend connection ID of the deployment target system

blocksize

the block size used to read that number of documents from the source system at once (set too high = out of memory; too low = poor performance). Default is 2500.

deleteOnTarget

true to delete an existing index on the target system, false to fail if an index already exists. Default is false.

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_COPY_INDEX

GET

/cxf/bpc-deployment/deployment/indices

Description

Get a list of OpenSearch indices.

Returns

the index information

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_LIST_INDICES

GET

/cxf/bpc-deployment/deployment/index/{index}/info

Description

Get some information about an index to deploy.

Path Parameter

index

the actual name of the index; aliases are not allowed

Returns

The index information, including its settings and mapping

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_DOWNLOAD_INDEX

GET

/cxf/bpc-deployment/deployment/index/{index}/download

Description

Downloads the first block of data from the specified index.

Path Parameter

index

the name of the index

Query Parameter

blocksize

the block size. The default is 2500.

Returns

the requested data

HTTP status code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_DOWNLOAD_INDEX

GET

/cxf/bpc-deployment/deployment/index/{index}/download/{scrollid}

Description

Downloads the subsequent block of data from the given index.

Path Parameter

index

the name of the index

scrollid

the scroll identifier

Returns

the requested data

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_DOWNLOAD_INDEX

/cxf/bpc-deployment/deployment/index/{index}/download/{scrollid}

Description

To release a scroll identifier that is no longer in use. This helps OpenSearch free up resources much faster.

Path Parameter

index

the index name

scrollid

the scroll identifier to release

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_DOWNLOAD_INDEX

/cxf/bpc-deployment/deployment/index/{index}/prepare

Description

Prepares an index for upload. Creates it with the given settings and mapping.

Body:

{
  "settings": settings as JSON object,
  "mapping": mapping as JSON object
}

Consumes

  • application/json

Path Parameter

index

the name of the index (must be an alias)

Query Parameter

delete_existing

true to delete an existing index, false to throw an error if it already exists. The default is false.

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_UPLOAD_INDEX

/cxf/bpc-deployment/deployment/index/{index}/upload

Description

Populate an index with the uploaded data.

Body:

[
  {"id": document id 1, "source": JSON data 1},
  {"id": document id 2, "source": JSON data 2},
  ...
]

Consumes

  • application/json

Path Parameter

index

the name of the index (must be an alias)

Returns

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: DEPLOYMENT_USER

  • Right: DEPLOYMENT_UPLOAD_INDEX

Event API

These are the endpoints for BPC events.

Method Endpoint

/cxf/bpc-core/event

Description

To send a new event, send a JSON message with the following structure:

{
    "topic": "exampleTopic",
    "data": {
        "key1": "value1",
        "key2": "value2"
    },
    "recipients": {
        "users": [ ... ],
        "roles": [ "bpcadmin" ],
        "organizations": [ "virtimo" ]
    }
}

Fields

topic (required)

The topic of the event.

data (required)

The data of the event.

recipients (optional)

The recipients of the event. Users, roles, or organizations can be specified.

Consumes

  • application/json

Returns

HTTP Status Code

  • 201: Created

  • 401: Authentication could not be performed

  • 403: No access rights

  • 500: Internal server error

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: EVENT_API_ADMIN

  • Right: EVENT_API_SEND

Flow API

These are the endpoints for communicating with Flow.

Method Endpoint

GET

/cxf/bpc-flow/flow/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP GET on the given flow instance.

Path Parameter

instanceId

the ID of the flow instance

targetPath

the path to call on the Flow system

Query Parameter

targetUrl

optional URL parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated Parameter. This option will be removed in BPC 4.2. Default is false.

Returns

The response from the called Flow system

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-flow/flow/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP POST on the given flow instance.

Path Parameter

instanceId

the ID of the flow instance

targetPath

the path to call on the Flow system

Query Parameter

targetUrl

optional URL parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated Parameter. This option will be removed in BPC 4.2. The default is false.

Returns

The response from the called Flow system

Required Access Rights

A logged-in user or API key is required.

PUT

/cxf/bpc-flow/flow/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP PUT on the given flow instance.

Path Parameter

instanceId

the ID of the flow instance

targetPath

the path to call on the Flow system

Query Parameter

targetUrl

optional URL parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated Parameter. This option will be removed in BPC 4.2. The default is false.

Returns

The response from the called Flow system

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-flow/flow/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP DELETE on the given flow instance.

Path Parameter

instanceId

the ID of the flow instance

targetPath

the path to call on the Flow system

Query Parameter

targetUrl

optional URL parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated Parameter. This option will be removed in BPC 4.2. The default is false.

Returns

The response from the called Flow system

Required Access Rights

A logged-in user or API key is required.

Frontend Logging API

These are the frontend logging endpoints.

Method Endpoint

/cxf/bpc-core/frontendLogging/{sessionId}

Description

Saves the logs provided in the body to the OpenSearch index bpc-frontend-logging.

Path Parameter

sessionId

the ID of the session

Returns

HTTP Status Code

  • 200: OK

Required Access Rights

A logged-in user or API key is required.

HTTP Proxy API

These are the endpoints for proxying HTTP requests to other systems.

Method Endpoint

GET

/cxf/bpc-httpproxy/httpProxy/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP GET on the 'httpproxy' backend Connection.

Path Parameter

instanceId

the ID of the 'httpproxy' backend Connection instance to use

targetPath

the path to call on the target system

Query Parameter

targetUrl

optional URL parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated parameter. This option will be removed in BPC 4.2. Default is false.

Returns

The response from the called backend connection

HTTP Status Code

  • 200: OK

  • 404: One of the used services is not available

  • 404: The backend Connections module is not available

  • 404: The backend Connections module instance is not available

  • 500: General problem with the backend system

  • 503: Connection to backend system refused

  • 504: Connection to backend system timed out

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-httpproxy/httpProxy/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP POST on the 'httpproxy' backend Connection.

Path Parameter

instanceId

the ID of the 'httpproxy' backend Connection instance to use

targetPath

the path to call on the target system

Query Parameter

targetUrl

optional URL parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated parameter. This option will be removed in BPC 4.2. Default is false.

Returns

The response from the called backend connection

HTTP Status Code

  • 200: OK

  • 404: One of the services used is unavailable

  • 404: The backend connections module is unavailable

  • 404: The backend connections module instance is unavailable

  • 500: General problem with the backend system

  • 503: Connection to the backend system refused

  • 504: Connection to the backend system timed out

Required Access Rights

A logged-in user or API key is required.

PUT

/cxf/bpc-httpproxy/httpProxy/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP PUT on the 'httpproxy' backend Connection.

Path Parameter

instanceId

the ID of the 'httpproxy' backend Connection instance to use

targetPath

the path to call on the target system

Query Parameter

targetUrl

optional URL Parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated Parameter. This option will be removed in BPC 4.2. Default is false.

Returns

The response from the called backend connection

HTTP Status Code

  • 200: OK

  • 404: One of the used services is not available

  • 404: The backend Connections module is not available

  • 404: The backend Connections module instance is not available

  • 500: General problem with the backend system

  • 503: Connection to backend system refused

  • 504: Connection to backend system timed out

Required Access Rights

A logged-in user or API key is required.

/cxf/bpc-httpproxy/httpProxy/{instanceId}\{targetPath: (/.*)?}

Description

Perform an HTTP DELETE on the 'httpproxy' backend Connection.

Path Parameter

instanceId

the ID of the 'httpproxy' backend Connection instance to use

targetPath

the path to call on the target system

Query Parameter

targetUrl

optional URL parameter. Function equals targetPath

forceJson

if set to true, the content will be converted to JSON. Only XML can be converted at the moment.

Deprecated parameter. This option will be removed in BPC 4.2. Default is false.

Returns

The response from the called backend connection

HTTP Status Code

  • 200: OK

  • 404: One of the services used is unavailable

  • 404: The backend connections module is unavailable

  • 404: The backend connections module instance is unavailable

  • 500: General problem with the backend system

  • 503: Connection to the backend system refused

  • 504: Connection to the backend system timed out

Required Access Rights

A logged-in user or API key is required.

Identity Management API

These are the identity management endpoints. Please note that not all functions are supported by all identity providers. If a function is not supported, a UnsupportedOperationException is thrown. All calls—except for the GET methods—are logged in the audit log.

Method Endpoint

GET

/cxf/bpc-core/im/users

Description

Get a list of all users as JSON.

Returns

The requested data as JSON.

Example response
[
  {
    "id": "bpcadmin",
    "userName": "bpcadmin",
    "displayName": "bpcadmin",
    "firstName": "Timo",
    "lastName": "Virt",
    "email": "bpcadmin@example.com"
  },
  {
    "id": "of",
    "userName": "of",
    "displayName": "of",
    "firstName": "Oliver",
    "lastName": "Fürniß",
    "email": "of@virtimo.de"
  }
]

HTTP Status Code

  • 200: OK

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_READ

/cxf/bpc-core/im/users

Description

Add a user by providing the data as JSON in the body.

Example body
{
  "id": "42",
  "password": "1234567890",
  "firstName": "Hans",
  "lastName": "Schmidt",
  "email": "hans.schmidt@example.com"
}

Consumes

  • application/json

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: Mandatory password not provided

  • 500: No identity manager found or other error

  • 503: Not supported by the identity provider in use

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_ADD

PUT

/cxf/bpc-core/im/users/{userId}

Description

Update a user by providing the data as JSON in the body.

Example body
{
  "firstName": "Hans",
  "lastName": "Test",
  "email": "hans.test@example.com"
}

Consumes

  • application/json

Path Parameter

userId

the ID of the user to update

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: No identity manager found or other error

  • 503: Not supported by the identity provider in use

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

/cxf/bpc-core/im/users/{userId}

Description

Update a user’s password.

Example form
password=<new password>

Path Parameter

userId

the user’s ID

Form Parameter

password

the user’s new password

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: Mandatory user password not provided

  • 500: No identity manager found or another error

  • 503: Not supported by the identity provider used

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

/cxf/bpc-core/im/users/{userId}

Description

Delete a user.

Path Parameter

userId

the ID of the user to delete

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: No identity manager found or another error

  • 503: Not supported by the identity provider in use

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

GET

/cxf/bpc-core/im/organisations

Description

Get all organizations as a JSON array.

Returns

The requested data.

Example response
[
  "virtimo",
  "users",
  "admins"
]

HTTP Status Code

  • 200: OK

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/im/roles

Description

Get all roles as a JSON array.

Returns

The requested data.

Example response
[
  "offline_access",
  "uma_authorization",
  "uma_protection",
  "bpcadmin",
  "bpcuser"
]

HTTP Status Code

  • 200: OK

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/im/rights

Description

Get all rights as a JSON array.

Returns

The requested data.

Example response
[
  "IDENTITY_MANAGER_USER_ORGANISATIONS_READ",
  "CUSTOM_RIGHT"
]

HTTP Status Code

  • 200: OK

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

A logged-in user or API key is required.

GET

/cxf/bpc-core/im/users/{userId}/organisations

Description

Get the organizations of a user as a JSON array.

Path Parameter

userId

the user’s ID

Returns

The requested data.

Example response
[
  "virtimo"
]

HTTP Status Code

  • 200: OK

  • 500: User does not exist

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USER_ORGANISATIONS_READ

/cxf/bpc-core/im/users/{userId}/organisations

Description

Add an organization to a user by providing the data as JSON in the body.

Example body
{
  "id": "virtimo"
}

Consumes

  • application/json

Path Parameter

userId

the ID of the user

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: Mandatory organization not provided

  • 500: No identity manager found or another error

  • 503: Not supported by the identity provider used

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

/cxf/bpc-core/im/users/{userId}/organisations/{organisationName}

Description

Delete a user’s organization.

Path Parameter

userId

the ID of the user

organisationName

the name of the organization to delete

Returns

HTTP Status Code

  • 200: OK

  • 500: Required user ID not provided

  • 500: Required organization not provided

  • 500: No identity manager found or other error

  • 503: Not supported by the identity provider in use

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

GET

/cxf/bpc-core/im/users/{userId}/roles

Description

Get the roles of a user as a JSON array.

Path Parameter

userId

the user’s ID

Returns

The requested data.

Example response
[
  "EAI Developer",
  "System Administrator"
]

HTTP Status Code

  • 200: OK

  • 500: User does not exist

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USER_ROLES_READ

/cxf/bpc-core/im/users/{userId}/roles

Description

Add a role to a user by providing the data as JSON in the body.

Example body
{
  "id": "EAI Developer"
}

Consumes

  • application/json

Path Parameter

userId

the ID of the user

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: Mandatory role not provided

  • 500: No identity manager found or other error

  • 503: Not supported by the identity provider used

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

/cxf/bpc-core/im/users/{userId}/roles/{roleName}

Description

Delete a user’s role.

Consumes

  • application/json

Path Parameters

userId

the ID of the user

roleName

the name of the role to delete

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: Mandatory role not provided

  • 500: No identity manager found or another error

  • 503: Not supported by the identity provider in use

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

GET

/cxf/bpc-core/im/users/{userId}/rights

Description

Get a user’s rights as a JSON array.

Path Parameter

userId

the user’s ID

Returns

The requested data.

Example response
[
  "CUSTOM_RIGHT1",
  "CUSTOM_RIGHT2"
]

HTTP Status Code

  • 200: OK

  • 500: User does not exist

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USER_RIGHTS_READ

/cxf/bpc-core/im/users/{userId}/rights

Description

Add a right to a user by providing the data as JSON in the body.

Example body
{
  "id": "CUSTOM_RIGHT3"
}

Consumes

  • application/json

Path Parameter

userId

the ID of the user

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: Mandatory right not provided

  • 500: No identity manager found or another failure

  • 503: Not supported by the identity provider used

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

/cxf/bpc-core/im/users/{userId}/rights/{rightName}

Description

Delete a user’s right.

Consumes

  • application/json

Path Parameter

userId

the ID of the user

rightName

the name of the right to delete

Returns

HTTP Status Code

  • 200: OK

  • 500: Mandatory user ID not provided

  • 500: Mandatory right not provided

  • 500: No identity manager found or other failure

  • 503: Not supported by the identity provider in use

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USERS_UPDATE

GET

/cxf/bpc-core/im/users/{userId}

Description

Get a user’s data.

Path Parameter

userId

the user’s ID

Returns

The requested data.

Example response
{
  "id": "66",
  "userName": "of",
  "firstName": "Oliver",
  "lastName": "Fürniß",
  "displayName": "of",
  "email": "of@virtimo.de",
  "organisations": [
    "virtimo"
  ],
  "roles": [
    "bpcadmin"
  ],
  "rights": [
    "loadModule_vam",
    "loadModule_monitor",
    "loadModule_dashboard"
  ]
}

HTTP Status Code

  • 200: OK

  • 500: User does not exist

  • 500: No identity manager found or another failure

  • 503: Not supported by the used identity provider

Content-Type

  • application/json; charset=UTF-8

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: IDENTITY_MANAGER_ADMIN

  • Right: IDENTITY_MANAGER_USER_READ

Internationalization API

These are the internationalization endpoints.

Method Endpoint

GET

/cxf/bpc-core/i18n/languages

Description

Get the languages used by the translations.

Query Parameter

only_keys

true to get only the keys, false to get a more detailed list. Default is false.

Returns

The languages as JSON. Example response when only_keys=false:

[
    {
        "nativeName": "Deutsch",
        "name": "Deutsch",
        "id": "de"
    },
    {
        "nativeName": "English",
        "name": "Englisch",
        "id": "en"
    },
    {
        "nativeName": "français",
        "name": "Französisch",
        "id": "fr"
    }
]

Example response when only_keys=true:

[
  "de", "en", "fr"
]

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

GET

/cxf/bpc-core/i18n/languages/all

Description

Get all supported languages.

Query Parameter

only_keys

true to get only the keys, false to get a more detailed list. Default is false.

Returns

The languages as JSON. Example response when only_keys=false:

[
    {
        "nativeName": "Deutsch",
        "name": "Deutsch",
        "id": "de"
    },
    {
        "nativeName": "English",
        "name": "Englisch",
        "id": "en"
    },
    ...
]

Example response when only_keys=true:

[
  "de", "en", ...
]

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

/cxf/bpc-core/i18n/translations

Description

Forces a reload of the translations.

Returns

HTTP Status Code

  • 200: OK

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: TRANSLATIONS_ADMIN

  • Right: TRANSLATIONS_RELOAD

GET

/cxf/bpc-core/i18n/translations/{lang}

Description

Get all translations for a specific language. This is a collection of the translations found in all modules/bundles and those from our custom translations setting Core_CustomTranslations. If a module/bundle does not provide translations in the requested language, the translations for the default language set by the 'Core_TranslationsFallbackLanguage' setting are used.

Path Parameter

lang

the language for which to retrieve translations. Such as 'de', 'en', 'fr', etc.

Query Parameter

ict

true to ignore translations from the custom translations setting, false to include them. Default is false.

fallback

true to return entries in the default language as a fallback when a translation key is missing in the requested language, false to return only the entries that exist in the requested language. Default is true.

Returns

A JSON object containing the translations. The keys are sorted in ascending order.

HTTP Status Code

  • 200: OK

  • 404: Language not found

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

GET

/cxf/bpc-core/i18n/language/{lang}/valid

Description

Checks if the provided language is known to the backend. Returns the default/fallback language if not.

Path Parameter

lang

the language to check for

Returns

The given language if valid, otherwise the default language.

Example response

{
  "language": "en"
}

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

Required Access Rights

Can be used without a user session.

Log Service API

These are the endpoints of the log service.

Method Endpoint

GET

/cxf/bpc-logservice/log/instances

Description

Get a compact overview of the available log service instances.

Only the following data is returned for each instance:

  • module instance ID

  • name

  • description

  • flag indicating whether the instance is in maintenance mode

Returns

The log service instances as JSON.

HTTP Status Code

  • 200: OK

  • 401: Authentication could not be performed

  • 503: BPC is currently in maintenance mode

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOG_SERVICE_USER

  • Right: LOG_SERVICE_CONFIG_GET_INSTANCES

GET

/cxf/bpc-logservice/log/instances/{instanceIdOrName}

Description

Get the current configuration of the log service instance.

Path Parameter

instanceIdOrName

This can be either the ID or a unique name of the module instance

Returns

The requested configuration as JSON.

HTTP Status Code

  • 200: OK

  • 401: Authentication could not be performed

  • 404: Module instance was not found

  • 503: BPC is currently in maintenance mode

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOG_SERVICE_USER

  • Right: LOG_SERVICE_CONFIG_GET_INSTANCE

GET

/cxf/bpc-logservice/log/{instanceIdOrName}

Description

Retrieves the data for a log service instance.

Path Parameter

instanceIdOrName

This can be either the ID or a unique name of the module instance

Query Parameter

timezoneOffset

time zone offset, such as GMT+2 (optional). Used if a date field is accessed in the parentFilter with a range operator such as "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

timezoneName

timezone name like Europe/Berlin (optional). Is used if a date field is accessed in the parentFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

start

first record to be read (optional, default = 0)

limit

number of records to read (optional, default = 100, max. 10.000)

parentQuery

simple search (optional). Example city:berlin. Additional information of the Lucene Query String Syntax.

parentFilter

complex filter format like done from the monitor endpoint (optional). Example: [{"property":"processid","operator":"gte","value":1000,"source":"raw","invert":false}]

parentSort

determination by which field the parent entries should be sorted (optional, default = parent key descending). Format: fieldname|[ASC|DESC]. Example: processid|DESC. Multiple sorting instructions can be specified comma separated.

childSort

determination by which field the child entries should be sorted (optional, default = child key ascending). Format: fieldname|[ASC|DESC]. Example: childid|ASC. Multiple sorting instructions can be specified comma separated.

addChilds

should the response contain the log service child entries?. Default is true.

Returns

The requested data as JSON.

HTTP Status Code

  • 200 : OK

  • 401 : Authentication could not be performed

  • 404 : Module instance was not found

  • 503 : BPC or instance are currently in maintenance mode

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role : LOG_SERVICE_USER

  • Right : LOG_SERVICE_READ_DATA

GET

/cxf/bpc-logservice/log/{instanceIdOrName}/{parentId}

Description

Get the data of a log service entry with its child entries.

Path Parameter

instanceIdOrName

this can be either the ID or a unique name of the module instance

parentId

the ID of the requested log service entry

Query Parameter

timezoneOffset

timezone offset like GMT+2 (optional). Is used if a date field is accessed in the childFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

timezoneName

timezone name like Europe/Berlin (optional). Is used if a date field is accessed in the childFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

childQuery

simple search (optional). Example city:berlin. Additional information of the Lucene Query String Syntax.

childFilter

complex filter format like done from the monitor endpoint (optional). Example: [{"property":"processid","operator":"gte","value":1000,"source":"raw","invert":false}]

Returns

The requested data as JSON.

HTTP Status Code

  • 200 : OK

  • 401 : Authentication could not be performed

  • 404 : Module instance was not found

  • 503 : BPC or instance are currently in maintenance mode

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role : LOG_SERVICE_USER

  • Right : LOG_SERVICE_READ_DATA

GET

/cxf/bpc-logservice/log/{instanceIdOrName}/{parentId}/{childId}

Description

Get the data of a log service child entry.

Path Parameter

instanceIdOrName

this can be either the ID or a unique name of the module instance

parentId

the ID of the requested log service entry

childId

the ID of the requested child entry

Returns

The requested data as JSON.

HTTP Status Code

  • 200 : OK

  • 401 : Authentication could not be performed

  • 404 : Module instance was not found

  • 503 : BPC or instance are currently in maintenance mode

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role : LOG_SERVICE_USER

  • Right : LOG_SERVICE_READ_DATA

/cxf/bpc-logservice/log/{instanceIdOrName}

Description

Writes the data provided in the body to OpenSearch and/or the database.

For calls from IGUASU the following HTTP headers are used and their values written to the following 'externalReference' object fields of all 'parent' related documents:

HTTP Header 'externalReference' field

IGUASU-System-ID

externalReference.system

IGUASU-Instance-ID

externalReference.instance

IGUASU-Processor-ID

externalReference.processor

IGUASU-Service-ID

externalReference.service

Consumes

  • application/json

Path Parameter

instanceIdOrName

this can be either the ID or a unique name of the module instance

Query Parameter

async

'true' to perform the log asynchronously. 'false' to perform synchronously. Default is false.

Returns

HTTP Status Code

  • 200 : Data has been written

  • 400 : None or invalid data to log given

  • 401 : Authentication could not be performed

  • 404 : Module instance was not found

  • 500 : Failed to write the data

  • 503 : Maintenance mode is active or OpenSearch and database are not activated

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role : LOG_SERVICE_USER

  • Right : LOG_SERVICE_WRITE_DATA

/cxf/bpc-logservice/log/{instanceIdOrName}/{parentId}

Description

Deletes log service entries and their child entries from OpenSearch and the database. Attention: When you use 'childQuery' and/or 'childFilter' only those children get deleted, not the parent itself.

Path Parameter

instanceIdOrName

this can be either the ID or a unique name of the module instance

parentId

the ID of the log service entry to delete, multiple entries can be provided and must be separated by comma

Query Parameter

timezoneOffset

timezone offset like GMT+2 (optional). Is used if a date field is accessed in the childFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

timezoneName

timezone name like Europe/Berlin (optional). Is used if a date field is accessed in the childFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

childQuery

simple search (optional). Example city:berlin. Additional information of the Lucene Query String Syntax.

childFilter

complex filter format like done from the monitor endpoint (optional). Example: [{"property":"processid","operator":"gte","value":1000,"source":"raw","invert":false}]

Returns

HTTP Status Code

  • 200 : Data has been deleted

  • 401 : Authentication could not be performed

  • 404 : Module instance was not found

  • 500 : Delete failed

  • 503 : Maintenance mode is active or OpenSearch and database are not activated

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role : LOG_SERVICE_USER

  • Right : LOG_SERVICE_DELETE_DATA

/cxf/bpc-logservice/log/{instanceIdOrName}/{parentId}/{childId}

Description

Deletes log service child entries from OpenSearch and the database.

Path Parameter

instanceIdOrName

this can be either the ID or a unique name of the module instance

parentId

the ID of the log service entry to delete the child entries from

childId

the ID of the child entry to delete, multiple entries can be provided and must be separated by comma

Returns

HTTP Status Code

  • 200 : Data has been deleted

  • 401 : Authentication could not be performed

  • 404 : Module instance was not found

  • 500 : Delete failed

  • 503 : Maintenance mode is active or OpenSearch and database are not activated

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role : LOG_SERVICE_USER

  • Right : LOG_SERVICE_DELETE_DATA

/cxf/bpc-logservice/log/{instanceIdOrName}

Description

Deletes log service entries and their child entries from OpenSearch by query. Deletion from database is not supported.

Consumes

  • application/json

Path Parameter

instanceIdOrName

this can be either the ID or a unique name of the module instance

Query Parameter

timezoneOffset

timezone offset like GMT+2 (optional). Is used if a date field is accessed in the parentFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

timezoneName

timezone name like Europe/Berlin (optional). Is used if a date field is accessed in the parentFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

parentQuery

simple search (optional). Example city:berlin. Additional information of the Lucene Query String Syntax.

parentFilter

complex filter format like done from the monitor endpoint (optional). Example: [{"property":"processid","operator":"gte","value":1000,"source":"raw","invert":false}]

Returns

HTTP Status Code

  • 200 : Data has been deleted

  • 401 : Authentication could not be performed

  • 404 : Module instance was not found

  • 500 : Delete failed

  • 503 : Maintenance mode is active or OpenSearch and database are not activated

Content-Type

  • application/json

Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role : LOG_SERVICE_USER

  • Right : LOG_SERVICE_DELETE_DATA

/cxf/bpc-logservice/log/{instanceIdOrName}/children

Description

Deletes only log service child entries from OpenSearch by query. Deletion from database is not supported.

Consumes

  • application/json

Path Parameter

instanceIdOrName

this can be either the ID or a unique name of the module instance

Query Parameter

timezoneOffset

timezone offset like GMT+2 (optional). Is used if a date field is accessed in the childFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

timezoneName

timezone name like Europe/Berlin (optional). Is used if a date field is accessed in the childFilter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. <INLINE_CODE_179/> is used before <INLINE_CODE_180/> if both are set.<NL/><INLINE_CODE_181/>:: simple search (optional). Example <INLINE_CODE_182/>. Additional information on the <URL_4>Lucene Query String Syntax</URL_4>.<NL/><INLINE_CODE_183/>:: complex filter format similar to that used by the monitor endpoint (optional). Example: <INLINE_CODE_184/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_185/> : Data has been deleted<NL/>- <INLINE_CODE_186/> : Authentication could not be performed<NL/>- <INLINE_CODE_187/> : Module instance was not found<NL/>- <INLINE_CODE_188/> : Delete failed<NL/>- <INLINE_CODE_189/> : Maintenance mode is active or OpenSearch and the database are not activated<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_190/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_9/><NL/><NL/>- Role: <INLINE_CODE_191/><NL/>- Right: <INLINE_CODE_192/><NL/><NL/><NL/>// ================================================================================================<NL/><NL/><BLOCK_TITLE/>5+<PIPE/> <ADMONITION_10> <INLINE_CODE_193/></ADMONITION_10><PIPE/> <INLINE_CODE_194/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Description</BOLD></BOLD><NL/><NL/>Deletes/drops the parent and child indexes of a log service instance.<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Path Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_195/>:: this can be either the ID or a unique name of the module instance<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_196/> : Indexes deleted<NL/>- <INLINE_CODE_197/> : Authentication failed<NL/>- <INLINE_CODE_198/> : Module instance not found<NL/>- <INLINE_CODE_199/> : Delete failed<NL/>- <INLINE_CODE_200/> : Maintenance mode is active or OpenSearch and the database are not enabled<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_201/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_10/><NL/><NL/>- Role : <INLINE_CODE_202/><NL/>- Right: <INLINE_CODE_203/><NL/><NL/><NL/>// ================================================================================================<NL/><NL/><BLOCK_TITLE/>5+<PIPE/> <ADMONITION_11> <INLINE_CODE_204/></ADMONITION_11><PIPE/> <INLINE_CODE_205/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Description</BOLD></BOLD><NL/><NL/>Creates a BPC deeplink to redirect the caller to the admin page of a log service instance.<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Path Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_206/>:: This can be either the ID or a unique name of the log service module instance<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>The requested data as JSON.<NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_207/> : OK<NL/>- <INLINE_CODE_208/> : Authentication could not be performed<NL/>- <INLINE_CODE_209/> : Module instance was not found<NL/>- <INLINE_CODE_210/> : BPC or instance are currently in maintenance mode<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_211/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_11/><NL/><NL/><NL/>// ================================================================================================<NL/><NL/><BLOCK_TITLE/>6+<PIPE/> <ADMONITION_12> <INLINE_CODE_212/></ADMONITION_12><PIPE/> <INLINE_CODE_213/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Description</BOLD></BOLD><NL/><NL/>Redirects the user to the monitor using the OpenSearch indices of the log service instance.<NL/><NL/>All provided query parameters are used to build a monitor filter on fields of the 'externalReference' object.<NL/><NL/>For IGUASU, the following query parameters can be used to access the HTTP header values from when the entry was created.<NL/><NL/>!===<NL/>!Query parameter !HTTP header<NL/><NL/>!system !IGUASU-System-ID<NL/>!instance !IGUASU-Instance-ID<NL/>!processor !IGUASU-Processor-ID<NL/>!service !IGUASU-Service-ID<NL/>!===<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Path Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_214/>:: this can be either the ID or a unique name of the log service module instance<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Query Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_215/>:: optional URL parameter. Text or language key for the window title<NL/><INLINE_CODE_216/>:: optional URL parameter. Text or language key for the prompt text<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>The requested data as JSON.<NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_217/> : OK<NL/>- <INLINE_CODE_218/> : Authentication could not be performed<NL/>- <INLINE_CODE_219/> : Module instance was not found<NL/>- <INLINE_CODE_220/> : BPC deep link could not be created<NL/>- <INLINE_CODE_221/> : BPC or instance is currently in maintenance mode<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_222/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_12/><NL/><NL/><NL/><TABLE/><NL/>

Loggers API

These are the endpoints to retrieve all loggers along with their log levels and to set the log level.

Loggers are defined in the file: [karaf]/etc/org.ops4j.pax.logging.cfg

|Method |Endpoint

4+| GET| /cxf/bpc-core/loggers/all

1+a|Description

Get all configured loggers with their currently set log level.

1+a|Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOGGERS_ADMIN

  • Right: LOGGERS_LIST_ALL

4+| GET| /cxf/bpc-core/loggers/levels/valid

1+a|Description

Get a list of valid log levels.

1+a|Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOGGERS_ADMIN

  • Right: LOGGERS_LIST_VALID_LEVELS

5+| POST| /cxf/bpc-core/loggers/level

1+a|Description

Set the log level for a specific logger.

1+a|Form Parameters

logger

the name of the logger for which to set the log level

level

the log level to set. Such as INFO, WARN, ERROR, …​

1+a|Returns

HTTP status code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOGGERS_ADMIN

  • Right: LOGGERS_SET_LEVEL

[#lookup_joins_api] == Lookup Joins API These are the lookup joins endpoints.

[cols="10a,90a"]

|Method |Endpoint

4+| POST| /cxf/bpc-core/configuration/lookupjoins/refresh

1+a|Description

Refresh the lookup joins data for all replication jobs and log services-related indexes.

1+a|Returns

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOOKUP_JOINS_ADMIN

  • Right: LOOKUP_JOINS_REFRESH_ALL

5+| POST| /cxf/bpc-core/configuration/lookupjoins/refresh/replicationjob/{replicationJobId}

1+a|Description

Refresh the lookup joins data of an index associated with a replication job.

1+a|Path Parameter

replicationJobId

the ID of the replication job

1+a|Returns

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOOKUP_JOINS_ADMIN

  • Right: LOOKUP_JOINS_REFRESH

5+| POST| /cxf/bpc-core/configuration/lookupjoins/refresh/logservice/{logServiceId}

1+a|Description

Refresh the lookup joins data of a log service-related index.

1+a|Path Parameter

logServiceId

the ID of the log service

1+a|Returns

HTTP status code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOOKUP_JOINS_ADMIN

  • Right: LOOKUP_JOINS_REFRESH

4+| GET| /cxf/bpc-core/configuration/lookupjoins/clearcaches

1+a|Description

Clears the internally used lookup joins caches.

1+a|Returns

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: LOOKUP_JOINS_ADMIN

  • Right: LOOKUP_JOINS_CLEAR_CACHE

[#notification_api] == Notification API These are the notification endpoints.

[cols="10a,90a"]

|Method |Endpoint

5+| POST| /cxf/bpc-core/notification

1+a|Description

To add a notification, send a JSON message with the following structure:

Minimal example
{
  "subject": "Replication problem",
  "message": "The database 'postgresql' is not reachable",
  "recipients": [ "bpcadmin" ],
  "recipientsType": "role"
}
More complex example
{
    "priority": 10,
    "subject": "API expires soon",
    "message": "API Key API-39e889a expires soon. Please contact your administrator.",
    "recipients": [ "bpcadmin" ],
    "recipientsType": "role",
    "icon": "fa-file-certificate",
    "type": "link",
    "typeSpecificData": {
        "targetModule": "_core",
        "route" : ["_core", "apiKeys", "api", "API-39e889a"]
    }
}

Fields

id (optional)

ID of the notification. A random UUID is set if not provided.

priority (optional)

Delivery priority of the notification. Can be one of the following values: 0 (Silent), 5 (Toast), 10 (Popup). 5 is used if not provided.

subject (required)

The subject of the notification.

message (optional)

The message of the notification.

recipients (required)

The recipients of the notification. Depends on the used recipientsType.

recipientsType (required)

The recipient type of the notification. Can be one of the following values: user, role, or organisation.

originator (optional)

The originator of the notification. The login name of the user session is used if not specified.

icon (optional)

The Font Awesome icon to be used when displaying the notification.

type (optional)

The type of the notification. The type 'info' is used if not specified. Other options include 'warn', 'error', 'link', etc. Depending on the type, the notification is displayed accordingly in the GUI (see also Notification Types and Display in the Interface).

typeSpecificData (optional)

Additional type-specific data for the notification.

1+a|Consumes

  • application/json

1+a|Returns

The added notification as JSON. Also contains the 'date' and 'version' fields, which are automatically set or updated.

HTTP Status Code

  • 200: OK

  • 404: Required Service not found

  • 500: Unexpected backend error

  • 503: Maintenance mode is active

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: NOTIFICATION_ADMIN

  • Right: NOTIFICATION_ADD

6+| PUT| /cxf/bpc-core/notification/{notificationId}

1+a|Description

To update a notification, send a JSON message with the following structure:

Minimal example
{
  "subject": "Replication problem",
  "message": "The database 'postgresql' is not reachable",
  "recipients": [ "bpcadmin" ],
  "recipientsType": "role"
}
More complex example
{
    "priority": 10,
    "subject": "API expires soon",
    "message": "API Key API-39e889a expires soon. Please contact your administrator.",
    "recipients": [ "bpcadmin" ],
    "recipientsType": "role",
    "icon": "fa-file-certificate",
    "type": "link",
    "typeSpecificData": {
        "targetModule": "_core",
        "route" : ["_core", "apiKeys", "api", "API-39e889a"]
    }
}

Fields

priority (optional)

Delivery priority of the notification. Can be one of the following values: 0 (Silent), 5 (Toast), 10 (Popup). 5 is used if not specified.

subject (required)

The subject of the notification.

message (optional)

The message of the notification.

recipients (required)

The recipients of the notification. Depends on the used recipientsType.

recipientsType (required)

The recipient type of the notification. Can be one of the following values: user, role or organisation.

originator (optional)

The originator of the notification. If not specified, the login name of the user session is used.

icon (optional)

The Font Awesome icon to be used when displaying the notification.

type (optional)

The type of the notification. The type 'info' is used if not specified. Other options include 'warn', 'error', 'link', etc. Depending on the type, the notification is displayed accordingly in the GUI (see also Notification Types and Display in the Interface).

typeSpecificData (optional)

Additional type-specific data for the notification.

1+a|Consumes

  • application/json

1+a|Path Parameter

notificationId

the ID of the notification to update

1+a|Returns

The updated notification as JSON. Also contains the 'date' and 'version' fields, which are automatically set or updated.

HTTP Status Code

  • 200: OK

  • 404: Required Service not found

  • 500: Unexpected backend error

  • 503: Maintenance mode is active

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: NOTIFICATION_ADMIN

  • Right: NOTIFICATION_UPDATE

5+| DELETE| /cxf/bpc-core/notification/{notificationId}

1+a|Description

Delete a specific notification.

1+a|Path Parameter

notificationId

the ID of the notification to delete

1+a|Returns

The deleted notification as JSON.

HTTP Status Code

  • 200: OK

  • 404: Required service was not found

  • 404: Requested notification was not found

  • 500: Unexpected backend error

  • 503: Maintenance mode is active

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: NOTIFICATION_ADMIN

  • Right: NOTIFICATION_DELETE

5+| GET| /cxf/bpc-core/notification/{notificationId}

1+a|Description

Get the data of a notification.

1+a|Path Parameter

notificationId

the ID of the notification for which to retrieve data

1+a|Returns

The data of the requested notification as JSON.

HTTP Status Code

  • 200: OK

  • 404: Required Service was not found

  • 404: Requested notification was not found or no access rights

  • 500: Unexpected backend error

  • 503: Maintenance mode is active

Content-Type

  • application/json

1+a|Required Access Rights

A logged-in user or API key is required.

5+| GET| /cxf/bpc-core/notification

1+a|Description

Get the notification of the requesting user.

1+a|Query Parameters

start

Paging start parameter. Default is 0.

limit

Number of notifications to retrieve. Default is 1000.

1+a|Returns

The user’s requested notifications as JSON.

HTTP Status Code

  • 200: OK

  • 404: The requested service was not found

  • 500: Unexpected backend error

  • 503: Maintenance mode is active

Content-Type

  • application/json

1+a|Required Access Rights

A logged-in user or API key is required.

[#opensearch_api] == OpenSearch API These are the OpenSearch endpoints.

[cols="10a,90a"]

|Method |Endpoint

4+| GET| /cxf/bpc-core/opensearch/indices

1+a|Description

Get a list of all OpenSearch indices.

1+a|Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: OPENSEARCH_ADMIN

  • Right: OPENSEARCH_LIST_INDICES

4+| GET| /cxf/bpc-core/opensearch/indices/compact

1+a|Description

Get a compact list of OpenSearch indices. Can be used, for example, in a combo box.

1+a|Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

A logged-in user or API key is required.

5+| GET| /cxf/bpc-core/opensearch/indices/mapping/{indexName}

1+a|Description

Get the settings and mappings of an OpenSearch index.

1+a|Path Parameter

indexName

the name of the index

1+a|Returns

The requested data as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: OPENSEARCH_ADMIN

  • Right: OPENSEARCH_GET_MAPPING

5+| DELETE| /cxf/bpc-core/opensearch/indices/operations/{indexName}

1+a|Description

Delete an OpenSearch index.

1+a|Path Parameter

indexName

the name of the index to delete

1+a|Returns

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: OPENSEARCH_ADMIN

  • Right: OPENSEARCH_DELETE_INDEX

6+| GET| /cxf/bpc-core/opensearch/indices/reindex/{indexName}

1+a|Description

Get information on what a reindex action would do with the index settings and mappings.

1+a|Path Parameter

indexName

the name of the index

1+a|Query Parameter

copyIndexMapping

true to copy the index mapping; otherwise, false. The default is true.

copyMetaData

true to copy the metadata; otherwise, false. The default is true.

1+a|Returns

The old and new index settings and mappings as JSON

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: OPENSEARCH_ADMIN

  • Right: OPENSEARCH_REINDEX

6+| POST| /cxf/bpc-core/opensearch/indices/reindex/{indexName}

1+a|Description

Perform a reindex action.

1+a|Path Parameter

indexName

the name of the index to reindex

1+a|Query Parameter

copyIndexMapping

true to copy the index mapping; otherwise, false. The default is true.

copyMetaData

true to copy the metadata; otherwise, false. The default is true.

deleteSourceIndexAfterwards

true to delete the source index afterward; false to close it instead. The default is false.

1+a|Returns

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: OPENSEARCH_ADMIN

  • Right: OPENSEARCH_REINDEX

[#performance_measurement_api] == Performance Measurement API These are the performance measurement endpoints.

[cols="10a,90a"]

|Method |Endpoint

5+| POST| /cxf/bpc-core/performance/{sessionId}

1+a|Description

Saves the measurements provided in the body to the OpenSearch index bpc-performance.

1+a|Path Parameter

sessionId

the ID of the session

1+a|Returns

HTTP Status Code

  • 204: No content

1+a|Required Access Rights

A logged-in user or API key is required.

[#replication_api] == Replication API These are the replication endpoints.

[cols="10a,90a"]

|Method |Endpoint

5+| GET| /cxf/bpc-core/replication/lastupdatetimestamp/{replicationJobId}

1+a|Description

Get the last update timestamp of a replication job.

1+a|Path Parameter

replicationJobId

the ID of the replication job

1+a|Returns

The requested last update timestamp.

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: REPLICATION_ADMIN

  • Right: REPLICATION_GET_LAST_UPDATE_TIMESTAMP_ON_RESTART

5+| PUT| /cxf/bpc-core/replication/{replicationJobId}/restart

1+a|Description

Restarts a replication job.

1+a|Path Parameter

replicationJobId

the ID of the replication job

1+a|Returns

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: REPLICATION_ADMIN

  • Right: REPLICATION_JOB_RESTART

5+| PUT| /cxf/bpc-core/replication/{replicationJobId}/start

1+a|Description

Forced start of a replication job.

1+a|Path Parameter

replicationJobId

the ID of the replication job

1+a|Returns

HTTP Status Code

  • 200: OK

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: REPLICATION_ADMIN

  • Right: REPLICATION_JOB_FORCED_START

[#server_api] == Server API These are the BPC server endpoints. Please ensure that every BPC server in the cluster uses a unique UUID. This is configured by setting ` de.virtimo.bpc.core.karaf.uuid , which can be found in the configuration file ` `[karaf]/etc/de.virtimo.bpc.core.cfg`.

[cols="10a,90a"]

|Method |Endpoint

4+| GET| /cxf/bpc-core/server/list

1+a|Description

Get the UUIDs of the BPC servers in the cluster.

1+a|Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: SERVER_ADMIN

  • Right: SERVER_GET_UUIDS

5+| GET| /cxf/bpc-core/server/{uuid}/info

1+a|Description

Get detailed information about a BPC server in the cluster.

1+a|Path Parameter

uuid

the UUID of the BPC server for which to retrieve information

1+a|Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

  • 404: Requested server not found

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Role: SERVER_ADMIN

  • Right: SERVER_GET_INFO

[#status_api] == Status API These are the status endpoints.

[cols="10a,90a"]

|Method |Endpoint

4+| GET| /cxf/bpc-core/status

1+a|Description

Get the status of the local BPC server.

1+a|Returns

Depending on the user session, more or less data is returned as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

Can be used without a user session.

5+| GET| /cxf/bpc-core/status/server/{serverUUID}

1+a|Description

Get the status of a remote BPC server.

1+a|Path Parameter

serverUUID

the UUID of the BPC server for which to retrieve the status

1+a|Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

Can be used without a user session.

4+| GET| /cxf/bpc-core/status/health

1+a|Description

Get the following health information in a single call:

  • status of loaded bundles

  • maintenance mode status

  • OpenSearch status

1+a|Returns

HTTP Status Code

  • 200: When all 3 health statuses are fine

  • 503: When not all 3 health statuses are fine

1+a|Required Access Rights

Can be used without a user session.

4+| GET| /cxf/bpc-core/status/bpc

1+a|Description

Get the status of all loaded BPC modules/bundles.

1+a|Returns

HTTP Status Code

  • 200: Karaf is running and none of the BPC modules are in the 'Resolved' or 'Failure' state

  • 503: At least one BPC module is in the 'Resolved' or 'Failure' state

1+a|Required Access Rights

Can be used without a user session.

4+| GET| /cxf/bpc-core/status/maintenance

1+a|Description

Get the maintenance mode status.

1+a|Returns

HTTP Status Code

  • 200: BPC is not in maintenance mode

  • 503: BPC is in maintenance mode

1+a|Required Access Rights

Can be used without a user session.

4+| GET| /cxf/bpc-core/status/opensearch

1+a|Description

Get the OpenSearch status.

1+a|Returns

HTTP Status Code

  • 200: OK

  • 503: No connection to OpenSearch

  • 503: No nodes available

  • 503: Cluster health status is 'red'

1+a|Required Access Rights

Can be used without a user session.

4+| GET| /cxf/bpc-core/status/sessions

1+a|Description

Get a list of all sessions.

1+a|Returns

The requested data as JSON.

HTTP Status Code

  • 200: OK

Content-Type

  • application/json

1+a|Required Access Rights

The logged-in user or API key must have either the following role or permission.

  • Right: getSessionStatus

4+| GET| /cxf/bpc-core/status/clustermaster

1+a|Description

To check if this is the BPC Leader server.

1+a|Returns

HTTP Status Code

  • 200: BPC is the Leader server

  • 503: BPC is not the Leader server

1+a|Required Access Rights

Can be used without a user session.

[#storage_api] == Storage API These are the storage endpoints.

[cols="10a,90a"]

|Method |Endpoint

6+| GET| /cxf/bpc-core/storage/store/{storeId}

1+a|Description

Get store items from the OpenSearch index bpc-store-<storeId>. Returns an empty response when the store does not exist.

1+a|Path Parameter

storeId

the ID of the store from which to retrieve items

1+a|Query Parameter

timezoneOffset

time zone offset, such as GMT+2 (optional). Used when a date field is accessed in the filter with a range operator such as "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. timezoneName is used before timezoneOffset if both are set.

timezoneName

timezone name like Europe/Berlin (optional). Is used if a date field is accessed in the filter with a range operator like "gt", "gte", "lt", "lte", ">", ">=", ",<,", ",<,=". UTC is the default. <INLINE_CODE_12/> is used before <INLINE_CODE_13/> if both are set.<NL/><INLINE_CODE_14/>:: first record to be read (optional, default = 0). Default is <INLINE_CODE_15/>.<NL/><INLINE_CODE_16/>:: number of records to read (optional, default = 1000, max. 10,000). The default is <INLINE_CODE_17/>.<NL/><INLINE_CODE_18/>:: simple search (optional). Example: <INLINE_CODE_19/>. Additional information on the <URL_0>Lucene Query String Syntax</URL_0>.<NL/><INLINE_CODE_20/>:: complex filter format as used by the monitor endpoint (optional). Example: <INLINE_CODE_21/><NL/><INLINE_CODE_22/>:: specification of the field by which the entries should be sorted (optional). Format: fieldname\<PIPE/>[ASC\<PIPE/>DESC]. Example: <INLINE_CODE_23/>. Multiple sorting instructions can be specified, separated by commas.<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>The requested store items as JSON<NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_24/> : OK<NL/>- <INLINE_CODE_25/> : OpenSearch Service not found<NL/>- <INLINE_CODE_26/> : The provided JSON could not be parsed<NL/>- <INLINE_CODE_27/> : Something went wrong while accessing OpenSearch<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_28/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_0/><NL/><NL/><NL/>// ================================================================================================<NL/><NL/><BLOCK_TITLE/>5+<PIPE/> <ADMONITION_1> <INLINE_CODE_29/></ADMONITION_1><PIPE/> <INLINE_CODE_30/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Description</BOLD></BOLD><NL/><NL/>Retrieve a specific store item from the OpenSearch index <INLINE_CODE_31/>.<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Path Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_32/>:: the ID of the store to retrieve data from<NL/><INLINE_CODE_33/>:: the ID of the item<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>The requested store item as JSON<NL/><NL/>HTTP status code<NL/><NL/>- <INLINE_CODE_34/> : OK<NL/>- <INLINE_CODE_35/> : No access rights<NL/>- <INLINE_CODE_36/> : OpenSearch service not found<NL/>- <INLINE_CODE_37/> : Store not found<NL/>- <INLINE_CODE_38/> : Store item not found<NL/>- <INLINE_CODE_39/> : Something went wrong while accessing OpenSearch<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_40/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_1/><NL/><NL/><NL/>// ================================================================================================<NL/><NL/><BLOCK_TITLE/>6+<PIPE/> <ADMONITION_2> <INLINE_CODE_41/></ADMONITION_2><PIPE/> <INLINE_CODE_42/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Description</BOLD></BOLD><NL/><NL/>Creates a new store item.<NL/>Writes the provided store item data to the OpenSearch index <INLINE_CODE_43/>.<NL/>It uses a new ID for the store item and sets this ID in the provided store item data as well.<NL/>Unrecognized elements at the root level are automatically saved to the 'customFields' field to avoid OpenSearch mapping issues.<NL/><NL/><BLOCK_TITLE/>Example of all fields<NL/><SOURCE_BLOCK_0/><NL/><NL/><BOLD><BOLD>Fields</BOLD></BOLD><NL/><NL/><INLINE_CODE_44/> (irrelevant) :: ID of the store item. A new random UUID is set instead.<NL/><INLINE_CODE_45/> (optional) :: The ID of the module to which the store item belongs. Can be used as a filter value when retrieving items.<NL/><INLINE_CODE_46/> (optional) :: The ID of the module instance to which the store item belongs. Can be used as a filter value when retrieving items.<NL/><INLINE_CODE_47/> (optional) :: The name of the store item (be creative). Can be used as a filter value when retrieving items.<NL/><INLINE_CODE_48/> (required) :: The actual value/content/data of the store item.<NL/><INLINE_CODE_49/> (optional) :: To mark the store item as a favorite. Defaults to false.<NL/><INLINE_CODE_50/> (required) :: The read restrictions. Define who can read this item. At least one of the subelements must be set.<NL/><INLINE_CODE_51/> (optional) :: Only this username has read access to this store item. When set, the other fields—'organizations', 'roles', and 'rights'—are not saved.<NL/><INLINE_CODE_52/> (optional) :: Anyone associated with one of these organizations has read access to this store item.<NL/><INLINE_CODE_53/> (optional) :: Anyone with one of these roles has read access to this store item.<NL/><INLINE_CODE_54/> (optional) :: Anyone with one of these rights has read access to this store item.<NL/><INLINE_CODE_55/> (required) :: The write restrictions. Define who can update and delete this item. At least one of the subelements must be set.<NL/><INLINE_CODE_56/> (optional) :: Only this username has write access to this store item. When set, the other fields—'organizations', 'roles', and 'rights'—are not saved.<NL/><INLINE_CODE_57/> (optional) :: Anyone associated with one of these organizations has write access to this store item.<NL/><INLINE_CODE_58/> (optional) :: Anyone with one of these roles has write access to this store item.<NL/><INLINE_CODE_59/> (optional) :: Anyone with one of these rights has write access to this store item.<NL/><INLINE_CODE_60/> (optional) :: Values that do not fit into the 'value' field.<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Consumes</BOLD></BOLD><NL/><NL/>- <INLINE_CODE_61/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Path Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_62/>:: the ID of the store<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>The ID of the created store item<NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_63/> : OK<NL/>- <INLINE_CODE_64/> : OpenSearch service not found<NL/>- <INLINE_CODE_65/> : Store not found<NL/>- <INLINE_CODE_66/> : Mandatory fields missing<NL/>- <INLINE_CODE_67/> : Store could not be created<NL/>- <INLINE_CODE_68/> : Problem with the provided JSON<NL/>- <INLINE_CODE_69/> : Something went wrong while accessing OpenSearch<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_70/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_2/><NL/><NL/><NL/>// ================================================================================================<NL/><NL/><BLOCK_TITLE/>6+<PIPE/> <ADMONITION_3> <INLINE_CODE_71/></ADMONITION_3><PIPE/> <INLINE_CODE_72/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Description</BOLD></BOLD><NL/><NL/>Creates or updates a store item.<NL/>Writes the store item data provided in the body to the OpenSearch index <INLINE_CODE_73/>.<NL/>An existing store item is updated, and a nonexistent one is created.<NL/>Unrecognized elements at the root level are automatically saved to the 'customFields' field to avoid OpenSearch mapping issues.<NL/><NL/><BLOCK_TITLE/>Example of all fields<NL/><SOURCE_BLOCK_1/><NL/><NL/><BOLD><BOLD>Fields</BOLD></BOLD><NL/><NL/><INLINE_CODE_74/> (irrelevant) :: ID of the store item. The path parameter is set in the given document instead.<NL/><INLINE_CODE_75/> (optional) :: The ID of the module to which the store item belongs. Can be used as a filter value when retrieving items.<NL/><INLINE_CODE_76/> (optional) :: The ID of the module instance to which the store item belongs. Can be used as a filter value when retrieving items.<NL/><INLINE_CODE_77/> (optional) :: The name of the store item (be creative). Can be used as a filter value when retrieving items.<NL/><INLINE_CODE_78/> (required) :: The actual value/content/data of the store item.<NL/><INLINE_CODE_79/> (optional) :: To mark the store item as a favorite. Defaults to false.<NL/><INLINE_CODE_80/> (required) :: The read restrictions. Define who can read this item. At least one of the subelements must be set.<NL/><INLINE_CODE_81/> (optional) :: Only this username has read access to this store item. When set, the other fields—'organizations', 'roles', and 'rights'—are not saved.<NL/><INLINE_CODE_82/> (optional) :: Anyone with one of these organizations has read access to this store item.<NL/><INLINE_CODE_83/> (optional) :: Anyone with one of these roles has read access to this store item.<NL/><INLINE_CODE_84/> (optional) :: Anyone with one of these rights has read access to this store item.<NL/><INLINE_CODE_85/> (required) :: The write restrictions. Define who can update and delete this item. At least one of the subelements must be set.<NL/><INLINE_CODE_86/> (optional) :: Only this username has write access to this store item. When set, the other fields—'organizations', 'roles', and 'rights'—are not saved.<NL/><INLINE_CODE_87/> (optional) :: Anyone with one of these organizations has write access to this store item.<NL/><INLINE_CODE_88/> (optional) :: Anyone with one of these roles has write access to this store item.<NL/><INLINE_CODE_89/> (optional) :: Anyone with one of these rights has write access to this store item.<NL/><INLINE_CODE_90/> (optional) :: Values that do not fit into the 'value' field.<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Consumes</BOLD></BOLD><NL/><NL/>- <INLINE_CODE_91/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Path Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_92/>:: the ID of the store<NL/><INLINE_CODE_93/>:: the ID of the item<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_94/> : OK<NL/>- <INLINE_CODE_95/> : Insufficient access rights to update the store item<NL/>- <INLINE_CODE_96/> : OpenSearch service not found<NL/>- <INLINE_CODE_97/> : Store not found<NL/>- <INLINE_CODE_98/> : Mandatory fields missing<NL/>- <INLINE_CODE_99/> : Store could not be created<NL/>- <INLINE_CODE_100/> : Problem with the provided JSON<NL/>- <INLINE_CODE_101/> : Something went wrong while accessing OpenSearch<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_102/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_3/><NL/><NL/><NL/>// ================================================================================================<NL/><NL/><BLOCK_TITLE/>5+<PIPE/> <ADMONITION_4> <INLINE_CODE_103/></ADMONITION_4><PIPE/> <INLINE_CODE_104/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Description</BOLD></BOLD><NL/><NL/>Deletes a specific store item from the OpenSearch index <INLINE_CODE_105/>.<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Path Parameter</BOLD></BOLD><NL/><NL/><INLINE_CODE_106/>:: the ID of the store<NL/><INLINE_CODE_107/>:: the ID of the item to delete<NL/><NL/>1+a<PIPE/><BOLD><BOLD>Returns</BOLD></BOLD><NL/><NL/>HTTP Status Code<NL/><NL/>- <INLINE_CODE_108/> : OK<NL/>- <INLINE_CODE_109/> : Insufficient access rights to delete the store item<NL/>- <INLINE_CODE_110/> : OpenSearch Service not found<NL/>- <INLINE_CODE_111/> : Store not found<NL/>- <INLINE_CODE_112/> : Store item not found<NL/>- <INLINE_CODE_113/> : Something went wrong while accessing OpenSearch<NL/><NL/>Content-Type<NL/><NL/>- <INLINE_CODE_114/><NL/><NL/>1+a<PIPE/><BOLD><BOLD>Required Access Rights</BOLD></BOLD><NL/><NL/><INCLUDE_4/><NL/><NL/><NL/><TABLE/><NL/>


Keywords: