SigNoz/signoz · warning · model.ApiError

integrationId is required

Error message

integrationId is required

What it means

Bad Request returned by Manager.getIntegrationDetails when integrationId is empty or only whitespace. It is hit by GetIntegration, GetIntegrationConnectionTests, and InstallIntegration.

Source

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

					Name:        p.Name,
					Description: p.Description,
				},
				Filter: p.Filter,
				Config: p.Config,
			})
		}
	}

	return gettablePipelines, nil
}

// Helpers.
func (m *Manager) getIntegrationDetails(
	ctx context.Context,
	integrationId string,
) (*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,
		))

View on GitHub (pinned to 5069bf80b0)

Solutions

  1. Pass a non-empty, trimmed integration ID
  2. Verify the route/param name used by the client matches the server contract
  3. List available integrations first to obtain valid IDs

Example fix

// before
GET /api/v1/integrations/ 

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

Strategy: validation

Validate before calling

if (!integrationId || integrationId.trim()==='') throw new Error('integrationId is required');

Prevention

When it happens

Trigger: Calling the get-integration, connection-tests, or install endpoints with a blank integration ID (empty string, spaces, or missing path/body param).

Common situations: Client constructs URLs with an unset variable, or routing changes drop the integration ID parameter.

Understand the failure class

Background: "Missing required field" and "field is required" errors: why libraries reject payloads that omit mandatory fields — this error's family across 20 libraries.

Related errors


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