A Catalog service is a collection of one or more resources from integrations.
A Catalog service represents the following:
- A unit of software that is typically owned by a single team
- Exposes one or more APIs
- May be dependent on other Catalog services (as either upstream or downstream)
Catalog services allow you to gain visibility into all resources in your organization, including what teams or people own them.
To create a Catalog service, do one of the following:
- In the Konnect sidebar, click Catalog.
- In the Catalog sidebar, click Services.
- Click New service and configure the details about your service.
- Map the service to an integration:
- Click the service.
- Select “Map resources” from the Action dropdown menu.
-
Create a Catalog service by sending a POST request to the /catalog-services endpoint:
curl -X POST "https://us.api.konghq.com/v1/catalog-services" \
-H "Authorization: Bearer $KONNECT_TOKEN" \
--json '{
"name": "billing",
"display_name": "Billing Service"
}'
-
Map a resource to the service by sending a POST request to the /resource-mappings endpoint:
curl -X POST "https://us.api.konghq.com/v1/resource-mappings" \
-H "Authorization: Bearer $KONNECT_TOKEN" \
--json '{
"service": "billing",
"resource": "'$INTEGRATION_RESOURCE_ID'"
}'
Use the konnect_catalog_service resource:
echo '
resource "konnect_catalog_service" "my_catalogservice" {
name = "billing"
display_name = "Billing Service"
description = "Billing Service for the app"
custom_fields = jsonencode({
"cost_center" : "eng",
"owner" : "Amal",
"product_manager" : "Ariel",
"dashboard" : {
"name" : "Example Dashboard",
"link" : "https://app.example.com/dashboard/123",
},
"git_repo" : {
"name" : "example-repo",
"link" : "https://github.com/example/repo",
},
"jira_project" : null,
"slack_channel" : {
"name" : "test-channel",
"link" : "https://example.slack.com/archives/C098WKDB020"
},
})
labels = {
key = "value"
}
}
' >> main.tf