SigNoz/signoz · error · model.ApiError
couldn't find integration details for %s
Error message
couldn't find integration details for %s
What it means
Internal error returned by getInstalledIntegrations when an installed integration exists in the org but its type has no corresponding entry in the fetched integration details map, leaving incomplete data that the code refuses to return.
Source
Thrown at pkg/query-service/app/integrations/manager.go:406
) {
installations, apiErr := m.installedIntegrationsRepo.list(ctx, orgId)
if apiErr != nil {
return nil, apiErr
}
installedTypes := utils.MapSlice(installations, func(i cloudintegrationtypes.InstalledIntegration) string {
return i.Type
})
integrationDetails, apiErr := m.availableIntegrationsRepo.get(ctx, installedTypes)
if apiErr != nil {
return nil, apiErr
}
result := map[string]Integration{}
for _, ii := range installations {
iDetails, exists := integrationDetails[ii.Type]
if !exists {
return nil, model.InternalError(fmt.Errorf(
"couldn't find integration details for %s", ii.Type,
))
}
result[ii.Type] = Integration{
Installation: &ii,
IntegrationDetails: iDetails,
}
}
return result, nil
}
func (m *Manager) provisionDashboards(
ctx context.Context,
orgID valuer.UUID,
createdBy string,
creator valuer.UUID,
integrationID string,View on GitHub (pinned to 5069bf80b0)
Solutions
- Identify the orphaned type from the error message
- Delete or migrate the stale installed_integrations row for that type
- Re-sync available integrations data for your version
- Report if a legit integration triggers it (possible version bug)
Defensive patterns
Strategy: fallback
Try / catch
res, apiErr := m.getInstalledIntegrations(ctx, orgId)
if apiErr != nil && strings.Contains(apiErr.Err.Error(), "couldn't find integration details") { /* skip/orphan cleanup path */ } Prevention
- Clean up installed rows when removing integrations
- Run provided migration/cleanup scripts on upgrade
When it happens
Trigger: An installed_integrations row references a type absent from available integrations — e.g. after removing/renaming an integration in a newer version while old installations persist.
Common situations: Upgrading SigNoz where an integration was removed or renamed, leaving orphaned installed rows; DB drift between tables.
Related errors
- could not deprovision dashboards: %w
- integration_id is required
- invalid org id: %w
- integrationId is required
- could not find integration: %s
AI-assisted analysis of SigNoz/signoz@5069bf80b0 (2026-08-28).
Data as JSON: /api/errors/c34b68dc4fdaeea1.
Report an issue: GitHub.