SigNoz/signoz · warning · model.ApiError

could not find integration: %s

Error message

could not find integration: %s

What it means

404 Not Found returned by getIntegrationDetails when the requested integration ID was fetched successfully but is not present in the available integrations map — i.e. no such integration exists.

Source

Thrown at pkg/query-service/app/integrations/manager.go:355

) (*IntegrationDetails, *model.ApiError) {
	if len(strings.TrimSpace(integrationId)) < 1 {
		return nil, model.BadRequest(fmt.Errorf(
			"integrationId is required",
		))
	}

	ais, apiErr := m.availableIntegrationsRepo.get(
		ctx, []string{integrationId},
	)
	if apiErr != nil {
		return nil, model.WrapApiError(apiErr, fmt.Sprintf(
			"could not fetch integration: %s", integrationId,
		))
	}

	integrationDetails, wasFound := ais[integrationId]
	if !wasFound {
		return nil, model.NotFoundError(fmt.Errorf(
			"could not find integration: %s", integrationId,
		))
	}
	return &integrationDetails, nil
}

func (m *Manager) getInstalledIntegration(
	ctx context.Context,
	orgId string,
	integrationId string,
) (*cloudintegrationtypes.InstalledIntegration, *model.ApiError) {
	iis, apiErr := m.installedIntegrationsRepo.get(
		ctx, orgId, []string{integrationId},
	)
	if apiErr != nil {
		return nil, model.WrapApiError(apiErr, fmt.Sprintf(
			"could not fetch installed integration: %s", integrationId,
		))

View on GitHub (pinned to 5069bf80b0)

Solutions

  1. List available integrations and use an exact ID
  2. Check spelling/case of the integration ID
  3. Verify the available integrations repo/table is populated in your deployment

Example fix

// before
GET /api/v1/integrations/prometheas

// after
GET /api/v1/integrations/prometheus-exporter
Defensive patterns

Strategy: validation

Validate before calling

const valid = await listIntegrations();
if (!valid.find(i=>i.id===integrationId)) throw new Error('unknown integration');

Try / catch

details, apiErr := m.getIntegrationDetails(ctx, id)
if apiErr != nil && apiErr.Typ == model.ErrorNotFound { /* treat as 404, suggest listing integrations */ }

Prevention

When it happens

Trigger: Requesting details, connection tests, or installing an integration ID that is not in the available_integrations repository (typo'd or unknown ID).

Common situations: Client uses an integration slug that doesn't exist in this SigNoz version, or available integrations seed data is missing.

Understand the failure class

Background: 'Could not be found', 'does not exist', 'not found in database': the resource-not-found family when an ID, slug, key, or URI lookup comes back empty — this error's family across 20 libraries.

Related errors


AI-assisted analysis of SigNoz/signoz@5069bf80b0 (2026-08-28). Data as JSON: /api/errors/e37f4bd3c1038bc8. Report an issue: GitHub.