Self-Service API

This is an information message

Advanced usage

For manual operations, we recommend using the ESC Portal. This API guide is only for advanced usage, e.g. for automating certificate management operations.

Overview

The terms used by the API and their relations are as follows:

  • The service instance of an Event Exposure service is a Kafka topic.
  • Maximum one instance per tenant is supported.
  • An instance can be accessed by multiple users
  • One user holds one certificate

Certificate Lifecycle Workflow

The workflow for managing certificates is as follows:

  • Obtain an authorization token (see the Auth documentation for more details). This needs to be provided in the header of all the following requests.
  • Check if your tenant is onboarded: GET /tenants/{{tenant}}/instances
  • Onboard the service for your tenant if not done already: POST /tenants/{{tenant}}/instances
  • Create a new user (certificate): POST /tenants/{{tenant}}/instances/{{instance-id}}/users
  • List all existing users (certificates): GET /tenants/{{tenant}}/instances/{{instance-id}}/users
  • Get certificate for a user: GET /tenants/{{tenant}}/instances/{{instance-id}}/users/{{user-id}}
  • Delete a user certificate: DELETE /tenants/{{tenant}}/instances/{{instance-id}}/users/{{user-id}}

Rest API

Endpoints

This is an information message

Please note

The Self-Service API is only accessible from the workload.

The Self-Service API of Event Exposure Services are exposed under the following endpoints:

  • Health Exposure: https://hes-api.prd.msg.entcloud.swisscom.com/api/v1
  • Log Exposure: https://les-api.prd.msg.entcloud.swisscom.com/api/v1

The paths described in the API definition must be appended to these endpoint paths.

API Definition

The detailed description of the Self-Service API is available under the following endpoints:

  • Health Exposure: https://hes-api.prd.msg.entcloud.swisscom.com/swagger/index.html#/customer
  • Log Exposure: https://les-api.prd.msg.entcloud.swisscom.com/swagger/index.html#/customer

Common Parameters

In the API definition the following parameters are repeatedly used in requests and/or in responses, and hence described here for simplicity:

ValueTypeDescription
businessGroupId / spaceIDstringThe UUID of the business group / space associated with the service instance
businessGroupName / spaceNamestringThe name of the business group / space associated with the service instance
idstringThe UUID of the service instance / user
namestringThe name of the service instance / user
statusstringThe status of the service instance / user. One of: IN PROGRESS, READY
consumerGroupstringThe Kafka consumer group the user is part of
createdBystringThe creator of the user
creationDatestringThe creation date of the user
expirationDatestringThe expiration date of the user's certificate
contact.emailstringThe email address used for the user's certificate expiry notifications
descriptionstringThe description of the user (free text)
csrstringThe Base64-encoded certificate signing request used to generate the user's certificate
certificatestringThe certificate of the user
Last Updated: