Konnect Service Catalog

Suggestion Rules

Suggestion rules allow for automated management of resources.
Suggestion rule can be configured to:

  • Map resources to existing catalog service
  • Map resources to a new catalog service
  • Archive resources

System suggestion rules are built-in rules which are configured and managed by Kong.

List System Suggestion Rules

Returns a paginated collection of a system defined suggestion rules.

get

Query Parameters

page[size]integer

The maximum number of items to include per page. The last page of a collection may include fewer items.

Example:10

page[number]integer

Determines which page of the entities to retrieve.

Example:1

Path Parameters

integrationstringrequired

Machine name of the integration.

Example:gateway-manager

Response

application/json

A paginated list response for a collection of system defined suggestion rules.

* Additional properties are NOT allowed.
metaobjectrequired

returns the pagination information

Show Child Parameters
dataarrayrequired

Contains information about the system defined suggestion rule.

Show Child Parameters
get/integrations/{integration}/system-suggestion-rules
 
application/json

Create Suggestion Rule

Creates a suggestion rule for the given integration.

post

Path Parameters

integrationstringrequired

Machine name of the integration.

Example:gateway-manager

Body

application/json

Request body schema for creating a suggestion rule for an integration.

SuggestionRulePayload

Payload to create a suggestion rule for an integration.

* Additional properties are NOT allowed.
namestringrequired

The display name of the suggestion rule

>= 1 characters<= 120 characters

descriptionstring | null

The description of the suggestion rule

Default:null

>= 1 characters<= 2048 characters

Example:Suggestion rule description

bindingstringrequired

The integration binding object name

Example:pagerduty_service

activebooleanrequired

Determines if this suggestion rule should be evaluated when generating suggested actions.

auto_acceptbooleanrequired

Determines if the suggested action should be applied automatically.

  • true: Suggested action will be applied automatically
  • false: Suggested action will not be automatically applied, user input required
discovery_selectorstringrequired

A boolean string or JQ expression that must evaluate to a boolean value.
Supports JQ expressions syntax on discovered entity’s integration_record property.

<= 2048 characters

Example:.gateway_service.tags | contains(["_KonnectDeployment:"])

actionOne Of
required
ArchiveActionPayloadobject
* Additional properties are NOT allowed.
Show Child Parameters
rankOne Of
RankAfterPayloadobject

Determines how this suggestion rule ranks against existing suggestion rules for the integration.
When rank is not specified, this suggestion rule will placed as the lowest priority rule.

* Additional properties are NOT allowed.
Show Child Parameters

Response

application/json

A response containg a suggestion rule object.

SuggestionRule

Contains information about the suggestion rule.

idstring(uuid)requiredread-only

The suggestion rule ID.

Example:22f72bd1-2897-473e-9471-302de3ccf38b

namestringrequired

The display name of the suggestion rule.

>= 1 characters<= 120 characters

descriptionstring | nullrequired

The description of the suggestion rule

Default:null

>= 1 characters<= 2048 characters

Example:Suggestion rule description

bindingstringrequired

The integration binding object name

Example:pagerduty_service

activebooleanrequired

Determines if this suggestion rule should be evaluated when generating suggested actions.

auto_acceptbooleanrequired

Determines if the suggested action should be applied automatically.

  • true: Suggested action will be applied automatically
  • false: Suggested action will not be automatically applied, user input required
actionOne Of
required
ArchiveActionPayloadobject

The action configuration for this system suggestion rule.

* Additional properties are NOT allowed.
Show Child Parameters
created_atstring(date-time)requiredread-only

An ISO-8601 timestamp representation of entity creation date.

Example:2022-11-04T20:10:06.927Z

updated_atstring(date-time)requiredread-only

An ISO-8601 timestamp representation of entity update date.

Example:2022-11-04T20:10:06.927Z

discovery_selectorstringrequired

A boolean string or JQ expression that must evaluate to a boolean value.
Supports JQ expressions syntax on discovered entity’s integration_record property.

Example:.gateway_service.tags | contains(["_KonnectDeployment:"])

post/integrations/{integration}/suggestion-rules

Body

{ "name": "sample-datadog-monitors", "description": "Rule to map all sample monitors to the sample service. Matches any monitor that satisfies one of the following:\n- monitor is tagged with a value with the prefix \"service:sample\" (ex:\"service:sample\", \"service:sample-gateway-manager-app\")", "auto_accept": true, "active": true, "binding": "datadog_monitor", "discovery_selector": "| any(.tags[]; startswith(\"service:sample\"))", "action": { "type": "map", "data": { "service": { "name": "sample" }, "resource": { "labels": {} } } } }
 
application/json

List Suggestion Rules

Returns a paginated collection of a suggestion rules.

get

Query Parameters

page[size]integer

The maximum number of items to include per page. The last page of a collection may include fewer items.

Example:10

page[number]integer

Determines which page of the entities to retrieve.

Example:1

filterobject

Filters a collection of suggestion rules.

* Additional properties are NOT allowed.
Show Child Parameters

Path Parameters

integrationstringrequired

Machine name of the integration.

Example:gateway-manager

Response

application/json

A paginated list response for a collection of suggestion rules.

* Additional properties are NOT allowed.
metaobjectrequired

returns the pagination information

Show Child Parameters
dataarrayrequired

Contains information about the suggestion rule.

Show Child Parameters
get/integrations/{integration}/suggestion-rules
 
application/json

Get a Suggestion Rule

Returns information about a suggestion rule from a given suggestion rule ID.

get

Path Parameters

integrationstringrequired

Machine name of the integration.

Example:gateway-manager

suggestionRuleIdstring(uuid)required

ID of the suggestion rule.

Example:22f72bd1-2897-473e-9471-302de3ccf38b

Response

application/json

A response containg a suggestion rule object.

SuggestionRule

Contains information about the suggestion rule.

idstring(uuid)requiredread-only

The suggestion rule ID.

Example:22f72bd1-2897-473e-9471-302de3ccf38b

namestringrequired

The display name of the suggestion rule.

>= 1 characters<= 120 characters

descriptionstring | nullrequired

The description of the suggestion rule

Default:null

>= 1 characters<= 2048 characters

Example:Suggestion rule description

bindingstringrequired

The integration binding object name

Example:pagerduty_service

activebooleanrequired

Determines if this suggestion rule should be evaluated when generating suggested actions.

auto_acceptbooleanrequired

Determines if the suggested action should be applied automatically.

  • true: Suggested action will be applied automatically
  • false: Suggested action will not be automatically applied, user input required
actionOne Of
required
ArchiveActionPayloadobject

The action configuration for this system suggestion rule.

* Additional properties are NOT allowed.
Show Child Parameters
created_atstring(date-time)requiredread-only

An ISO-8601 timestamp representation of entity creation date.

Example:2022-11-04T20:10:06.927Z

updated_atstring(date-time)requiredread-only

An ISO-8601 timestamp representation of entity update date.

Example:2022-11-04T20:10:06.927Z

discovery_selectorstringrequired

A boolean string or JQ expression that must evaluate to a boolean value.
Supports JQ expressions syntax on discovered entity’s integration_record property.

Example:.gateway_service.tags | contains(["_KonnectDeployment:"])

get/integrations/{integration}/suggestion-rules/{suggestionRuleId}
 
application/json