İçeriğe geç

Inbound Webhooks

Bu içerik henüz dilinizde mevcut değil.

Inbound webhooks let external systems trigger an Agent Context data refresh. When your source data changes (e.g., a Parquet file on S3 is updated), call the webhook URL and all materialized view caches are rebuilt.

Your System (S3, ETL, cron)
|
| POST https://api.rebyte.ai/api/hooks/cl/clwh_...
|
v
Agent Context refreshes all view caches from source data

One webhook per organization. It triggers a refresh for all views.

Open any view in the Agent Context view editor. The webhook URL is shown below the description field with a Copy button.

The webhook is automatically created for your organization the first time you access it — no setup required.

Send a POST request to the webhook URL. No body, no headers required:

Terminal window
curl -X POST https://api.rebyte.ai/api/hooks/cl/clwh_your_token_here

Returns 200 OK when the refresh completes.

Automatically refresh views when a Parquet file changes on S3:

  1. Copy your webhook URL from the view editor
  2. In the AWS Console, open your S3 bucket settings
  3. Create an Event Notification for s3:ObjectCreated:* on the relevant prefix
  4. Route to an SNS topic or Lambda function
  5. Have it POST to your webhook URL

Now when your Parquet file is updated, Agent Context automatically re-materializes all views.

Refresh after a data pipeline completes:

.github/workflows/pipeline.yml
jobs:
etl:
runs-on: ubuntu-latest
steps:
- name: Run ETL pipeline
run: python pipeline.py
- name: Refresh Agent Context
run: |
curl -X POST ${{ secrets.REBYTE_WEBHOOK_URL }}

Refresh on a custom schedule using cron:

Terminal window
# Refresh every day at 6 AM
0 6 * * * curl -X POST https://api.rebyte.ai/api/hooks/cl/clwh_your_token_here

Webhooks are rate-limited to one trigger per 30 seconds. If called more frequently, the extra calls are silently ignored. This prevents accidental flooding from chatty event sources.

The token in the URL is the authentication. No additional headers are needed. The webhook endpoint is unauthenticated — anyone with the URL can trigger a refresh.

If a token is compromised: delete the webhook and a new one will be auto-created on your next visit to the view editor with a fresh token.

Inbound webhooks and refresh schedules work independently:

Refresh ScheduleInbound WebhookResult
Every hourNot usedAuto-refreshes hourly
Manual onlyUsedRefreshes only when webhook is called
Every hourAlso usedAuto-refreshes hourly AND on-demand via webhook

They don’t interfere with each other. A webhook trigger resets the refresh timer, so the next scheduled refresh happens a full interval after the webhook-triggered refresh.