multica-ai/multica · error

wecom_install_rejected

wecom_install_rejected

Error message

wecom: invalid installation parameters

What it means

Error "wecom: invalid installation parameters" thrown in multica-ai/multica.

Source

Thrown at server/internal/integrations/wecom/installation.go:461

	})
	if err != nil {
		if errors.Is(err, pgx.ErrNoRows) {
			return Installation{}, ErrInstallationNotFound
		}
		return Installation{}, err
	}
	return installationFromRow(row)
}

// ErrInvalidInstallationParams marks a request the caller can fix by filling
// something in, as opposed to a failure of ours. It exists so the HTTP layer
// can tell them apart: a missing field is the caller's 400, ErrCredentialsRejected
// and ErrCredentialsUnverifiable carry the two outcomes of actually asking WeCom
// (400 and 503), and everything left over is a 500 — because telling an admin
// their credentials are wrong when Postgres briefly went away sends them to
// rotate a secret that was fine, and a WeCom secret, once rotated, cannot be
// recovered. writeWecomInstallError holds the full matrix.
var ErrInvalidInstallationParams = errors.New("wecom: invalid installation parameters")

// validateInstallationParams is a lightweight pre-write check for
// required fields. It does NOT verify anything against WeCom.
func validateInstallationParams(p InstallationParams) error {
	missing := ""
	switch {
	case !p.WorkspaceID.Valid:
		missing = "workspace_id"
	case !p.AgentID.Valid:
		missing = "agent_id"
	case !p.InstallerUserID.Valid:
		missing = "installer_user_id"
	case p.BotID == "":
		missing = "bot_id"
	case p.Secret == "":
		missing = "secret"
	default:
		return nil

View on GitHub (pinned to 2c0912b6ec)

Solutions

  1. Check the installation parameters (corp id, bot id, secret) and retry.

When it happens

Trigger: Thrown at server/internal/integrations/wecom/installation.go:461 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of multica-ai/multica@2c0912b6ec (2026-08-15). Data as JSON: /api/errors/fc5e380cc8acd0d0. Report an issue: GitHub.