/_/deployment/modules

Deployment service. This is responsible for starting and stopping modules.

post

Deploy (launch process, start a container, etc) instance of a particular service, according to the deployment descriptor.

get

List all deployed instances

get

Retrieve deployment descriptor for a particular instance

delete

shutdown instance

/_/discovery/modules

Discovery service. This is responsible for monitoring all instances (deployed) on, possibly many, deployment nodes.

post

Register instance under a specified service id

get

Return all instances

delete

delete all instances

get

List all instances for a particular service

delete

Remove registration for a given instance

get

get registration of a specified instance

delete

Remove registration for a given instance

/_/discovery/health

Health service for individual instances

get

Get health info for all services

get

Health for all instances for a particular service

get

get health for a particular instance

/_/discovery/nodes

Get information about nodes

get

Get list of all nodes

put

Update descriptor of a particular node, only the name can be changed

get

Get info for one node

/_/proxy/modules

Proxy modules service

post

Announce new module to the proxy. Once successful a module can be selected for a specific tenant.

get

List all or subset of modules for proxy

get

Retrieve descriptor for a particular module

put

Update descriptor of a particular module

delete

Remove module descriptor for a particular module, module will no longer be selectable by tenants

/_/proxy/tenants

Tenants service

post

Create a new tenant

get

List all tenants

get

Retrieve a tenant

put

Update a tenant

delete

Remove a tenant

post

Enable a module for tenant. Only the member 'id' from TenantModuleDescriptor is used in this operation. This call will eventually be replaced by the 'install' service.

get

Get enabled modules for tenant

CRUD service for getting module and upgrading module for a tenant.

get

Look up particular module selection

post

Upgrade a module for a tenant. Enable new module and disable current module with new module ID in body and existing ID in path. This call will eventually be replaced by the 'install' service.

delete

Disable a module for a tenant. This call will eventually be replaced by the 'install' service.

post

Enable, disable or upgrade one or more modules for tenant. The request body and response body is of the same type TenantModuleDescriptorList. This list includes one or more modules to be enabled, disabled or upgraded. The request is the initial desired changes and the response is the list of changes that must be fulfilled to satisfy dependencies. This service will eventually partially replace /_/proxy/tenants/{tenant}/modules . It also allows enabling multiple modules in in one transaction. For simulate=true, the response, can be viewed as a recipe for what must be deployed (optionally) and enabled/disabled by the existing tenants-modules CRUD service.

post

Check if newer modules of exist and upgrade for tenant. The response is a list of modules that should be enabled, disabled or upgraded to perform the upgrade.

get

Get all interfaces for tenant

get

Get all modules that provide the specified interface ID

/_/proxy/health

Health of modules as seen from proxy

get

Check health of modules

/_/proxy/pull/modules

Pull module descriptors from a remote repository

post

Pull modules (i.e. Module Descriptors) from a remote repository. The PullDescriptor includes one or more URLs. And the operation will try all URLs in order until one succeeds. Hence, the URLs should be pointing to identical remote repositories.

/_/env

Environment service. Environment variables are system variables that allows us to configure modules in a uniform way. They can hold fundamental database configuration, etc.

post

Add environment entry

get

Get list of all environment variables

get

Get info for one environment variable

delete

Remove environment variable

/_/version

Service for getting information about Okapi

get

get Okapi version

/_/invoke/tenant/{id}

Call module with Tenant ID in path. This service offers support for systems that need to "call-back" Okapi and don't allow setting the Tenant ID in the HTTP header.

get

Invoke any service (the rest of the path, any method, any response).