sipeed/picoclaw · error
teams_webhook: webhook %q has invalid URL: %w
Error message
teams_webhook: webhook %q has invalid URL: %w
What it means
Error "teams_webhook: webhook %q has invalid URL: %w" thrown in sipeed/picoclaw.
Source
Thrown at pkg/channels/teams_webhook/teams_webhook.go:83
) (*TeamsWebhookChannel, error) {
if len(cfg.Webhooks) == 0 {
return nil, fmt.Errorf("teams_webhook: at least one webhook target is required")
}
// Require "default" webhook target
if _, hasDefault := cfg.Webhooks["default"]; !hasDefault {
return nil, fmt.Errorf("teams_webhook: a 'default' webhook target is required")
}
// Validate all webhook targets have valid HTTPS URLs
for name, target := range cfg.Webhooks {
webhookURL := target.WebhookURL.String()
if webhookURL == "" {
return nil, fmt.Errorf("teams_webhook: webhook %q has empty webhook_url", name)
}
parsed, err := url.Parse(webhookURL)
if err != nil {
return nil, fmt.Errorf("teams_webhook: webhook %q has invalid URL: %w", name, err)
}
if !strings.EqualFold(parsed.Scheme, "https") {
return nil, fmt.Errorf("teams_webhook: webhook %q must use HTTPS (got %q)", name, parsed.Scheme)
}
}
base := channels.NewBaseChannel(
"teams_webhook",
cfg,
bus,
[]string{
"*",
}, // Output-only channel; "*" suppresses misleading "allows EVERYONE" audit warning
channels.WithMaxMessageLength(24000), // Power Automate webhook payload limit is 28KB
)
client := goteamsnotify.NewTeamsClient()
View on GitHub (pinned to 49183d7e8d)
When it happens
Trigger: Thrown at pkg/channels/teams_webhook/teams_webhook.go:83 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of sipeed/picoclaw@49183d7e8d (2026-08-15).
Data as JSON: /api/errors/1c551d0bb02c6b7a.
Report an issue: GitHub.