Self-Service API
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
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:
Value | Type | Description |
---|---|---|
businessGroupId / spaceID | string | The UUID of the business group / space associated with the service instance |
businessGroupName / spaceName | string | The name of the business group / space associated with the service instance |
id | string | The UUID of the service instance / user |
name | string | The name of the service instance / user |
status | string | The status of the service instance / user. One of: IN PROGRESS , READY |
consumerGroup | string | The Kafka consumer group the user is part of |
createdBy | string | The creator of the user |
creationDate | string | The creation date of the user |
expirationDate | string | The expiration date of the user's certificate |
contact.email | string | The email address used for the user's certificate expiry notifications |
description | string | The description of the user (free text) |
csr | string | The Base64-encoded certificate signing request used to generate the user's certificate |
certificate | string | The certificate of the user |