Event Endpoint Management Admin API
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
The Admin API provides programmatic access to your Event Endpoint Management deployment and features from other systems.
Base Paths:
-
/admin
This is the base path for the Admin API URL on the server endpoint, which is also available in the Event Endpoint Management UI.
-
/eem
This is the base path for the Admin API URL on the admin endpoint.
Authentication
Access control is provided through HTTP bearer authentication by using access tokens. To use the API, create an access token in the Event Endpoint Management UI.
Default
createCluster
Code samples
# You can also use wget
curl -X POST /admin/clusters \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /clusters
Create a new Cluster.
Body parameter
{
"bootstrapServers": [
{
"host": "string",
"port": 0,
"ssl": false,
"certificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
]
}
],
"name": "string",
"lastUpdated": 0,
"credentials": {
"type": "NONE",
"data": {
"username": "string",
"password": "string",
"mechanism": "PLAIN",
"region": "string",
"scope": "string",
"audience": "string",
"oauthTokenUri": "string",
"trustedCertificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
],
"clientCertificateAndKey": {
"pem": "string",
"key": "string",
"expiry": 0
}
}
}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| disableValidation | query | boolean | false | disable immediate validation against the remote server |
| body | body | object | true | none |
| » bootstrapServers | body | [object] | true | Bootstrap servers for this cluster |
| »» host | body | string | true | Kafka server host name. |
| »» port | body | integer | true | Kafka server port. |
| »» ssl | body | boolean | false | Connect over SSL. |
| »» certificates | body | [object] | false | Certificates or CAs to trust, required to connect to the server via SSL. |
| »»» pem | body | string | true | Certificate in PEM format |
| »»» subject | body | string | false | Subject name of the certificate |
| »»» sans | body | [string] | false | A list of subject alternative names of the certificate |
| »»» issuer | body | string | false | Issuer of the certificate |
| »»» expiry | body | integer | false | Expiration date of the certificate in epoch millis |
| » name | body | string | true | Cluster name |
| » lastUpdated | body | integer | false | Time in ms since the epoch which represents the last time the cluster information was updated. |
| » credentials | body | object | false | Credentials be used by the gateway to connect to Kafka |
| »» type | body | string | true | The type of credentials. Used by parsers to determine how to handle the other fields |
| »» data | body | object | true | Details of the SASL credential data to authenticate with Kafka |
| »»» username | body | string | false | SASL username to authenticate with Kafka |
| »»» password | body | string | false | SASL password to authenticate with Kafka |
| »»» mechanism | body | string | false | SASL mechanism to authenticate with Kafka |
| »»» region | body | string | false | Optional field containing the AWS MSK Region. |
| »»» scope | body | string | false | Optional field containing the scope for requesting the token from the token endpoint. |
| »»» audience | body | string | false | Optional field containing the audience for requesting the token from the token endpoint. |
| »»» oauthTokenUri | body | string | false | Optional URI of the OAuth token endpoint |
| »»» trustedCertificates | body | [object] | false | Certificates or CAs to trust, required to connect to OAuth server. |
| »»»» pem | body | string | true | Certificate in PEM format |
| »»»» subject | body | string | false | Subject name of the certificate |
| »»»» sans | body | [string] | false | A list of subject alternative names of the certificate |
| »»»» issuer | body | string | false | Issuer of the certificate |
| »»»» expiry | body | integer | false | Expiration date of the certificate in epoch millis |
| »»» clientCertificateAndKey | body | object | false | Client certificate and key to use in mTLS |
| »»»» pem | body | string | true | Client certificate in PEM format |
| »»»» key | body | string | true | Client key in PEM format |
| »»»» expiry | body | integer | false | Expiration date of the certificate in epoch millis |
Enumerated Values
| Parameter | Value |
|---|---|
| »» type | NONE |
| »» type | SASL |
| »» type | MTLS |
| »» type | MTLS_SASL |
| »»» mechanism | PLAIN |
| »»» mechanism | SCRAM-SHA-256 |
| »»» mechanism | SCRAM-SHA-512 |
| »»» mechanism | OAUTHBEARER |
| »»» mechanism | OAUTHBEARER.AWS_MSK_IAM |
Example responses
200 Response
{
"id": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Cluster successfully created | Inline |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 409 | Conflict | A Cluster with the specified ID or name already exists | None |
| 422 | Unprocessable Entity | The specified Cluster could not be validated using Kafka discovery mechanisms e.g. connection fails, certs mis-matched, SASL mis-match | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | false | none | The ID of your newly created Cluster |
readAllClusters
Code samples
# You can also use wget
curl -X GET /admin/clusters \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /clusters
List all Clusters within an Organization. If a page range is specified, then this will return the requested range
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
Example responses
200 Response
[
{
"bootstrapServers": [
{
"host": "string",
"port": 0,
"ssl": false,
"certificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
]
}
],
"id": "string",
"name": "string",
"owner": "string",
"organization": "string",
"lastUpdated": 0,
"credentials": {
"type": "NONE",
"data": {
"username": "string",
"mechanism": "PLAIN",
"region": "string",
"scope": "string",
"audience": "string",
"oauthTokenUri": "string",
"trustedCertificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
],
"clientCertificateAndKey": {
"pem": "string",
"expiry": 0
}
}
},
"validation": {
"status": "pending",
"gatewayGroups": [
{
"name": "string",
"status": "pending",
"gateways": [
{
"id": "string",
"validationErrors": [
"network"
]
}
]
}
]
}
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Clusters successfully listed. | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » bootstrapServers | [object] | false | none | Bootstrap servers for this cluster - only viewable with permissions |
| »» host | string | true | none | Kafka server host name. |
| »» port | integer | true | none | Kafka server port. |
| »» ssl | boolean | false | none | Connect over SSL. |
| »» certificates | [object] | false | none | Certificates or CAs to trust, required to connect to the server via SSL. |
| »»» pem | string | true | none | Certificate in PEM format |
| »»» subject | string | false | none | Subject name of the certificate |
| »»» sans | [string] | false | none | A list of subject alternative names of the certificate |
| »»» issuer | string | false | none | Issuer of the certificate |
| »»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| » id | string | true | none | Unique cluster ID. |
| » name | string | true | none | Cluster name |
| » owner | string | true | none | Cluster owner. |
| » organization | string | true | none | Organization this cluster belongs to. |
| » lastUpdated | integer | false | none | Time in ms since the epoch which represents the last time the cluster information was updated. |
| » credentials | object | false | none | Credentials be used by the gateway to connect to Kafka |
| »» type | string | true | none | The type of credentials. Used by parsers to determine how to handle the other fields |
| »» data | object | true | none | Details of the SASL credential data to authenticate with Kafka |
| »»» username | string | false | none | SASL username to authenticate with Kafka |
| »»» mechanism | string | false | none | SASL mechanism to authenticate with Kafka |
| »»» region | string | false | none | Optional field containing the AWS MSK Region. |
| »»» scope | string | false | none | Optional field containing the scope for requesting the token from the token endpoint. |
| »»» audience | string | false | none | Optional field containing the audience for requesting the token from the token endpoint. |
| »»» oauthTokenUri | string | false | none | Optional URI of the OAuth token endpoint |
| »»» trustedCertificates | [object] | false | none | Certificates or CAs to trust, required to connect to OAuth server. |
| »»»» pem | string | true | none | Certificate in PEM format |
| »»»» subject | string | false | none | Subject name of the certificate |
| »»»» sans | [string] | false | none | A list of subject alternative names of the certificate |
| »»»» issuer | string | false | none | Issuer of the certificate |
| »»»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| »»» clientCertificateAndKey | object | false | none | Client certificate and key to use in mTLS |
| »»»» pem | string | true | none | Client certificate in PEM format |
| »»»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| » validation | object | true | none | Details of the visibility of this cluster amongst the gateways |
| »» status | string | true | none | Overall status of all of the gateways. |
| »» gatewayGroups | [object] | true | none | Gateway group names and if they can connect to this cluster |
| »»» name | string | true | none | none |
| »»» status | string | true | none | Status on whether this gateway group can see the associated cluster. |
| »»» gateways | [object] | true | none | none |
| »»»» id | string | true | none | none |
| »»»» validationErrors | [string] | true | none | List of failed validation stages. If this array is empty, it can be assumed that this gateway group can connect and see the cluster. |
Enumerated Values
| Property | Value |
|---|---|
| type | NONE |
| type | SASL |
| type | MTLS |
| type | MTLS_SASL |
| mechanism | PLAIN |
| mechanism | SCRAM-SHA-256 |
| mechanism | SCRAM-SHA-512 |
| mechanism | OAUTHBEARER |
| mechanism | OAUTHBEARER.AWS_MSK_IAM |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). | |
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
updateCluster
Code samples
# You can also use wget
curl -X PUT /admin/clusters/{clusterId} \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}'
PUT /clusters/{clusterId}
Update a Cluster using the ‘id’ as the identifier.
Note - You can view all of the Clusters (including their ‘id’) by using GET /clusters
Body parameter
{
"bootstrapServers": [
{
"host": "string",
"port": 0,
"ssl": false,
"certificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
]
}
],
"name": "string",
"lastUpdated": 0,
"credentials": {
"type": "NONE",
"data": {
"username": "string",
"password": "string",
"mechanism": "PLAIN",
"region": "string",
"scope": "string",
"audience": "string",
"oauthTokenUri": "string",
"trustedCertificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
],
"clientCertificateAndKey": {
"pem": "string",
"key": "string",
"expiry": 0
}
}
}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| clusterId | path | string | true | The ID of the Cluster. |
| disableValidation | query | boolean | false | disable immediate validation against the remote server |
| body | body | object | true | Update a cluster definition |
| » bootstrapServers | body | [object] | true | Bootstrap servers for this cluster |
| »» host | body | string | true | Kafka server host name. |
| »» port | body | integer | true | Kafka server port. |
| »» ssl | body | boolean | false | Connect over SSL. |
| »» certificates | body | [object] | false | Certificates or CAs to trust, required to connect to the server via SSL. |
| »»» pem | body | string | true | Certificate in PEM format |
| »»» subject | body | string | false | Subject name of the certificate |
| »»» sans | body | [string] | false | A list of subject alternative names of the certificate |
| »»» issuer | body | string | false | Issuer of the certificate |
| »»» expiry | body | integer | false | Expiration date of the certificate in epoch millis |
| » name | body | string | true | Cluster name |
| » lastUpdated | body | integer | false | Time in ms since the epoch which represents the last time the cluster information was updated. |
| » credentials | body | object | false | Credentials be used by the gateway to connect to Kafka |
| »» type | body | string | true | The type of credentials. Used by parsers to determine how to handle the other fields |
| »» data | body | object | true | Details of the SASL credential data to authenticate with Kafka |
| »»» username | body | string | false | SASL username to authenticate with Kafka |
| »»» password | body | string | false | SASL password to authenticate with Kafka |
| »»» mechanism | body | string | false | SASL mechanism to authenticate with Kafka |
| »»» region | body | string | false | Optional field containing the AWS MSK Region. |
| »»» scope | body | string | false | Optional field containing the scope for requesting the token from the token endpoint. |
| »»» audience | body | string | false | Optional field containing the audience for requesting the token from the token endpoint. |
| »»» oauthTokenUri | body | string | false | Optional URI of the OAuth token endpoint |
| »»» trustedCertificates | body | [object] | false | Certificates or CAs to trust, required to connect to OAuth server. |
| »»»» pem | body | string | true | Certificate in PEM format |
| »»»» subject | body | string | false | Subject name of the certificate |
| »»»» sans | body | [string] | false | A list of subject alternative names of the certificate |
| »»»» issuer | body | string | false | Issuer of the certificate |
| »»»» expiry | body | integer | false | Expiration date of the certificate in epoch millis |
| »»» clientCertificateAndKey | body | object | false | Client certificate and key to use in mTLS |
| »»»» pem | body | string | true | Client certificate in PEM format |
| »»»» key | body | string | true | Client key in PEM format |
| »»»» expiry | body | integer | false | Expiration date of the certificate in epoch millis |
Enumerated Values
| Parameter | Value |
|---|---|
| »» type | NONE |
| »» type | SASL |
| »» type | MTLS |
| »» type | MTLS_SASL |
| »»» mechanism | PLAIN |
| »»» mechanism | SCRAM-SHA-256 |
| »»» mechanism | SCRAM-SHA-512 |
| »»» mechanism | OAUTHBEARER |
| »»» mechanism | OAUTHBEARER.AWS_MSK_IAM |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Cluster updated. | None |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | Cluster not found | None |
| 409 | Conflict | Cluster with the specified name already exists | None |
| 422 | Unprocessable Entity | The specified Cluster could not be validated using Kafka discovery mechanisms e.g. connection fails, certs mis-matched, SASL mis-match | None |
| 500 | Internal Server Error | Internal error | None |
readCluster
Code samples
# You can also use wget
curl -X GET /admin/clusters/{clusterId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /clusters/{clusterId}
Get details about a Cluster.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| clusterId | path | string | true | The ID of the Cluster. |
Example responses
200 Response
{
"bootstrapServers": [
{
"host": "string",
"port": 0,
"ssl": false,
"certificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
]
}
],
"id": "string",
"name": "string",
"owner": "string",
"organization": "string",
"lastUpdated": 0,
"credentials": {
"type": "NONE",
"data": {
"username": "string",
"mechanism": "PLAIN",
"region": "string",
"scope": "string",
"audience": "string",
"oauthTokenUri": "string",
"trustedCertificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
],
"clientCertificateAndKey": {
"pem": "string",
"expiry": 0
}
}
},
"validation": {
"status": "pending",
"gatewayGroups": [
{
"name": "string",
"status": "pending",
"gateways": [
{
"id": "string",
"validationErrors": [
"network"
]
}
]
}
]
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Cluster successfully read. | Inline |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | Cluster not found | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » bootstrapServers | [object] | false | none | Bootstrap servers for this cluster - only viewable with permissions |
| »» host | string | true | none | Kafka server host name. |
| »» port | integer | true | none | Kafka server port. |
| »» ssl | boolean | false | none | Connect over SSL. |
| »» certificates | [object] | false | none | Certificates or CAs to trust, required to connect to the server via SSL. |
| »»» pem | string | true | none | Certificate in PEM format |
| »»» subject | string | false | none | Subject name of the certificate |
| »»» sans | [string] | false | none | A list of subject alternative names of the certificate |
| »»» issuer | string | false | none | Issuer of the certificate |
| »»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| » id | string | true | none | Unique cluster ID. |
| » name | string | true | none | Cluster name |
| » owner | string | true | none | Cluster owner. |
| » organization | string | true | none | Organization this cluster belongs to. |
| » lastUpdated | integer | false | none | Time in ms since the epoch which represents the last time the cluster information was updated. |
| » credentials | object | false | none | Credentials be used by the gateway to connect to Kafka |
| »» type | string | true | none | The type of credentials. Used by parsers to determine how to handle the other fields |
| »» data | object | true | none | Details of the SASL credential data to authenticate with Kafka |
| »»» username | string | false | none | SASL username to authenticate with Kafka |
| »»» mechanism | string | false | none | SASL mechanism to authenticate with Kafka |
| »»» region | string | false | none | Optional field containing the AWS MSK Region. |
| »»» scope | string | false | none | Optional field containing the scope for requesting the token from the token endpoint. |
| »»» audience | string | false | none | Optional field containing the audience for requesting the token from the token endpoint. |
| »»» oauthTokenUri | string | false | none | Optional URI of the OAuth token endpoint |
| »»» trustedCertificates | [object] | false | none | Certificates or CAs to trust, required to connect to OAuth server. |
| »»»» pem | string | true | none | Certificate in PEM format |
| »»»» subject | string | false | none | Subject name of the certificate |
| »»»» sans | [string] | false | none | A list of subject alternative names of the certificate |
| »»»» issuer | string | false | none | Issuer of the certificate |
| »»»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| »»» clientCertificateAndKey | object | false | none | Client certificate and key to use in mTLS |
| »»»» pem | string | true | none | Client certificate in PEM format |
| »»»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| » validation | object | true | none | Details of the visibility of this cluster amongst the gateways |
| »» status | string | true | none | Overall status of all of the gateways. |
| »» gatewayGroups | [object] | true | none | Gateway group names and if they can connect to this cluster |
| »»» name | string | true | none | none |
| »»» status | string | true | none | Status on whether this gateway group can see the associated cluster. |
| »»» gateways | [object] | true | none | none |
| »»»» id | string | true | none | none |
| »»»» validationErrors | [string] | true | none | List of failed validation stages. If this array is empty, it can be assumed that this gateway group can connect and see the cluster. |
Enumerated Values
| Property | Value |
|---|---|
| type | NONE |
| type | SASL |
| type | MTLS |
| type | MTLS_SASL |
| mechanism | PLAIN |
| mechanism | SCRAM-SHA-256 |
| mechanism | SCRAM-SHA-512 |
| mechanism | OAUTHBEARER |
| mechanism | OAUTHBEARER.AWS_MSK_IAM |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
deleteCluster
Code samples
# You can also use wget
curl -X DELETE /admin/clusters/{clusterId} \
-H 'Authorization: Bearer {access-token}'
DELETE /clusters/{clusterId}
Delete a Cluster.
All related Catalog Entries must be deleted prior to deleting a cluster. Note - You must be the owner to delete a Cluster. You can view all of the Clusters that you own (including their ‘id’) by using GET /clusters
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| clusterId | path | string | true | The ID of the Cluster. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Cluster successfully deleted | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | Cluster not found | None |
| 409 | Conflict | catalog entries are still using this cluster and it cannot be deleted | None |
| 500 | Internal Server Error | Internal error | None |
createSubscription
Code samples
# You can also use wget
curl -X POST /admin/subscriptions \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /subscriptions
Create a subscription to a Catalog Entry
Body parameter
{
"entryId": [
"string"
],
"credentials": {
"type": "NONE",
"data": {
"username": "string",
"password": "string",
"mechanism": "PLAIN",
"hashedPasswords": [
"string"
],
"subjectCommonName": "string",
"subjectOrganization": "string",
"subjectCountry": "string",
"subjectStateOrProvince": "string",
"subjectLocality": "string"
}
},
"clientId": "string",
"contact": "string",
"gateways": [
"string"
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | true | none |
| » entryId | body | [string] | true | The list of entry ids this subscription gives access to, currently only supports 1. |
| » credentials | body | object | true | Credentials a client uses to connect to an Event Gateway |
| »» type | body | string | true | The type of credentials. Used by parsers to determine how to handle the other fields |
| »» data | body | object | true | Details of the SASL credential data to authenticate with an Event Gateway |
| »»» username | body | string | false | SASL username to authenticate with an Event Gateway |
| »»» password | body | string | false | SASL password to authenticate with an Event Gateway |
| »»» mechanism | body | string | false | SASL mechanism to authenticate with Kafka |
| »»» hashedPasswords | body | [string] | false | Hashed passwords from APIC to authenticate clients against an Event Gateway. |
| »»» subjectCommonName | body | string | false | Subject Common Name to match on. |
| »»» subjectOrganization | body | string | false | Subject Organization to match on. |
| »»» subjectCountry | body | string | false | Subject Country to match on. |
| »»» subjectStateOrProvince | body | string | false | Subject Region to match on. |
| »»» subjectLocality | body | string | false | Subject Locality to match on. |
| » clientId | body | string | false | Optional client ID if this subscription is a legacy APIC one. |
| » contact | body | string | true | Subscription contact details. |
| » gateways | body | [string] | false | A list of gateway IDs that can access this data. If this property is missing or contains an empty list then this subscription has no gateway restrictions |
Enumerated Values
| Parameter | Value |
|---|---|
| »» type | NONE |
| »» type | SASL |
| »» type | SASL_APIC |
| »» type | MTLS |
| »»» mechanism | PLAIN |
Example responses
200 Response
{
"id": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Subscription successfully created. | Inline |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 409 | Conflict | Subscription with the specified ID already exists | None |
| 422 | Unprocessable Entity | subscribe to invalid topic etc | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | false | none | The ID of your newly created Subscription |
readAllSubscriptions
Code samples
# You can also use wget
curl -X GET /admin/subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /subscriptions
List all Subscriptions created by the current user in an Organization. If a page range is specified, then this will return the requested range.
Note - This will not include the subscription credentials
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
Example responses
200 Response
[
{
"id": "string",
"owner": "string",
"entryId": [
"string"
],
"organization": "string",
"credentials": {
"type": "NONE",
"data": {
"username": "string",
"mechanism": "PLAIN",
"subjectCommonName": "string",
"subjectOrganization": "string",
"subjectCountry": "string",
"subjectStateOrProvince": "string",
"subjectLocality": "string"
}
},
"clientId": "string",
"contact": "string",
"gateways": [
"string"
]
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Subscriptions successfully listed. | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique subscription ID. |
| » owner | string | true | none | Subscription owner. |
| » entryId | [string] | true | none | The list of entry ids this subscription gives access to, currently only supports 1. |
| » organization | string | true | none | Organization this subscription belongs to. |
| » credentials | object | false | none | Credentials a client uses to connect to an Event Gateway |
| »» type | string | true | none | The type of credentials. Used by parsers to determine how to handle the other fields |
| »» data | object | true | none | Details of the SASL credential data to authenticate with an Event Gateway |
| »»» username | string | false | none | SASL username to authenticate with an Event Gateway |
| »»» mechanism | string | false | none | SASL mechanism to authenticate with Kafka |
| »»» subjectCommonName | string | false | none | Subject Common Name to match on. |
| »»» subjectOrganization | string | false | none | Subject Organization to match on. |
| »»» subjectCountry | string | false | none | Subject Country to match on. |
| »»» subjectStateOrProvince | string | false | none | Subject Region to match on. |
| »»» subjectLocality | string | false | none | Subject Locality to match on. |
| » clientId | string | false | none | Optional client ID if this subscription is a legacy APIC one. |
| » contact | string | true | none | Subscription contact details. |
| » gateways | [string] | false | none | A list of gateway IDs that can access this data. If this property is missing or contains an empty list then this subscription has no gateway restrictions |
Enumerated Values
| Property | Value |
|---|---|
| type | NONE |
| type | SASL |
| type | SASL_APIC |
| type | MTLS |
| mechanism | PLAIN |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). | |
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
deleteSubscription
Code samples
# You can also use wget
curl -X DELETE /admin/subscriptions/{subscriptionId} \
-H 'Authorization: Bearer {access-token}'
DELETE /subscriptions/{subscriptionId}
Delete a Subscription
Note - You must be the owner to delete a Subscription. You can view all of the Subscriptions that you own (including their ‘id’) by using GET /subscriptions
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| subscriptionId | path | string | true | The ID of the Subscription. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Subscription successfully deleted | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | subscription not found | None |
| 500 | Internal Server Error | Internal error | None |
readAllGateways
Code samples
# You can also use wget
curl -X GET /admin/gateways \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /gateways
List all registered Event Gateways in an Organization. If a page range is specified, then this will return the requested range.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
Example responses
200 Response
[
{
"name": "string",
"gateways": [
{
"id": "string",
"owner": "string",
"organization": "string",
"gatewayId": "string",
"group": "string",
"organizations": [
"string"
],
"servedOrganizations": [
"string"
],
"contact": "string",
"lastContact": 0,
"endpoints": [
{
"host": "string",
"port": 0,
"ssl": false,
"certificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
]
}
],
"version": "string",
"productVersion": "string",
"features": [
"string"
],
"deploymentMode": "string",
"capabilities": {}
}
]
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Gateways successfully listed. | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » name | string | true | none | Unique gateway group name. |
| » gateways | [object] | true | none | none |
| »» id | string | true | none | Unique Event Gateway ID |
| »» owner | string | true | none | Owner of the Event Gateway. |
| »» organization | string | true | none | Organization this Event Gateway belongs to. |
| »» gatewayId | string | true | none | Unique Event Gateway ID within this group. |
| »» group | string | true | none | Event Gateway group name. |
| »» organizations | [string] | true | none | Organizations this Event Gateway serves |
| »» servedOrganizations | [string] | true | none | Organizations this Event Gateway serves |
| »» contact | string | false | none | The contact information for this Event Gateway |
| »» lastContact | integer | true | none | Epoch time in ms of the last contact from this gateway. |
| »» endpoints | [object] | true | none | Endpoints that the gateway is listening on. |
| »»» host | string | true | none | Kafka server host name. |
| »»» port | integer | true | none | Kafka server port. |
| »»» ssl | boolean | false | none | Connect over SSL. |
| »»» certificates | [object] | false | none | Certificates or CAs to trust, required to connect to the server via SSL. |
| »»»» pem | string | true | none | Certificate in PEM format |
| »»»» subject | string | false | none | Subject name of the certificate |
| »»»» sans | [string] | false | none | A list of subject alternative names of the certificate |
| »»»» issuer | string | false | none | Issuer of the certificate |
| »»»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| »» version | string | false | none | Version of the gateway |
| »» productVersion | string | false | none | EEM product version. |
| »» features | [string] | false | none | Feature set in use by gateway |
| »» deploymentMode | string | false | none | Type of gateway deployment |
| »» capabilities | object | false | none | Freeform Description of what capabilities the gateway has |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). | |
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
readAllEventSources
Code samples
# You can also use wget
curl -X GET /admin/eventsources \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /eventsources
List all Event Sources created by the current user in an Organization. If a page range is specified, then this will return the requested range.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
| filterBy | query | string | false | capability to filterBy |
Enumerated Values
| Parameter | Value |
|---|---|
| filterBy | consume |
| filterBy | produce |
Example responses
200 Response
[
{
"id": "string",
"owner": "string",
"organization": "string",
"clusterId": "string",
"type": "kafka",
"encoding": "unknown",
"name": "string",
"contact": "string",
"description": "string",
"topic": {
"name": "string",
"partitions": 0,
"replicas": 0,
"uuid": "string"
},
"schema": {
"type": "avro",
"content": "string",
"description": "string"
},
"tags": [
"string"
],
"sampleMessages": [
"string"
],
"capabilities": [
"consume"
],
"validation": {
"status": "pending",
"gatewayGroups": [
{
"name": "string",
"status": "pending",
"gateways": [
{
"id": "string",
"validationErrors": [
"notFound"
]
}
]
}
]
}
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Sources successfully listed. | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique Event Source ID. |
| » owner | string | true | none | Event Source owner. |
| » organization | string | true | none | Organization this Event Source belongs to. |
| » clusterId | string | true | none | ID for the cluster that contains the connection details for this Event Source. |
| » type | string | true | none | Type of Event Source |
| » encoding | string | true | none | The encoding of the data on this Event Source |
| » name | string | true | none | Event Source name |
| » contact | string | true | none | Who to contact for more information about this Event Source. |
| » description | string | false | none | A description for this Event Source |
| » topic | object | false | none | none |
| »» name | string | true | none | Actual topic name in the cluster. |
| »» partitions | number | false | none | The number of partitions for this topic. Discovered from the Kafka cluster |
| »» replicas | number | false | none | The number of replicas for this topic. Discovered from the Kafka cluster |
| »» uuid | string | false | none | The uuid of the topic. Discovered from the Kafka cluster |
| » schema | object | false | none | none |
| »» type | string | false | none | Type of Schema from the list of valid types |
| »» content | string | false | none | Contents of the Schema |
| »» description | string | false | none | Description of the data available on the Event Source |
| » tags | [string] | false | none | List of tags associated with this Event Source |
| » sampleMessages | [string] | false | none | none |
| » capabilities | [string] | true | none | none |
| » validation | object | false | none | Details of the visibility of this event source amongst the gateway groups. |
| »» status | string | true | none | Status for all of the gateway groups. Can they see the topic associated with this event source? |
| »» gatewayGroups | [object] | true | none | Gateway group names and if they can connect to this cluster and find the associated topic. |
| »»» name | string | true | none | none |
| »»» status | string | true | none | Status on whether this gateway group can see the topic associated with this event source. |
| »»» gateways | [object] | true | none | none |
| »»»» id | string | true | none | none |
| »»»» validationErrors | [string] | true | none | List of failed validation stages. If this array is empty, it can be assumed that this gateway group can connect and see the topic. |
Enumerated Values
| Property | Value |
|---|---|
| type | kafka |
| encoding | unknown |
| encoding | text/plain |
| encoding | application/octet-stream |
| encoding | application/json |
| encoding | avro/binary |
| encoding | avro/json |
| type | avro |
| type | json |
| type | unknown |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). | |
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
createEventSource
Code samples
# You can also use wget
curl -X POST /admin/eventsources \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /eventsources
Create an event source
Body parameter
{
"clusterId": "string",
"type": "kafka",
"encoding": "unknown",
"name": "string",
"contact": "string",
"description": "string",
"topic": {
"name": "string",
"partitions": 0,
"replicas": 0,
"uuid": "stringstringstringst"
},
"schema": {
"type": "avro",
"content": "string",
"description": "string"
},
"tags": [
"string"
],
"sampleMessages": [
"string"
],
"capabilities": [
"consume"
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| disableValidation | query | boolean | false | disable immediate validation against the remote server |
| body | body | object | true | Event Source data |
| » clusterId | body | string | true | ID for the cluster that contains the connection details for this Event Source. |
| » type | body | string | true | Type of Event Source |
| » encoding | body | string | true | The encoding of the data on this Event Source |
| » name | body | string | true | Event Source name |
| » contact | body | string | true | Who to contact for more information about this Event Source. |
| » description | body | string | false | A description for this Event Source |
| » topic | body | object | false | none |
| »» name | body | string | true | Actual topic name in the cluster. |
| »» partitions | body | number | false | The number of partitions for this topic, updated by discovery. |
| »» replicas | body | number | false | The number of replicas for this topic, updated by discovery. |
| »» uuid | body | string | false | The uuid of the topic, updated by discovery. |
| » schema | body | object | false | none |
| »» type | body | string | false | Type of Schema from the list of valid types |
| »» content | body | string | false | Contents of the Schema |
| »» description | body | string | false | Description of the data available on the Event Source |
| »» anonymous | body | object | false | none |
| »» anonymous | body | object | false | none |
| » tags | body | [string] | false | List of tags associated with this Event Source |
| » sampleMessages | body | [string] | false | none |
| » capabilities | body | [string] | false | none |
Enumerated Values
| Parameter | Value |
|---|---|
| » type | kafka |
| » encoding | unknown |
| » encoding | text/plain |
| » encoding | application/octet-stream |
| » encoding | application/json |
| » encoding | avro/binary |
| » encoding | avro/json |
| »» type | avro |
| »» type | json |
| »» type | unknown |
| » capabilities | consume |
| » capabilities | produce |
Example responses
200 Response
{
"id": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | The id of the created event source | Inline |
| 400 | Bad Request | Invalid request, request data does not match schema. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 409 | Conflict | Event Source could not be created due to a conflict | None |
| 422 | Unprocessable Entity | Event Source could not be created as it does not map to a valid cluster | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | false | none | none |
readEventSource
Code samples
# You can also use wget
curl -X GET /admin/eventsources/{eventSourceId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /eventsources/{eventSourceId}
Read an event source
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventSourceId | path | string | true | The ID of the Event Source to read. |
Example responses
200 Response
{
"id": "string",
"owner": "string",
"organization": "string",
"clusterId": "string",
"type": "kafka",
"encoding": "unknown",
"name": "string",
"contact": "string",
"description": "string",
"topic": {
"name": "string",
"partitions": 0,
"replicas": 0,
"uuid": "string"
},
"schema": {
"type": "avro",
"content": "string",
"description": "string"
},
"tags": [
"string"
],
"sampleMessages": [
"string"
],
"capabilities": [
"consume"
],
"validation": {
"status": "pending",
"gatewayGroups": [
{
"name": "string",
"status": "pending",
"gateways": [
{
"id": "string",
"validationErrors": [
"notFound"
]
}
]
}
]
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | The data for the requested event source | Inline |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Event Source does not exist | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique Event Source ID. |
| » owner | string | true | none | Event Source owner. |
| » organization | string | true | none | Organization this Event Source belongs to. |
| » clusterId | string | true | none | ID for the cluster that contains the connection details for this Event Source. |
| » type | string | true | none | Type of Event Source |
| » encoding | string | true | none | The encoding of the data on this Event Source |
| » name | string | true | none | Event Source name |
| » contact | string | true | none | Who to contact for more information about this Event Source. |
| » description | string | false | none | A description for this Event Source |
| » topic | object | false | none | none |
| »» name | string | true | none | Actual topic name in the cluster. |
| »» partitions | number | false | none | The number of partitions for this topic. Discovered from the Kafka cluster |
| »» replicas | number | false | none | The number of replicas for this topic. Discovered from the Kafka cluster |
| »» uuid | string | false | none | The uuid of the topic. Discovered from the Kafka cluster |
| » schema | object | false | none | none |
| »» type | string | false | none | Type of Schema from the list of valid types |
| »» content | string | false | none | Contents of the Schema |
| »» description | string | false | none | Description of the data available on the Event Source |
| » tags | [string] | false | none | List of tags associated with this Event Source |
| » sampleMessages | [string] | false | none | none |
| » capabilities | [string] | true | none | none |
| » validation | object | false | none | Details of the visibility of this event source amongst the gateway groups. |
| »» status | string | true | none | Status for all of the gateway groups. Can they see the topic associated with this event source? |
| »» gatewayGroups | [object] | true | none | Gateway group names and if they can connect to this cluster and find the associated topic. |
| »»» name | string | true | none | none |
| »»» status | string | true | none | Status on whether this gateway group can see the topic associated with this event source. |
| »»» gateways | [object] | true | none | none |
| »»»» id | string | true | none | none |
| »»»» validationErrors | [string] | true | none | List of failed validation stages. If this array is empty, it can be assumed that this gateway group can connect and see the topic. |
Enumerated Values
| Property | Value |
|---|---|
| type | kafka |
| encoding | unknown |
| encoding | text/plain |
| encoding | application/octet-stream |
| encoding | application/json |
| encoding | avro/binary |
| encoding | avro/json |
| type | avro |
| type | json |
| type | unknown |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
| status | pending |
| status | error |
| status | success/partial |
| status | success |
updateEventSource
Code samples
# You can also use wget
curl -X PUT /admin/eventsources/{eventSourceId} \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}'
PUT /eventsources/{eventSourceId}
Update an event source
Body parameter
{
"clusterId": "string",
"type": "kafka",
"encoding": "unknown",
"name": "string",
"contact": "string",
"description": "string",
"topic": {
"name": "string",
"partitions": 0,
"replicas": 0,
"uuid": "stringstringstringst"
},
"schema": {
"type": "avro",
"content": "string",
"description": "string"
},
"tags": [
"string"
],
"sampleMessages": [
"string"
],
"capabilities": [
"consume"
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventSourceId | path | string | true | The ID of the Event Source to update. |
| disableValidation | query | boolean | false | disable immediate validation against the remote server |
| body | body | object | true | Event Source data |
| » clusterId | body | string | true | ID for the cluster that contains the connection details for this Event Source. |
| » type | body | string | true | Type of Event Source |
| » encoding | body | string | true | The encoding of the data on this Event Source |
| » name | body | string | true | Event Source name |
| » contact | body | string | true | Who to contact for more information about this Event Source. |
| » description | body | string | false | A description for this Event Source |
| » topic | body | object | false | none |
| »» name | body | string | true | Actual topic name in the cluster. |
| »» partitions | body | number | false | The number of partitions for this topic, updated by discovery. |
| »» replicas | body | number | false | The number of replicas for this topic, updated by discovery. |
| »» uuid | body | string | false | The uuid of the topic, updated by discovery. |
| » schema | body | object | false | none |
| »» type | body | string | false | Type of Schema from the list of valid types |
| »» content | body | string | false | Contents of the Schema |
| »» description | body | string | false | Description of the data available on the Event Source |
| »» anonymous | body | object | false | none |
| »» anonymous | body | object | false | none |
| » tags | body | [string] | false | List of tags associated with this Event Source |
| » sampleMessages | body | [string] | false | none |
| » capabilities | body | [string] | false | none |
Enumerated Values
| Parameter | Value |
|---|---|
| » type | kafka |
| » encoding | unknown |
| » encoding | text/plain |
| » encoding | application/octet-stream |
| » encoding | application/json |
| » encoding | avro/binary |
| » encoding | avro/json |
| »» type | avro |
| »» type | json |
| »» type | unknown |
| » capabilities | consume |
| » capabilities | produce |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Source successfully updated | None |
| 400 | Bad Request | Invalid request, request data does not match schema. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Event Source does not exist | None |
| 409 | Conflict | Event Source could not be updated due to a conflict | None |
| 422 | Unprocessable Entity | Event Source could not be created as it does not map to a valid cluster | None |
| 500 | Internal Server Error | Internal error | None |
deleteEventSource
Code samples
# You can also use wget
curl -X DELETE /admin/eventsources/{eventSourceId} \
-H 'Authorization: Bearer {access-token}'
DELETE /eventsources/{eventSourceId}
Delete an Event Source
The Event Source must have no attached published or archived Options. Note - You must be the owner to delete an Event Source. You can view all of the Event Sources that you own (including their ‘id’) by using GET /eventsources
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventSourceId | path | string | true | The ID of the Event Source to delete. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Source successfully deleted | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Event Source does not exist | None |
| 409 | Conflict | Event Source could not be deleted due to a conflict | None |
| 500 | Internal Server Error | Internal error | None |
readEventSourceSubscriptions
Code samples
# You can also use wget
curl -X GET /admin/eventsources/{eventSourceId}/subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /eventsources/{eventSourceId}/subscriptions
Read a list of Subscriptions to this Event Source
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventSourceId | path | string | true | The ID of the Event Source to read Subscriptions for. |
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
Example responses
200 Response
[
{
"id": "string",
"username": "string",
"contact": "string",
"eventSource": {
"id": "string",
"name": "string"
},
"option": {
"id": "string",
"name": "string"
},
"apicSubscription": true
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Source subscriptions read successfully | Inline |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Event Source does not exist | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique Subscription ID. |
| » username | string | true | none | Username created for this Subscription. |
| » contact | string | true | none | The contact details of the owner of this Subscription. |
| » eventSource | object | true | none | Information about the Event Source this Subscription is for. |
| »» id | string | true | none | Unique Event Source ID. |
| »» name | string | true | none | Event Source name. |
| » option | object | true | none | Information about the option this Subscription is for. |
| »» id | string | true | none | Unique Option ID. |
| »» name | string | true | none | Option name. |
| » apicSubscription | boolean | false | none | Subscription added by API Connect |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). | |
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
readAllOptions
Code samples
# You can also use wget
curl -X GET /admin/options \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /options
List all Options created by the current user in an Organization. If a page range is specified, then this will return the requested range
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
Example responses
200 Response
[
{
"id": "string",
"owner": "string",
"organization": "string",
"eventSourceId": "string",
"alias": "string",
"name": "string",
"description": "string",
"gatewayGroups": [
"string"
],
"hidden": true,
"allowSubscriptions": true,
"controls": [
{
"id": "string",
"type": "approval",
"requests": [
{
"id": "string",
"owner": "string",
"lastUpdated": 0,
"status": "pending",
"description": "string",
"contact": "string",
"outcome": "string",
"subscriptionId": "string"
}
]
}
],
"groupVisibility": [
"string"
]
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Options successfully listed. | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique Option ID. |
| » owner | string | true | none | Option owner. |
| » organization | string | true | none | Organization this Option belongs to. |
| » eventSourceId | string | true | none | Event source that this option belongs to |
| » alias | string | true | none | Unique, descriptive alias for this option |
| » name | string | true | none | Descriptive name for this option |
| » description | string | false | none | Longer description used to describe what this option is used for |
| » gatewayGroups | [string] | true | none | List of gateway groups this option should be published to |
| » hidden | boolean | true | none | Indicates if this option is visible in the catalog (draft) |
| » allowSubscriptions | boolean | true | none | Indicates if this option is allowing new subscriptions |
| » controls | [anyOf] | true | none | Controls on this option |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
| »»» requests | [object] | true | none | none |
| »»»» id | string | true | none | Unique Option ID. |
| »»»» owner | string | true | none | Option owner. |
| »»»» lastUpdated | integer | false | none | Unix Epoch timestamp of last update to approval request. |
| »»»» status | string | true | none | The status of this approval request. |
| »»»» description | string | true | none | Description of why the request was created. |
| »»»» contact | string | true | none | Contact details of the person making the request. |
| »»»» outcome | string | false | none | Description of the outcome of this request. |
| »»»» subscriptionId | string | false | none | The id of the subscription associated with this request. |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
| »»» redactions | [anyOf] | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» type | string | true | none | Type of redaction. |
| »»»»»» replaceWith | string | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» type | any | true | none | Type of redaction. |
| »»»»»» replaceWith | number | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» type | string | true | none | Type of redaction. |
| »»»»»» algorithm | string | true | none | Algorithm to use for hashing the current value |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
| »»» schema | object | true | none | none |
| »»»» filtered | boolean | true | none | If true, any schema associated with the Event Source will be used to filter records sent to applications |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | number | false | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» megabytesPerSecond | number | false | none | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | any | false | none | none |
oneOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» trustPem | string | true | none | Certificate Authority in PEM format |
xor
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» identificationType | string | true | none | The type of Identification users will use to distinguish between Subscriptions. |
| »»»» identificationSubjectFields | [string] | false | none | Certificate Subject fields to identify users by if using MTLS identificationType. |
| »»»» subjectCommonName | string | true | none | Subject Common Name to match on. |
| »»»» subjectOrganization | string | false | none | Subject Organization to match on. |
| »»»» subjectCountry | string | false | none | Subject Country to match on. |
| »»»» subjectStateOrProvince | string | false | none | Subject Region to match on. |
| »»»» subjectLocality | string | false | none | Subject Locality to match on. |
| »»»» approvedCipherSuites | [string] | false | none | Cipher Suites that are approved for use. |
| »»»» disapprovedCipherSuites | [string] | false | none | Cipher Suites that are not approved for use. |
| »»»» notValidBefore | integer | false | none | Certificate not valid before time. |
| »»»» notValidAfter | integer | false | none | Certificate not valid after time. |
continued
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » groupVisibility | [string] | true | none | List of groups this option should be visible to in the catalog |
Enumerated Values
| Property | Value |
|---|---|
| type | approval |
| status | pending |
| status | approved |
| status | rejected |
| status | fulfilled |
| type | redaction |
| type | replaceString |
| type | replaceIntegral |
| type | replaceDouble |
| type | hash |
| algorithm | SHA-256 |
| algorithm | SHA-512 |
| type | schema-filtering |
| type | quota |
| type | mtls |
| identificationType | MTLS |
| identificationType | SASL |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). | |
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
createOption
Code samples
# You can also use wget
curl -X POST /admin/options \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /options
Create an option
Body parameter
{
"eventSourceId": "string",
"alias": "string",
"name": "string",
"description": "string",
"gatewayGroups": [
"string"
],
"hidden": true,
"allowSubscriptions": true,
"controls": [
{
"id": "string",
"type": "approval",
"requests": [
{
"id": "string",
"owner": "string",
"lastUpdated": 0,
"status": "pending",
"description": "string",
"contact": "string",
"outcome": "string",
"subscriptionId": "string"
}
]
}
],
"groupVisibility": [
"string"
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | true | Option data |
| » eventSourceId | body | string | true | Event source that this option belongs to |
| » alias | body | string | true | Unique, descriptive alias for this option |
| » name | body | string | true | Descriptive name for this option |
| » description | body | string | false | Longer description used to describe what this option is used for |
| » gatewayGroups | body | [string] | true | List of gateway groups this option should be published to |
| » hidden | body | boolean | true | Indicates if this option is visible in the catalog (draft) |
| » allowSubscriptions | body | boolean | true | Indicates if this option is allowing new subscriptions |
| » controls | body | [anyOf] | true | Controls on this option |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» requests | body | [object] | true | none |
| »»»» id | body | string | true | Unique Option ID. |
| »»»» owner | body | string | true | Option owner. |
| »»»» lastUpdated | body | integer | false | Unix Epoch timestamp of last update to approval request. |
| »»»» status | body | string | true | The status of this approval request. |
| »»»» description | body | string | true | Description of why the request was created. |
| »»»» contact | body | string | true | Contact details of the person making the request. |
| »»»» outcome | body | string | false | Description of the outcome of this request. |
| »»»» subscriptionId | body | string | false | The id of the subscription associated with this request. |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» redactions | body | [anyOf] | true | none |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» path | body | string | true | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
| »»»»» anonymous | body | object | false | none |
| »»»»»» type | body | string | true | Type of redaction. |
| »»»»»» replaceWith | body | string | true | The value to replace with |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» path | body | string | true | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
| »»»»» anonymous | body | object | false | none |
| »»»»»» type | body | any | true | Type of redaction. |
| »»»»»» replaceWith | body | number | true | The value to replace with |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» path | body | string | true | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
| »»»»» anonymous | body | object | false | none |
| »»»»»» type | body | string | true | Type of redaction. |
| »»»»»» algorithm | body | string | true | Algorithm to use for hashing the current value |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» schema | body | object | true | none |
| »»»» filtered | body | boolean | true | If true, any schema associated with the Event Source will be used to filter records sent to applications |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» anonymous | body | object | false | none |
| »»»» megabytesPerSecond | body | number | true | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | body | number | false | Upper limit to messages per second produced/consumed |
| »»» anonymous | body | object | false | none |
| »»»» megabytesPerSecond | body | number | false | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | body | number | true | Upper limit to messages per second produced/consumed |
| »»» anonymous | body | object | false | none |
| »»»» megabytesPerSecond | body | number | true | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | body | number | true | Upper limit to messages per second produced/consumed |
| »» anonymous | body | any | false | none |
| »»» anonymous | body | any | false | none |
| »»»» anonymous | body | object | false | none |
| »»»»» trustPem | body | string | true | Certificate Authority in PEM format |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» acceptProfileCa | body | boolean | true | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»» anonymous | body | object | false | none |
| »»»»»» acceptOrgCa | body | boolean | true | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
| »»»»» anonymous | body | object | false | none |
| »»»»»» acceptProfileCa | body | boolean | true | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»»» acceptOrgCa | body | boolean | true | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
| »»» anonymous | body | object | false | none |
| »»»» id | body | string | true | Unique Control ID. |
| »»»» type | body | string | true | none |
| »»»» identificationType | body | string | true | The type of Identification users will use to distinguish between Subscriptions. |
| »»»» identificationSubjectFields | body | [string] | false | Certificate Subject fields to identify users by if using MTLS identificationType. |
| »»»» subjectCommonName | body | string | true | Subject Common Name to match on. |
| »»»» subjectOrganization | body | string | false | Subject Organization to match on. |
| »»»» subjectCountry | body | string | false | Subject Country to match on. |
| »»»» subjectStateOrProvince | body | string | false | Subject Region to match on. |
| »»»» subjectLocality | body | string | false | Subject Locality to match on. |
| »»»» approvedCipherSuites | body | [string] | false | Cipher Suites that are approved for use. |
| »»»» disapprovedCipherSuites | body | [string] | false | Cipher Suites that are not approved for use. |
| »»»» notValidBefore | body | integer | false | Certificate not valid before time. |
| »»»» notValidAfter | body | integer | false | Certificate not valid after time. |
| » groupVisibility | body | [string] | false | List of groups this option should be visible to in the catalog |
Enumerated Values
| Parameter | Value |
|---|---|
| »»» type | approval |
| »»»» status | pending |
| »»»» status | approved |
| »»»» status | rejected |
| »»»» status | fulfilled |
| »»» type | redaction |
| »»»»»» type | replaceString |
| »»»»»» type | replaceIntegral |
| »»»»»» type | replaceDouble |
| »»»»»» type | hash |
| »»»»»» algorithm | SHA-256 |
| »»»»»» algorithm | SHA-512 |
| »»» type | schema-filtering |
| »»» type | quota |
| »»»» type | mtls |
| »»»» identificationType | MTLS |
| »»»» identificationType | SASL |
| »»»» identificationSubjectFields | subjectCommonName |
| »»»» identificationSubjectFields | subjectOrganization |
| »»»» identificationSubjectFields | subjectCountry |
| »»»» identificationSubjectFields | subjectStateOrProvince |
| »»»» identificationSubjectFields | subjectLocality |
Example responses
200 Response
{
"id": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | The id of the created option | Inline |
| 400 | Bad Request | Invalid request, request data does not match schema or Controls specified not compatible with gateway group. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 426 | Upgrade Required | Limit reached, upgrade required to your service plan | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | false | none | none |
readOption
Code samples
# You can also use wget
curl -X GET /admin/options/{optionId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /options/{optionId}
Read an option
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| optionId | path | string | true | The ID of the Option to read. |
Example responses
200 Response
{
"id": "string",
"owner": "string",
"organization": "string",
"eventSourceId": "string",
"alias": "string",
"name": "string",
"description": "string",
"gatewayGroups": [
"string"
],
"hidden": true,
"allowSubscriptions": true,
"controls": [
{
"id": "string",
"type": "approval",
"requests": [
{
"id": "string",
"owner": "string",
"lastUpdated": 0,
"status": "pending",
"description": "string",
"contact": "string",
"outcome": "string",
"subscriptionId": "string"
}
]
}
],
"groupVisibility": [
"string"
]
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | The data for the requested option | Inline |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Option does not exist | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique Option ID. |
| » owner | string | true | none | Option owner. |
| » organization | string | true | none | Organization this Option belongs to. |
| » eventSourceId | string | true | none | Event source that this option belongs to |
| » alias | string | true | none | Unique, descriptive alias for this option |
| » name | string | true | none | Descriptive name for this option |
| » description | string | false | none | Longer description used to describe what this option is used for |
| » gatewayGroups | [string] | true | none | List of gateway groups this option should be published to |
| » hidden | boolean | true | none | Indicates if this option is visible in the catalog (draft) |
| » allowSubscriptions | boolean | true | none | Indicates if this option is allowing new subscriptions |
| » controls | [anyOf] | true | none | Controls on this option |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
| »»» requests | [object] | true | none | none |
| »»»» id | string | true | none | Unique Option ID. |
| »»»» owner | string | true | none | Option owner. |
| »»»» lastUpdated | integer | false | none | Unix Epoch timestamp of last update to approval request. |
| »»»» status | string | true | none | The status of this approval request. |
| »»»» description | string | true | none | Description of why the request was created. |
| »»»» contact | string | true | none | Contact details of the person making the request. |
| »»»» outcome | string | false | none | Description of the outcome of this request. |
| »»»» subscriptionId | string | false | none | The id of the subscription associated with this request. |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
| »»» redactions | [anyOf] | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» type | string | true | none | Type of redaction. |
| »»»»»» replaceWith | string | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» type | any | true | none | Type of redaction. |
| »»»»»» replaceWith | number | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» type | string | true | none | Type of redaction. |
| »»»»»» algorithm | string | true | none | Algorithm to use for hashing the current value |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
| »»» schema | object | true | none | none |
| »»»» filtered | boolean | true | none | If true, any schema associated with the Event Source will be used to filter records sent to applications |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | object | false | none | none |
| »»» id | string | true | none | Unique Control ID. |
| »»» type | string | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | number | false | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» megabytesPerSecond | number | false | none | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | any | false | none | none |
oneOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» trustPem | string | true | none | Certificate Authority in PEM format |
xor
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» identificationType | string | true | none | The type of Identification users will use to distinguish between Subscriptions. |
| »»»» identificationSubjectFields | [string] | false | none | Certificate Subject fields to identify users by if using MTLS identificationType. |
| »»»» subjectCommonName | string | true | none | Subject Common Name to match on. |
| »»»» subjectOrganization | string | false | none | Subject Organization to match on. |
| »»»» subjectCountry | string | false | none | Subject Country to match on. |
| »»»» subjectStateOrProvince | string | false | none | Subject Region to match on. |
| »»»» subjectLocality | string | false | none | Subject Locality to match on. |
| »»»» approvedCipherSuites | [string] | false | none | Cipher Suites that are approved for use. |
| »»»» disapprovedCipherSuites | [string] | false | none | Cipher Suites that are not approved for use. |
| »»»» notValidBefore | integer | false | none | Certificate not valid before time. |
| »»»» notValidAfter | integer | false | none | Certificate not valid after time. |
continued
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » groupVisibility | [string] | true | none | List of groups this option should be visible to in the catalog |
Enumerated Values
| Property | Value |
|---|---|
| type | approval |
| status | pending |
| status | approved |
| status | rejected |
| status | fulfilled |
| type | redaction |
| type | replaceString |
| type | replaceIntegral |
| type | replaceDouble |
| type | hash |
| algorithm | SHA-256 |
| algorithm | SHA-512 |
| type | schema-filtering |
| type | quota |
| type | mtls |
| identificationType | MTLS |
| identificationType | SASL |
updateOption
Code samples
# You can also use wget
curl -X PUT /admin/options/{optionId} \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}'
PUT /options/{optionId}
Update an option
Body parameter
{
"eventSourceId": "string",
"alias": "string",
"name": "string",
"description": "string",
"gatewayGroups": [
"string"
],
"hidden": true,
"allowSubscriptions": true,
"controls": [
{
"id": "string",
"type": "approval",
"requests": [
{
"id": "string",
"owner": "string",
"lastUpdated": 0,
"status": "pending",
"description": "string",
"contact": "string",
"outcome": "string",
"subscriptionId": "string"
}
]
}
],
"groupVisibility": [
"string"
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| optionId | path | string | true | The ID of the Option to update. |
| body | body | object | true | Option data |
| » eventSourceId | body | string | true | Event source that this option belongs to |
| » alias | body | string | true | Unique, descriptive alias for this option |
| » name | body | string | true | Descriptive name for this option |
| » description | body | string | false | Longer description used to describe what this option is used for |
| » gatewayGroups | body | [string] | true | List of gateway groups this option should be published to |
| » hidden | body | boolean | true | Indicates if this option is visible in the catalog (draft) |
| » allowSubscriptions | body | boolean | true | Indicates if this option is allowing new subscriptions |
| » controls | body | [anyOf] | true | Controls on this option |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» requests | body | [object] | true | none |
| »»»» id | body | string | true | Unique Option ID. |
| »»»» owner | body | string | true | Option owner. |
| »»»» lastUpdated | body | integer | false | Unix Epoch timestamp of last update to approval request. |
| »»»» status | body | string | true | The status of this approval request. |
| »»»» description | body | string | true | Description of why the request was created. |
| »»»» contact | body | string | true | Contact details of the person making the request. |
| »»»» outcome | body | string | false | Description of the outcome of this request. |
| »»»» subscriptionId | body | string | false | The id of the subscription associated with this request. |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» redactions | body | [anyOf] | true | none |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» path | body | string | true | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
| »»»»» anonymous | body | object | false | none |
| »»»»»» type | body | string | true | Type of redaction. |
| »»»»»» replaceWith | body | string | true | The value to replace with |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» path | body | string | true | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
| »»»»» anonymous | body | object | false | none |
| »»»»»» type | body | any | true | Type of redaction. |
| »»»»»» replaceWith | body | number | true | The value to replace with |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» path | body | string | true | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
| »»»»» anonymous | body | object | false | none |
| »»»»»» type | body | string | true | Type of redaction. |
| »»»»»» algorithm | body | string | true | Algorithm to use for hashing the current value |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» schema | body | object | true | none |
| »»»» filtered | body | boolean | true | If true, any schema associated with the Event Source will be used to filter records sent to applications |
| »» anonymous | body | object | false | none |
| »»» id | body | string | true | Unique Control ID. |
| »»» type | body | string | true | none |
| »»» anonymous | body | object | false | none |
| »»»» megabytesPerSecond | body | number | true | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | body | number | false | Upper limit to messages per second produced/consumed |
| »»» anonymous | body | object | false | none |
| »»»» megabytesPerSecond | body | number | false | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | body | number | true | Upper limit to messages per second produced/consumed |
| »»» anonymous | body | object | false | none |
| »»»» megabytesPerSecond | body | number | true | Upper limit to megabytes per second produced/consumed |
| »»»» messagesPerSecond | body | number | true | Upper limit to messages per second produced/consumed |
| »» anonymous | body | any | false | none |
| »»» anonymous | body | any | false | none |
| »»»» anonymous | body | object | false | none |
| »»»»» trustPem | body | string | true | Certificate Authority in PEM format |
| »»»» anonymous | body | any | false | none |
| »»»»» anonymous | body | object | false | none |
| »»»»»» acceptProfileCa | body | boolean | true | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»» anonymous | body | object | false | none |
| »»»»»» acceptOrgCa | body | boolean | true | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
| »»»»» anonymous | body | object | false | none |
| »»»»»» acceptProfileCa | body | boolean | true | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»»» acceptOrgCa | body | boolean | true | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
| »»» anonymous | body | object | false | none |
| »»»» id | body | string | true | Unique Control ID. |
| »»»» type | body | string | true | none |
| »»»» identificationType | body | string | true | The type of Identification users will use to distinguish between Subscriptions. |
| »»»» identificationSubjectFields | body | [string] | false | Certificate Subject fields to identify users by if using MTLS identificationType. |
| »»»» subjectCommonName | body | string | true | Subject Common Name to match on. |
| »»»» subjectOrganization | body | string | false | Subject Organization to match on. |
| »»»» subjectCountry | body | string | false | Subject Country to match on. |
| »»»» subjectStateOrProvince | body | string | false | Subject Region to match on. |
| »»»» subjectLocality | body | string | false | Subject Locality to match on. |
| »»»» approvedCipherSuites | body | [string] | false | Cipher Suites that are approved for use. |
| »»»» disapprovedCipherSuites | body | [string] | false | Cipher Suites that are not approved for use. |
| »»»» notValidBefore | body | integer | false | Certificate not valid before time. |
| »»»» notValidAfter | body | integer | false | Certificate not valid after time. |
| » groupVisibility | body | [string] | false | List of groups this option should be visible to in the catalog |
Enumerated Values
| Parameter | Value |
|---|---|
| »»» type | approval |
| »»»» status | pending |
| »»»» status | approved |
| »»»» status | rejected |
| »»»» status | fulfilled |
| »»» type | redaction |
| »»»»»» type | replaceString |
| »»»»»» type | replaceIntegral |
| »»»»»» type | replaceDouble |
| »»»»»» type | hash |
| »»»»»» algorithm | SHA-256 |
| »»»»»» algorithm | SHA-512 |
| »»» type | schema-filtering |
| »»» type | quota |
| »»»» type | mtls |
| »»»» identificationType | MTLS |
| »»»» identificationType | SASL |
| »»»» identificationSubjectFields | subjectCommonName |
| »»»» identificationSubjectFields | subjectOrganization |
| »»»» identificationSubjectFields | subjectCountry |
| »»»» identificationSubjectFields | subjectStateOrProvince |
| »»»» identificationSubjectFields | subjectLocality |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Option successfully updated | None |
| 400 | Bad Request | Invalid request, request data does not match schema or Controls specified not compatible with gateway group. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Option does not exist | None |
| 500 | Internal Server Error | Internal error | None |
deleteOption
Code samples
# You can also use wget
curl -X DELETE /admin/options/{optionId} \
-H 'Authorization: Bearer {access-token}'
DELETE /options/{optionId}
Delete an Option.
The Option must be unpublished with no remaining Subscriptions. Note - You must be the owner to delete an Option. You can view all of the Options that you own (including their ‘id’) by using GET /options
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| optionId | path | string | true | The ID of the Option to delete. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Option successfully deleted | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Option does not exist | None |
| 409 | Conflict | Option could not be deleted due to a conflict | None |
| 500 | Internal Server Error | Internal error | None |
exportAPICAsyncAPI
Code samples
# You can also use wget
curl -X GET /admin/options/{optionId}/apicasyncapi \
-H 'Accept: application/yaml' \
-H 'Authorization: Bearer {access-token}'
GET /options/{optionId}/apicasyncapi
Generate an AsyncAPI document for a selected Option with connections added for IBM API Connect.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| optionId | path | string | true | The ID of the option in the Event source. |
| version | query | string | false | The version of AsyncAPI |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | AsyncAPI successfully generated. | string |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | Option not found | None |
| 422 | Unprocessable Entity | Cannot export option with approval control | None |
| 500 | Internal Server Error | Internal error | None |
exportAsyncAPI
Code samples
# You can also use wget
curl -X GET /admin/options/{optionId}/asyncapi \
-H 'Accept: application/yaml' \
-H 'Authorization: Bearer {access-token}'
GET /options/{optionId}/asyncapi
Generate an AsyncAPI document for a selected Option.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| optionId | path | string | true | The ID of the option in the Event source. |
| version | query | string | false | The version of AsyncAPI |
Example responses
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | AsyncAPI successfully generated. | string |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | Option not found | None |
| 500 | Internal Server Error | Internal error | None |
addGroupVisibility
Code samples
# You can also use wget
curl -X POST /admin/groupvisibility \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /groupvisibility
Add options to the provided group visibility
Body parameter
{
"group": "string",
"options": [
"string"
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | true | Group Visibility data |
| » group | body | string | true | Group to associate these options with |
| » options | body | [string] | true | List of options visible to this group |
Example responses
200 Response
{
"group": "string",
"options": [
{
"id": "string",
"alias": "string",
"name": "string",
"controls": [
"approval"
],
"eventSourceName": "string",
"topicName": "string",
"capabilities": [
"consume"
],
"hidden": true,
"allowSubscriptions": true,
"groupVisibility": [
"string"
]
}
]
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Options that have had their group visibility added | Inline |
| 400 | Bad Request | Invalid request, request data does not match schema or provided Option ID does not exist. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » group | string | true | none | Group associated with these options |
| » options | [object] | true | none | List of options visible to this group |
| »» id | string | true | none | The ID for this option |
| »» alias | string | true | none | The alias for this option |
| »» name | string | true | none | The name for this option |
| »» controls | [string] | true | none | none |
| »» eventSourceName | string | true | none | The Event Source name for this Option |
| »» topicName | string | true | none | The Kafka Topic for this Option |
| »» capabilities | [string] | true | none | none |
| »» hidden | boolean | false | none | Indicates if this option is visible in the catalog (draft) |
| »» allowSubscriptions | boolean | false | none | Indicates if this option is allowing new subscriptions |
| »» groupVisibility | [string] | false | none | List of groups this option should be visible to in the catalog |
readAllEventEndpoints
Code samples
# You can also use wget
curl -X GET /admin/eventendpoints \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /eventendpoints
List all Event Endpoints in an Organization. If a page range is specified, then this will return the requested range.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
| filterBy | query | string | false | capability to filterBy |
Enumerated Values
| Parameter | Value |
|---|---|
| filterBy | consume |
| filterBy | produce |
Example responses
200 Response
[
{
"id": "string",
"owner": "string",
"organization": "string",
"clusterId": "string",
"type": "kafka",
"encoding": "unknown",
"name": "string",
"contact": "string",
"description": "string",
"topic": {
"name": "string",
"partitions": 0,
"replicas": 0,
"uuid": "string"
},
"schema": {
"type": "avro",
"content": "string",
"description": "string"
},
"tags": [
"string"
],
"sampleMessages": [
"string"
],
"capabilities": [
"consume"
],
"options": [
{
"id": "string",
"owner": "string",
"organization": "string",
"eventSourceId": "string",
"alias": "string",
"name": "string",
"description": "string",
"gatewayGroups": [
"string"
],
"hidden": true,
"allowSubscriptions": true,
"controls": [
{
"id": "string",
"type": "approval",
"requests": [
{
"id": "string",
"owner": "string",
"lastUpdated": 0,
"status": "pending",
"description": "string",
"contact": "string",
"outcome": "string",
"subscriptionId": "string"
}
]
}
],
"gatewaysPublishedTo": [
{
"id": "string",
"owner": "string",
"organization": "string",
"gatewayId": "string",
"group": "string",
"organizations": [
"string"
],
"servedOrganizations": [
"string"
],
"contact": "string",
"lastContact": 0,
"endpoints": [
{
"host": "string",
"port": 0,
"ssl": false,
"certificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
]
}
],
"version": "string",
"productVersion": "string",
"features": [
"string"
],
"deploymentMode": "string",
"capabilities": {}
}
]
}
],
"collaborators": {
"groups": [
"string"
],
"contacts": [
"string"
]
}
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Endpoints successfully listed. | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique ID of related EventSource. |
| » owner | string | true | none | Owner of related EventSource. |
| » organization | string | true | none | Organization the related EventSource belongs to. |
| » clusterId | string | true | none | ID for the cluster that contains the connection details for this Event Source. |
| » type | string | true | none | Type of Event Source |
| » encoding | string | true | none | The encoding of the data on this Event Source |
| » name | string | true | none | Event Source name |
| » contact | string | true | none | Who to contact for more information about this Event Source. |
| » description | string | false | none | A description for this Event Source |
| » topic | object | false | none | none |
| »» name | string | true | none | Actual topic name in the cluster. |
| »» partitions | number | false | none | The number of partitions for this topic. |
| »» replicas | number | false | none | The number of replicas for this topic. |
| »» uuid | string | false | none | The uuid of the topic. |
| » schema | object | false | none | none |
| »» type | string | false | none | Type of Schema from the list of valid types |
| »» content | string | false | none | Contents of the Schema |
| »» description | string | false | none | Description of the data available on the Event Source |
| » tags | [string] | false | none | List of tags associated with this Event Source |
| » sampleMessages | [string] | false | none | none |
| » capabilities | [string] | true | none | none |
| » options | [object] | true | none | none |
| »» id | string | true | none | Unique Option ID. |
| »» owner | string | true | none | Option owner. |
| »» organization | string | true | none | Organization this Option belongs to. |
| »» eventSourceId | string | true | none | Event source that this option belongs to |
| »» alias | string | true | none | Unique, descriptive alias for this option |
| »» name | string | true | none | Descriptive name for this option |
| »» description | string | false | none | Longer description used to describe what this option is used for |
| »» gatewayGroups | [string] | true | none | List of gateway groups this option should be published to |
| »» hidden | boolean | true | none | Indicates if this option is visible in the catalog (draft) |
| »» allowSubscriptions | boolean | true | none | Indicates if this option is allowing new subscriptions |
| »» controls | [anyOf] | true | none | Controls on this option |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» requests | [object] | true | none | none |
| »»»»» id | string | true | none | Unique Option ID. |
| »»»»» owner | string | true | none | Option owner. |
| »»»»» lastUpdated | integer | false | none | Unix Epoch timestamp of last update to approval request. |
| »»»»» status | string | true | none | The status of this approval request. |
| »»»»» description | string | true | none | Description of why the request was created. |
| »»»»» contact | string | true | none | Contact details of the person making the request. |
| »»»»» outcome | string | false | none | Description of the outcome of this request. |
| »»»»» subscriptionId | string | false | none | The id of the subscription associated with this request. |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» redactions | [anyOf] | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» type | string | true | none | Type of redaction. |
| »»»»»»» replaceWith | string | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» type | any | true | none | Type of redaction. |
| »»»»»»» replaceWith | number | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» type | string | true | none | Type of redaction. |
| »»»»»»» algorithm | string | true | none | Algorithm to use for hashing the current value |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» schema | object | true | none | none |
| »»»»» filtered | boolean | true | none | If true, any schema associated with the Event Source will be used to filter records sent to applications |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»»» messagesPerSecond | number | false | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» megabytesPerSecond | number | false | none | Upper limit to megabytes per second produced/consumed |
| »»»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
oneOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» trustPem | string | true | none | Certificate Authority in PEM format |
xor
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» id | string | true | none | Unique Control ID. |
| »»»»» type | string | true | none | none |
| »»»»» identificationType | string | true | none | The type of Identification users will use to distinguish between Subscriptions. |
| »»»»» identificationSubjectFields | [string] | false | none | Certificate Subject fields to identify users by if using MTLS identificationType. |
| »»»»» subjectCommonName | string | true | none | Subject Common Name to match on. |
| »»»»» subjectOrganization | string | false | none | Subject Organization to match on. |
| »»»»» subjectCountry | string | false | none | Subject Country to match on. |
| »»»»» subjectStateOrProvince | string | false | none | Subject Region to match on. |
| »»»»» subjectLocality | string | false | none | Subject Locality to match on. |
| »»»»» approvedCipherSuites | [string] | false | none | Cipher Suites that are approved for use. |
| »»»»» disapprovedCipherSuites | [string] | false | none | Cipher Suites that are not approved for use. |
| »»»»» notValidBefore | integer | false | none | Certificate not valid before time. |
| »»»»» notValidAfter | integer | false | none | Certificate not valid after time. |
continued
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» gatewaysPublishedTo | [object] | true | none | List of gateways that this option has been published to. |
| »»» id | string | true | none | Unique Event Gateway ID |
| »»» owner | string | true | none | Owner of the Event Gateway. |
| »»» organization | string | true | none | Organization this Event Gateway belongs to. |
| »»» gatewayId | string | true | none | Unique Event Gateway ID within this group. |
| »»» group | string | true | none | Event Gateway group name. |
| »»» organizations | [string] | true | none | Organizations this Event Gateway serves |
| »»» servedOrganizations | [string] | true | none | Organizations this Event Gateway serves |
| »»» contact | string | false | none | The contact information for this Event Gateway |
| »»» lastContact | integer | true | none | Epoch time in ms of the last contact from this gateway. |
| »»» endpoints | [object] | true | none | Endpoints that the gateway is listening on. |
| »»»» host | string | true | none | Kafka server host name. |
| »»»» port | integer | true | none | Kafka server port. |
| »»»» ssl | boolean | false | none | Connect over SSL. |
| »»»» certificates | [object] | false | none | Certificates or CAs to trust, required to connect to the server via SSL. |
| »»»»» pem | string | true | none | Certificate in PEM format |
| »»»»» subject | string | false | none | Subject name of the certificate |
| »»»»» sans | [string] | false | none | A list of subject alternative names of the certificate |
| »»»»» issuer | string | false | none | Issuer of the certificate |
| »»»»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| »»» version | string | false | none | Version of the gateway |
| »»» productVersion | string | false | none | EEM product version. |
| »»» features | [string] | false | none | Feature set in use by gateway |
| »»» deploymentMode | string | false | none | Type of gateway deployment |
| »»» capabilities | object | false | none | Freeform Description of what capabilities the gateway has |
| » collaborators | object | true | none | Collaborators for this endpoint |
| »» groups | [string] | true | none | List of groups that collaborate on this event endpoint |
| »» contacts | [string] | true | none | List of contacts that collaborate on this event endpoint |
Enumerated Values
| Property | Value |
|---|---|
| type | kafka |
| encoding | unknown |
| encoding | text/plain |
| encoding | application/octet-stream |
| encoding | application/json |
| encoding | avro/binary |
| encoding | avro/json |
| type | avro |
| type | json |
| type | unknown |
| type | approval |
| status | pending |
| status | approved |
| status | rejected |
| status | fulfilled |
| type | redaction |
| type | replaceString |
| type | replaceIntegral |
| type | replaceDouble |
| type | hash |
| algorithm | SHA-256 |
| algorithm | SHA-512 |
| type | schema-filtering |
| type | quota |
| type | mtls |
| identificationType | MTLS |
| identificationType | SASL |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). | |
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
readEventEndpoint
Code samples
# You can also use wget
curl -X GET /admin/eventendpoints/{eventSourceId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /eventendpoints/{eventSourceId}
Read an event endpoint
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventSourceId | path | string | true | The ID of the Event Source to read an Event Endpoint from. |
Example responses
200 Response
{
"id": "string",
"owner": "string",
"organization": "string",
"clusterId": "string",
"type": "kafka",
"encoding": "unknown",
"name": "string",
"contact": "string",
"description": "string",
"topic": {
"name": "string",
"partitions": 0,
"replicas": 0,
"uuid": "string"
},
"schema": {
"type": "avro",
"content": "string",
"description": "string"
},
"tags": [
"string"
],
"sampleMessages": [
"string"
],
"capabilities": [
"consume"
],
"options": [
{
"id": "string",
"owner": "string",
"organization": "string",
"eventSourceId": "string",
"alias": "string",
"name": "string",
"description": "string",
"gatewayGroups": [
"string"
],
"hidden": true,
"allowSubscriptions": true,
"controls": [
{
"id": "string",
"type": "approval",
"requests": [
{
"id": "string",
"owner": "string",
"lastUpdated": 0,
"status": "pending",
"description": "string",
"contact": "string",
"outcome": "string",
"subscriptionId": "string"
}
]
}
],
"gatewaysPublishedTo": [
{
"id": "string",
"owner": "string",
"organization": "string",
"gatewayId": "string",
"group": "string",
"organizations": [
"string"
],
"servedOrganizations": [
"string"
],
"contact": "string",
"lastContact": 0,
"endpoints": [
{
"host": "string",
"port": 0,
"ssl": false,
"certificates": [
{
"pem": "string",
"subject": "string",
"sans": [
"string"
],
"issuer": "string",
"expiry": 0
}
]
}
],
"version": "string",
"productVersion": "string",
"features": [
"string"
],
"deploymentMode": "string",
"capabilities": {}
}
]
}
],
"collaborators": {
"groups": [
"string"
],
"contacts": [
"string"
]
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Endpoint successfully retrieved. | Inline |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Event Endpoint does not exist | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique ID of related EventSource. |
| » owner | string | true | none | Owner of related EventSource. |
| » organization | string | true | none | Organization the related EventSource belongs to. |
| » clusterId | string | true | none | ID for the cluster that contains the connection details for this Event Source. |
| » type | string | true | none | Type of Event Source |
| » encoding | string | true | none | The encoding of the data on this Event Source |
| » name | string | true | none | Event Source name |
| » contact | string | true | none | Who to contact for more information about this Event Source. |
| » description | string | false | none | A description for this Event Source |
| » topic | object | false | none | none |
| »» name | string | true | none | Actual topic name in the cluster. |
| »» partitions | number | false | none | The number of partitions for this topic. |
| »» replicas | number | false | none | The number of replicas for this topic. |
| »» uuid | string | false | none | The uuid of the topic. |
| » schema | object | false | none | none |
| »» type | string | false | none | Type of Schema from the list of valid types |
| »» content | string | false | none | Contents of the Schema |
| »» description | string | false | none | Description of the data available on the Event Source |
| » tags | [string] | false | none | List of tags associated with this Event Source |
| » sampleMessages | [string] | false | none | none |
| » capabilities | [string] | true | none | none |
| » options | [object] | true | none | none |
| »» id | string | true | none | Unique Option ID. |
| »» owner | string | true | none | Option owner. |
| »» organization | string | true | none | Organization this Option belongs to. |
| »» eventSourceId | string | true | none | Event source that this option belongs to |
| »» alias | string | true | none | Unique, descriptive alias for this option |
| »» name | string | true | none | Descriptive name for this option |
| »» description | string | false | none | Longer description used to describe what this option is used for |
| »» gatewayGroups | [string] | true | none | List of gateway groups this option should be published to |
| »» hidden | boolean | true | none | Indicates if this option is visible in the catalog (draft) |
| »» allowSubscriptions | boolean | true | none | Indicates if this option is allowing new subscriptions |
| »» controls | [anyOf] | true | none | Controls on this option |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» requests | [object] | true | none | none |
| »»»»» id | string | true | none | Unique Option ID. |
| »»»»» owner | string | true | none | Option owner. |
| »»»»» lastUpdated | integer | false | none | Unix Epoch timestamp of last update to approval request. |
| »»»»» status | string | true | none | The status of this approval request. |
| »»»»» description | string | true | none | Description of why the request was created. |
| »»»»» contact | string | true | none | Contact details of the person making the request. |
| »»»»» outcome | string | false | none | Description of the outcome of this request. |
| »»»»» subscriptionId | string | false | none | The id of the subscription associated with this request. |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» redactions | [anyOf] | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» type | string | true | none | Type of redaction. |
| »»»»»»» replaceWith | string | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» type | any | true | none | Type of redaction. |
| »»»»»»» replaceWith | number | true | none | The value to replace with |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» path | string | true | none | The JSON path specifying the field to redact. JSON path is currently restricted to just field names (no arrays or functions) |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» type | string | true | none | Type of redaction. |
| »»»»»»» algorithm | string | true | none | Algorithm to use for hashing the current value |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
| »»»» schema | object | true | none | none |
| »»»»» filtered | boolean | true | none | If true, any schema associated with the Event Source will be used to filter records sent to applications |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | object | false | none | none |
| »»»» id | string | true | none | Unique Control ID. |
| »»»» type | string | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»»» messagesPerSecond | number | false | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» megabytesPerSecond | number | false | none | Upper limit to megabytes per second produced/consumed |
| »»»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» megabytesPerSecond | number | true | none | Upper limit to megabytes per second produced/consumed |
| »»»»» messagesPerSecond | number | true | none | Upper limit to messages per second produced/consumed |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»» anonymous | any | false | none | none |
allOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | any | false | none | none |
oneOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | object | false | none | none |
| »»»»»» trustPem | string | true | none | Certificate Authority in PEM format |
xor
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»» anonymous | any | false | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»»»» anonymous | object | false | none | none |
| »»»»»»» acceptProfileCa | boolean | true | none | boolean indicating whether to include the Author defined CA certificates in the MTLS truststore |
| »»»»»»» acceptOrgCa | boolean | true | none | boolean indicating whether to include the Admin defined CA certificates in the MTLS truststore |
and
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »»»» anonymous | object | false | none | none |
| »»»»» id | string | true | none | Unique Control ID. |
| »»»»» type | string | true | none | none |
| »»»»» identificationType | string | true | none | The type of Identification users will use to distinguish between Subscriptions. |
| »»»»» identificationSubjectFields | [string] | false | none | Certificate Subject fields to identify users by if using MTLS identificationType. |
| »»»»» subjectCommonName | string | true | none | Subject Common Name to match on. |
| »»»»» subjectOrganization | string | false | none | Subject Organization to match on. |
| »»»»» subjectCountry | string | false | none | Subject Country to match on. |
| »»»»» subjectStateOrProvince | string | false | none | Subject Region to match on. |
| »»»»» subjectLocality | string | false | none | Subject Locality to match on. |
| »»»»» approvedCipherSuites | [string] | false | none | Cipher Suites that are approved for use. |
| »»»»» disapprovedCipherSuites | [string] | false | none | Cipher Suites that are not approved for use. |
| »»»»» notValidBefore | integer | false | none | Certificate not valid before time. |
| »»»»» notValidAfter | integer | false | none | Certificate not valid after time. |
continued
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| »» gatewaysPublishedTo | [object] | true | none | List of gateways that this option has been published to. |
| »»» id | string | true | none | Unique Event Gateway ID |
| »»» owner | string | true | none | Owner of the Event Gateway. |
| »»» organization | string | true | none | Organization this Event Gateway belongs to. |
| »»» gatewayId | string | true | none | Unique Event Gateway ID within this group. |
| »»» group | string | true | none | Event Gateway group name. |
| »»» organizations | [string] | true | none | Organizations this Event Gateway serves |
| »»» servedOrganizations | [string] | true | none | Organizations this Event Gateway serves |
| »»» contact | string | false | none | The contact information for this Event Gateway |
| »»» lastContact | integer | true | none | Epoch time in ms of the last contact from this gateway. |
| »»» endpoints | [object] | true | none | Endpoints that the gateway is listening on. |
| »»»» host | string | true | none | Kafka server host name. |
| »»»» port | integer | true | none | Kafka server port. |
| »»»» ssl | boolean | false | none | Connect over SSL. |
| »»»» certificates | [object] | false | none | Certificates or CAs to trust, required to connect to the server via SSL. |
| »»»»» pem | string | true | none | Certificate in PEM format |
| »»»»» subject | string | false | none | Subject name of the certificate |
| »»»»» sans | [string] | false | none | A list of subject alternative names of the certificate |
| »»»»» issuer | string | false | none | Issuer of the certificate |
| »»»»» expiry | integer | false | none | Expiration date of the certificate in epoch millis |
| »»» version | string | false | none | Version of the gateway |
| »»» productVersion | string | false | none | EEM product version. |
| »»» features | [string] | false | none | Feature set in use by gateway |
| »»» deploymentMode | string | false | none | Type of gateway deployment |
| »»» capabilities | object | false | none | Freeform Description of what capabilities the gateway has |
| » collaborators | object | true | none | Collaborators for this endpoint |
| »» groups | [string] | true | none | List of groups that collaborate on this event endpoint |
| »» contacts | [string] | true | none | List of contacts that collaborate on this event endpoint |
Enumerated Values
| Property | Value |
|---|---|
| type | kafka |
| encoding | unknown |
| encoding | text/plain |
| encoding | application/octet-stream |
| encoding | application/json |
| encoding | avro/binary |
| encoding | avro/json |
| type | avro |
| type | json |
| type | unknown |
| type | approval |
| status | pending |
| status | approved |
| status | rejected |
| status | fulfilled |
| type | redaction |
| type | replaceString |
| type | replaceIntegral |
| type | replaceDouble |
| type | hash |
| algorithm | SHA-256 |
| algorithm | SHA-512 |
| type | schema-filtering |
| type | quota |
| type | mtls |
| identificationType | MTLS |
| identificationType | SASL |
readAllProfileCACertificates
Code samples
# You can also use wget
curl -X GET /admin/profile/ca \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /profile/ca
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
Example responses
200 Response
[
{
"id": "string",
"subject": "string",
"issuer": "string",
"expiry": 0,
"pem": "string",
"owned": true
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Get profile CA certificates for a user | Inline |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | ID of CA certificate |
| » subject | string | true | none | Subject name of the certificate |
| » issuer | string | true | none | Issuer of the certificate |
| » expiry | integer | true | none | Expiration date of the certificate in epoch millis |
| » pem | string | true | none | PEM |
| » owned | boolean | true | none | Is the requester the owner of this CA certificate |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). |
createProfileCACertificate
Code samples
# You can also use wget
curl -X POST /admin/profile/ca \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /profile/ca
Create an author CA Certificate
Body parameter
{
"trustPem": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | true | none |
| » trustPem | body | string | true | PEM |
Example responses
200 Response
{
"validCACertificates": [
{
"id": "string",
"pem": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
"existingCertificate": true
}
],
"invalidCertificates": [
{
"pem": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst"
}
]
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | CA Certificates successfully processed. Non-CA Certificates will be ignored. If the payload contains any CA certificates that have previously been uploaded, these will not be processed, and the ID of the original CA certificate will be returned in the response | Inline |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » validCACertificates | [object] | false | none | Array of all successfully processed CA Certificates |
| »» id | string | false | none | none |
| »» pem | string | false | none | PEM |
| »» existingCertificate | boolean | false | none | Indicating if the certificate already existed in the store and the existing record was returned. |
| » invalidCertificates | [object] | false | none | Array of all non CA Certificates that were ignored |
| »» pem | string | false | none | PEM |
readProfileCACertificate
Code samples
# You can also use wget
curl -X GET /admin/profile/ca/{caId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /profile/ca/{caId}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| caId | path | string | true | The ID of the CA Certificate. |
Example responses
200 Response
{
"id": "string",
"subject": "string",
"issuer": "string",
"expiry": 0,
"pem": "string",
"owned": true
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Get a profile CA certificate for a user | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | ID of CA certificate |
| » subject | string | true | none | Subject name of the certificate |
| » issuer | string | true | none | Issuer of the certificate |
| » expiry | integer | true | none | Expiration date of the certificate in epoch millis |
| » pem | string | true | none | PEM |
| » owned | boolean | true | none | Is the requester the owner of this CA certificate |
deleteProfileCACertificate
Code samples
# You can also use wget
curl -X DELETE /admin/profile/ca/{caId} \
-H 'Authorization: Bearer {access-token}'
DELETE /profile/ca/{caId}
Delete an author CA Certificate
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| caId | path | string | true | The ID of the CA Certificate to be deleted. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | CA Certificate deleted successfully | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | CA Certificate does not exist. | None |
| 500 | Internal Server Error | Internal error | None |
readAllOrgCACertificates
Code samples
# You can also use wget
curl -X GET /admin/organization/ca \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /organization/ca
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
Example responses
200 Response
[
{
"id": "string",
"subject": "string",
"issuer": "string",
"expiry": 0,
"pem": "string",
"owned": true
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Get organization CA certificates | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | ID of CA certificate |
| » subject | string | true | none | Subject name of the certificate |
| » issuer | string | true | none | Issuer of the certificate |
| » expiry | integer | true | none | Expiration date of the certificate in epoch millis |
| » pem | string | true | none | PEM |
| » owned | boolean | true | none | Is the requester the owner of this CA certificate |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | ei-pagination-total | integer | Total number of items available for retrieval (including current page). |
createOrgCACertificate
Code samples
# You can also use wget
curl -X POST /admin/organization/ca \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /organization/ca
Create an organization CA Certificate
Body parameter
{
"trustPem": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | true | none |
| » trustPem | body | string | true | PEM |
Example responses
200 Response
{
"validCACertificates": [
{
"id": "string",
"pem": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
"existingCertificate": true
}
],
"invalidCertificates": [
{
"pem": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst"
}
]
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Author CA Certificate successfully created | Inline |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » validCACertificates | [object] | false | none | Array of all successfully processed CA Certificates |
| »» id | string | false | none | none |
| »» pem | string | false | none | PEM |
| »» existingCertificate | boolean | false | none | Indicating if the certificate already existed in the store and the existing record was returned. |
| » invalidCertificates | [object] | false | none | Array of all non CA Certificates that were ignored |
| »» pem | string | false | none | PEM |
readOrgCACertificate
Code samples
# You can also use wget
curl -X GET /admin/organization/ca/{caId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /organization/ca/{caId}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| caId | path | string | true | The ID of the CA Certificate. |
Example responses
200 Response
{
"id": "string",
"subject": "string",
"issuer": "string",
"expiry": 0,
"pem": "string",
"owned": true
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Get a Organization CA certificate for a user | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | ID of CA certificate |
| » subject | string | true | none | Subject name of the certificate |
| » issuer | string | true | none | Issuer of the certificate |
| » expiry | integer | true | none | Expiration date of the certificate in epoch millis |
| » pem | string | true | none | PEM |
| » owned | boolean | true | none | Is the requester the owner of this CA certificate |
deleteOrgCACertificate
Code samples
# You can also use wget
curl -X DELETE /admin/organization/ca/{caId} \
-H 'Authorization: Bearer {access-token}'
DELETE /organization/ca/{caId}
Delete an org CA Certificate
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| caId | path | string | true | The ID of the CA Certificate to be deleted. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | CA Certificate deleted successfully | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | CA Certificate does not exist. | None |
| 500 | Internal Server Error | Internal error | None |
transferOwnership
Code samples
# You can also use wget
curl -X POST /admin/organization/transferOwnership \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /organization/transferOwnership
Transfer ownership of EEM assets from one user to another.
Body parameter
{
"ownedBy": "string",
"targetOwner": "string"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | true | none |
| » ownedBy | body | string | true | Owner of the assets. The subject to transfer from |
| » targetOwner | body | string | true | New Owner of the assets. The subject to be transferred to |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Assets successfully transferred | None |
| 400 | Bad Request | Invalid request | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | Requested owner(s) do not exist | None |
| 409 | Conflict | Conflict cannot make transfer between users | None |
| 500 | Internal Server Error | Internal error | None |
readAllUserAssets
Code samples
# You can also use wget
curl -X GET /admin/userassets \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /userassets
List all users and all their assets.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| page | query | integer | false | The page number of results to retrieve. If this number exceeds the available data, then the last page is returned. |
| maxPageSize | query | integer | false | The maximum number of entries to return for a given page. If not specified, all data items will be returned. |
| includeEmptyUsers | query | string | false | Flag to indicate whether to include users that have no assets. True means return all defined users, whether they have assets or not. Default is false. |
| search | query | string | false | Given a searched field, filter the response to only include users who match in username or in their subject i.e topics, options etc. |
Example responses
200 Response
[
{
"userId": "string",
"preferredUsername": "string",
"displayName": "string",
"roles": [
"string"
],
"assets": {
"eventsource": 0,
"cluster": 0,
"option": 0,
"subscription": 0,
"ca": 0,
"gateway": 0
}
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | List all defined users and their owned assets | Inline |
| 304 | Not Modified | Data not changed | None |
| 400 | Bad Request | Invalid request, only one of page and maxPageSize were supplied or max page size exceeded. | None |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » userId | string | true | none | User identifier |
| » preferredUsername | string | true | none | Preferred user name |
| » displayName | string | true | none | Display name |
| » roles | [string] | true | none | User roles |
| » assets | object | true | none | List of the different asset types and the number of instances of that type owned by the user |
| »» eventsource | number | true | none | none |
| »» cluster | number | true | none | none |
| »» option | number | true | none | none |
| »» subscription | number | true | none | none |
| »» ca | number | true | none | none |
| »» gateway | number | true | none | none |
createEventEndpointApprovalRequest
Code samples
# You can also use wget
curl -X POST /admin/eventendpoints/{eventEndpointId}/requests \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /eventendpoints/{eventEndpointId}/requests
Create a new approval request against this event endpoint.
Body parameter
{
"description": "string",
"contact": "string"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventEndpointId | path | string | true | The ID of the Event Endpoint to create an approval request against. |
| body | body | object | true | none |
| » description | body | string | true | Description of why the request was created. |
| » contact | body | string | true | Contact details of the person making the request. |
Example responses
200 Response
{
"id": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Event Endpoint Approval successfully requested. | Inline |
| 401 | Unauthorized | Not authorised, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | This Event Endpoint does not exist | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | approval request Id. |
updateEventEndpointApprovalRequest
Code samples
# You can also use wget
curl -X PUT /admin/eventendpoints/{eventEndpointId}/requests/{requestId} \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}'
PUT /eventendpoints/{eventEndpointId}/requests/{requestId}
Update the status of the chosen request.
Body parameter
{
"status": "pending"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventEndpointId | path | string | true | The ID of the EventEndpoint this request is for. |
| requestId | path | string | true | The ID of the Approval Request. |
| body | body | object | true | none |
| » status | body | string | true | Status of the request [pending, approved, rejected, fulfilled]. |
Enumerated Values
| Parameter | Value |
|---|---|
| » status | pending |
| » status | approved |
| » status | rejected |
| » status | fulfilled |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Request updated | None |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
deleteEventEndpointApprovalRequest
Code samples
# You can also use wget
curl -X DELETE /admin/eventendpoints/{eventEndpointId}/requests/{requestId} \
-H 'Authorization: Bearer {access-token}'
DELETE /eventendpoints/{eventEndpointId}/requests/{requestId}
Delete the chosen approval request.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| eventEndpointId | path | string | true | The ID of the Event Endpoint this delete request is for. |
| requestId | path | string | true | The ID of the Approval Request this delete request is for. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Approval Request deleted | None |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
eventEndpointApprovalRequestViewerList
Code samples
# You can also use wget
curl -X GET /admin/requests/user \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /requests/user
Get all approval requests created by this user.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| filterByStatus | query | string | false | approval status to filterBy |
Enumerated Values
| Parameter | Value |
|---|---|
| filterByStatus | pending |
| filterByStatus | approved |
| filterByStatus | rejected |
| filterByStatus | fulfilled |
Example responses
200 Response
{
"id": "string",
"lastUpdated": 0,
"contact": "string",
"justification": "string",
"status": "pending",
"eventSource": {
"id": "string",
"name": "string"
},
"eventEndpoint": {
"id": "string",
"name": "string"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | List with entries containing information about approval requests created by this user. | Inline |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 404 | Not Found | Option does not exist. | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique approval Request ID. |
| » lastUpdated | integer | false | none | Unix Epoch timestamp of when this approval Request was last updated |
| » contact | string | true | none | The contact details of the raiser of this approval Request. |
| » justification | string | true | none | The justification for this approval Request. |
| » status | string | true | none | The status of this approval request. |
| » eventSource | object | true | none | Information about the Event Source this Request is for. |
| »» id | string | true | none | Unique Event Source ID. |
| »» name | string | true | none | Event Source name. |
| » eventEndpoint | object | true | none | Information about the event endpoint this approval Request is for. |
| »» id | string | true | none | Unique Event Endpoint ID. |
| »» name | string | true | none | Event Endpoint name. |
Enumerated Values
| Property | Value |
|---|---|
| status | pending |
| status | approved |
| status | rejected |
| status | fulfilled |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |
eventEndpointApprovalRequestAdminList
Code samples
# You can also use wget
curl -X GET /admin/requests/admin \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
GET /requests/admin
Get all the requests created against options that this author owns.
Example responses
200 Response
{
"id": "string",
"lastUpdated": 0,
"contact": "string",
"justification": "string",
"status": "pending",
"eventSource": {
"id": "string",
"name": "string"
},
"eventEndpoint": {
"id": "string",
"name": "string"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | List with entries containing information about requests this owner needs to respond to. | Inline |
| 400 | Bad Request | Bad input | None |
| 401 | Unauthorized | Not authorized, successful login required | None |
| 403 | Forbidden | Access denied for this user and/or role | None |
| 500 | Internal Server Error | Internal error | None |
Response Schema
Status Code 200
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » id | string | true | none | Unique approval Request ID. |
| » lastUpdated | integer | false | none | Unix Epoch timestamp of when this approval Request was last updated |
| » contact | string | true | none | The contact details of the raiser of this approval Request. |
| » justification | string | true | none | The justification for this approval Request. |
| » status | string | true | none | The status of this approval request. |
| » eventSource | object | true | none | Information about the Event Source this Request is for. |
| »» id | string | true | none | Unique Event Source ID. |
| »» name | string | true | none | Event Source name. |
| » eventEndpoint | object | true | none | Information about the event endpoint this approval Request is for. |
| »» id | string | true | none | Unique Event Endpoint ID. |
| »» name | string | true | none | Event Endpoint name. |
Enumerated Values
| Property | Value |
|---|---|
| status | pending |
| status | approved |
| status | rejected |
| status | fulfilled |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | etag | string | An identifier which can be supplied with the If-None-Match header to indicate that unchanged results should return 304 with no data. |