Significant-Gravitas/AutoGPT · error · InvalidInputError

Could not update trigger configuration: {feedback}

Error message

Could not update trigger configuration: {feedback}

What it means

InvalidInputError raised by update_preset_with_webhook_reconfiguration when setup_webhook_for_block fails during a trigger reconfiguration (inputs+credentials both provided and the graph has a webhook node). The {feedback} embeds the webhook backend's rejection reason. Important ordering detail: trigger_inputs_updated is set True before the raise, and the subsequent db.update_preset may or may not run depending on the caller's error handling — the operation is aborted before persisting the update.

Source

Thrown at autogpt_platform/backend/backend/api/features/library/triggers.py:160

                **(
                    make_node_credentials_input_map(graph, credentials).get(
                        trigger_node.id
                    )
                    or {}
                ),
            }
            new_webhook, feedback = await setup_webhook_for_block(
                user_id=user_id,
                trigger_block=trigger_node.block,
                trigger_config=trigger_config_with_credentials,
                for_preset_id=preset_id,
                # Resource-follows-parent: webhook lives in the graph's org/team.
                organization_id=graph.organization_id,
                team_id=graph.team_id,
            )
            trigger_inputs_updated = True
            if not new_webhook:
                raise InvalidInputError(
                    f"Could not update trigger configuration: {feedback}"
                )

    updated = await db.update_preset(
        user_id=user_id,
        preset_id=preset_id,
        inputs=inputs,
        credentials=credentials,
        name=name,
        description=description,
        is_active=is_active,
    )

    if trigger_inputs_updated:
        new_webhook_id = new_webhook.id if new_webhook else None
        updated = await db.set_preset_webhook(user_id, preset_id, new_webhook_id)
        # Clean up the old webhook if it's no longer referenced.
        if current.webhook_id and current.webhook_id != new_webhook_id:

View on GitHub (pinned to 9c8bb5550f)

Solutions

  1. Read {feedback} — it is the provider's specific rejection message.
  2. Validate the new inputs against the webhook block's input schema before PATCHing.
  3. Refresh provider credentials and retry with both inputs and credentials set.
  4. If the provider is temporarily failing, retry later; the preset's old config remains intact since the update aborted.

Example fix

# before
await update_preset_with_webhook_reconfiguration(user_id=uid, preset_id=pid, inputs=inp, credentials=creds)
# after
validate_against_block_schema(trigger_node_input_schema, inp)  # raises before touching provider
await update_preset_with_webhook_reconfiguration(user_id=uid, preset_id=pid, inputs=inp, credentials=creds)
Defensive patterns

Strategy: validation

Validate before calling

schema = trigger_node.input_schema  # JSON schema of webhook block
jsonschema.validate(instance=new_inputs, schema=schema)

Try / catch

try:
    await update_preset_with_webhook_reconfiguration(...)
except InvalidInputError as e:
    raise TriggerConfigRejected(f'Provider rejected config: {e}') from e

Prevention

When it happens

Trigger: PATCH /presets/{id} with new trigger inputs the provider rejects (invalid event filter, malformed payload config); expired provider credentials passed in credentials; provider API outage during re-registration.

Common situations: User edits a webhook preset's trigger inputs with invalid values; credentials rotated since the preset was created; provider deprecated a config field the old preset used.

Related errors


AI-assisted analysis of Significant-Gravitas/AutoGPT@9c8bb5550f (2026-08-14). Data as JSON: /api/errors/0d69fb2c4bfa8d32. Report an issue: GitHub.