{
  "data": {
    "a": {
      "slug": "amazon-eventbridge",
      "name": "Amazon EventBridge",
      "vendor": "Amazon Web Services",
      "vendorUrl": "https://aws.amazon.com/eventbridge/",
      "kind": "http-api",
      "category": "webhooks",
      "summary": "Amazon EventBridge is AWS's serverless event bus. Applications, AWS services and SaaS partners publish events, and the bus routes them to targets such as Lambda functions, SQS queues and HTTPS endpoints. It includes Pipes, a scheduler and a schema registry.",
      "url": "https://www.anchorterminal.com/tools/amazon-eventbridge",
      "markdownUrl": "https://www.anchorterminal.com/tools/amazon-eventbridge.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/amazon-eventbridge.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/amazon-eventbridge.json",
      "repo": "https://github.com/aws/api-models-aws",
      "license": "Proprietary service under the AWS Customer Agreement. The AWS SDKs, the API models and the agent toolkit skill are Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://events.us-east-1.amazonaws.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@aws-sdk/client-eventbridge"
        },
        {
          "registry": "npm",
          "name": "@aws-sdk/client-eventbridgev2"
        }
      ],
      "auth": "mixed",
      "authNotes": "Requests are signed with AWS Signature Version 4 under the service name `events`, using IAM credentials. IAM identity policies and bus resource policies use the `events:` action prefix for both APIs. Access is self-serve with an AWS account. Another account publishes or subscribes through a Classic bus resource policy or, on the Custom Event Bus, a share through AWS Resource Access Manager. API destinations hold the target's own credentials in an AWS Secrets Manager secret.",
      "pricing": "usage",
      "pricingNotes": "Pay per use with no minimum charge. The pricing page's worked examples use $1.00 per million custom events on a Classic bus, $0.20 per million API destination invocations and, on the Custom Event Bus, $0.18 per GB published, $0.05 per GB sent to subscribers and $0.08 per GB-month of retention beyond 24 hours. AWS management events are free to ingest and Scheduler includes 14,000,000 free invocations a month. The per-Region price tables are drawn by script and were not read. New AWS customers get up to $200 in credits, and AWS says most can sign up without a payment method (https://aws.amazon.com/eventbridge/pricing/, https://aws.amazon.com/free/free-tier-faqs/).",
      "priceSummary": "$0.18 / GB",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the user guide index, the two API models or the pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 3198017,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.aws.amazon.com/eventbridge/",
      "llmsTxt": "https://docs.aws.amazon.com/eventbridge/latest/userguide/llms.txt",
      "capabilities": [
        "events.webhooks-send",
        "events.queue",
        "events.schedule"
      ],
      "tags": [
        "hosted",
        "llms-txt",
        "typescript",
        "cli",
        "webhooks",
        "queues",
        "agent-skills",
        "status-page",
        "soc2",
        "sla",
        "enterprise"
      ],
      "lastRelease": "2026-09-24",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 73.7,
        "grade": "BB",
        "agentReady": true,
        "rank": 83,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 73,
          "maintenance": 75,
          "payments": 35,
          "reliability": 73,
          "schema": 82,
          "security": 88,
          "transparency": 87
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "IAM policies scope a credential to single actions and buses, and an SLA commits 99.99 per cent monthly uptime per Region. The Custom Event Bus API of 24 September 2026 adds retention, replay, ordering and publish-time deduplication. Classic `PutEvents` takes no idempotency token and answers 200 for a bus that does not exist. A person must open the AWS account.",
        "bestFor": "Teams already on AWS that want events routed between AWS services, their own code and outside HTTPS endpoints under IAM, with retention and replay on the bus.",
        "strengths": [
          "Smithy models published for both APIs, 57 Classic operations and 25 for the Custom Event Bus, with llms.txt and a Markdown twin of each guide page",
          "99.99 per cent monthly uptime commitment per Region under the Amazon EventBridge SLA, last updated 2 May 2022",
          "The Custom Event Bus keeps every event for 1 to 365 days, replays from a point in time, orders by event group and suppresses duplicates for 300 seconds",
          "IAM identity and bus resource policies per action, an `AmazonEventBridgeReadOnlyAccess` managed policy, and four AWS RAM permissions for buses shared across accounts",
          "Published quotas, with Classic `PutEvents` at 10,000 requests a second in US East (N. Virginia) and 400 in the smallest Regions"
        ],
        "weaknesses": [
          "Classic `PutEvents` has no idempotency token or deduplication, and failed entries come back inside a successful response for the caller to resend",
          "A Classic `PutEvents` call that names a bus that does not exist returns 200 and the event is dropped, per the user guide",
          "API destination connections carry Basic, OAuth client credentials or API key authorisation only. No request signature was found, and the target has 5 seconds to answer",
          "A Custom Event Bus subscriber stops after 5 attempts or 300 seconds by default, and without a dead-letter queue the event is dropped with only a metric",
          "The Custom Event Bus model declares the Smithy RPC v2 CBOR protocol only, and subscriber filters and JSONata transformers travel as strings"
        ],
        "agentNotes": [
          "Use `aws eventsv2` and the `EventBridgeV2` SDK client for the Custom Event Bus, but write IAM actions with the `events:` prefix. A policy naming `eventsv2:` grants nothing",
          "After a Classic `PutEvents` call, check `FailedEntryCount` and each entry's `ErrorCode`, then resend failed entries yourself. A request holds up to 10 entries and under 1 MB",
          "Set `SystemMetadata.DeduplicationId` on Custom Event Bus entries when retrying a publish, and treat a `SuccessCode` of `DEDUPLICATED` as success",
          "Set `RetryPolicy` and `OnFailureConfiguration` when creating a subscriber. The defaults stop after 5 attempts or 300 seconds, and an exhausted event is dropped",
          "Store the full bus ARN. A Custom Event Bus ARN ends in a generated identifier that changes when a bus of the same name is recreated"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 73.7
          }
        ],
        "editorialScores": {
          "ergonomics": 73,
          "maintenance": 75,
          "payments": 35,
          "reliability": 73,
          "schema": 82,
          "security": 88,
          "transparency": 78
        },
        "provenanceScore": 95
      },
      "letme": {
        "capability": "https://letme.dev/events.webhooks-send",
        "tool": "https://letme.dev/amazon-eventbridge"
      },
      "sameCompany": [
        "amazon-bedrock-customization",
        "agentcore-code-interpreter",
        "amazon-textract",
        "aws-end-user-messaging",
        "amazon-sns",
        "amazon-s3"
      ],
      "area": "developer",
      "unitPrices": [
        {
          "item": "Custom or partner event ingested, Classic bus",
          "unit": "message",
          "usd": 0.000001,
          "note": "$1.00 per million in the pricing page's worked examples. Each 64 KB of payload counts as one event. AWS management events are free"
        },
        {
          "item": "API destination invocation",
          "unit": "message",
          "usd": 2e-7,
          "note": "$0.20 per million in the pricing page's worked example, per 64 KB, plus data transfer"
        },
        {
          "item": "Event data published, Custom Event Bus",
          "unit": "gb",
          "usd": 0.18,
          "note": "First 5 TB a month, $0.12 in the next tier, per the worked example. Events round up to the nearest 1 KB"
        },
        {
          "item": "Event data sent to subscribers, Custom Event Bus",
          "unit": "gb",
          "usd": 0.05,
          "note": "Per the worked example. Retries are charged as further egress"
        },
        {
          "item": "Retention beyond 24 hours, Custom Event Bus",
          "unit": "gb-month",
          "usd": 0.08,
          "note": "The first 24 hours are included"
        },
        {
          "item": "Pipes requests after filtering",
          "unit": "1k-requests",
          "usd": 0.0004,
          "note": "$0.40 per million in the worked example, per 64 KB"
        },
        {
          "item": "Scheduler invocations",
          "unit": "1k-requests",
          "usd": 0.001,
          "note": "$1.00 per million after 14,000,000 free a month"
        }
      ],
      "provenance": {
        "legalEntity": "Amazon Web Services, Inc.",
        "domain": "amazonaws.com",
        "domainRegistered": "2005-08-18",
        "endpointOnVendorDomain": true,
        "terms": "https://aws.amazon.com/agreement/",
        "privacy": "https://aws.amazon.com/privacy/",
        "statusPage": "https://health.aws.amazon.com/health/status",
        "changelog": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-document-history.md",
        "securityTxt": "expired",
        "checked": "2026-10-09",
        "notes": [
          "The AWS Customer Agreement (last updated 14 August 2026) governs use of the service, with other AWS entities as contracting party by account country. Section 1.5 promises at least 12 months' notice before a material functionality of a generally available service is discontinued, with exceptions for emergencies, third-party claims and law.",
          "The AWS Service Terms (last updated 1 October 2026) have no section naming Amazon EventBridge. Section 1.8 allows benchmarks of the services, on condition that enough is disclosed to replicate them (https://aws.amazon.com/service-terms/).",
          "The AWS Privacy Notice (last updated 18 May 2026) says it does not apply to content customers process with AWS services, which the agreement governs.",
          "https://aws.amazon.com/.well-known/security.txt carries Expires 2026-09-24T16:25:03.000Z, so it had expired on 9 October 2026. It names a vulnerability disclosure programme on HackerOne.",
          "RDAP for amazonaws.com gives a registration date of 2005-08-18. The APIs answer at events.\u003cregion\u003e.amazonaws.com and eventsv2.\u003cregion\u003e.amazonaws.com, while product and legal pages sit on aws.amazon.com.",
          "The public service health page is drawn by script and showed our reader no text, so the incident history is unread."
        ],
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/amazon-eventbridge.json",
      "live": {
        "slug": "amazon-eventbridge",
        "probe": {
          "target": "https://events.us-east-1.amazonaws.com",
          "method": "get",
          "lastAt": "2026-10-10T02:06:59.314834046Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 269,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 256,
          "p95ms24h": 326,
          "samples24h": 107,
          "samples30d": 107,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 22,
              "ok": 22
            }
          ]
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@aws-sdk/client-eventbridge",
            "version": "3.1148.0",
            "seenAt": "2026-10-09T16:38:33.868917617Z"
          },
          {
            "registry": "npm",
            "name": "@aws-sdk/client-eventbridgev2",
            "version": "3.1148.0",
            "seenAt": "2026-10-09T16:38:35.977795305Z"
          }
        ],
        "githubStars": 229,
        "npmWeekly": 3198017,
        "pages": [
          {
            "url": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-document-history.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:36:40.226872542Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "80ba6f1b0bf2"
          },
          {
            "url": "https://aws.amazon.com/eventbridge/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:33:01.95818769Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "eec65d6af269"
          },
          {
            "url": "https://aws.amazon.com/agreement/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:32:54.040870298Z",
            "changedAt": "2026-10-09T18:32:54.040870298Z",
            "fingerprint": "535a92da3afa"
          }
        ],
        "updatedAt": "2026-10-10T02:06:59.314834046Z"
      }
    },
    "answer": "Amazon EventBridge scores 73.7 (BB) on agent readiness against Hook0's 64.6 (B), and leads in 5 of 7 scored categories. Hook0 leads on payments \u0026 pricing and maintenance \u0026 community.",
    "b": {
      "slug": "hook0",
      "name": "Hook0",
      "vendor": "FGRibreau SARL",
      "vendorUrl": "https://www.hook0.com",
      "kind": "http-api",
      "category": "webhooks",
      "summary": "Hook0 is a webhook sending service from FGRibreau SARL in France. An application posts events to a REST API and Hook0 signs, retries and logs deliveries to subscriber endpoints. It runs as an EU-hosted cloud or self-hosted under SSPL-1.0.",
      "url": "https://www.anchorterminal.com/tools/hook0",
      "markdownUrl": "https://www.anchorterminal.com/tools/hook0.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/hook0.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/hook0.json",
      "repo": "https://github.com/hook0/hook0",
      "license": "SSPL-1.0 for the server (source available, not an OSI licence). The SDKs and the `hook0-mcp` server are MIT per crates.io and npm. Hook0 Cloud is a hosted service under Hook0's terms of service",
      "transports": [
        "http",
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "hook0-client"
        },
        {
          "registry": "pypi",
          "name": "hook0-client"
        },
        {
          "registry": "cargo",
          "name": "hook0-mcp"
        }
      ],
      "auth": "api-key",
      "authNotes": "Every call takes `Authorization: Bearer \u003ctoken\u003e` at https://app.hook0.com/api/v1. A person signs up in a browser, passes a Cloudflare Turnstile check and verifies an email address, then creates a service token in the dashboard. Service tokens are Biscuit tokens scoped to one organisation, and the holder can narrow one offline to a single application, an expiry date or an allowlist of actions. Each application also has secrets that work as Bearer tokens with full control of that application. No OAuth for API clients.",
      "pricing": "freemium",
      "pricingNotes": "Free Developer plan with no card, 100 events a day, one application and 7 days of retention, and a 429 once the quota is used. Startup is €59 a month for 30,000 events a day, then €0.003 an event. Pro is €190 a month for 100,000 events a day, then €0.0001 an event. Prices exclude VAT and are published in euros only. Subscriptions and retries aren't counted. Self-hosting is free, and a managed on-premise instance is €500 a month plus €1,000 setup (checked 2026-10-08).",
      "priceSummary": "Freemium",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the documentation index, the OpenAPI document, the repository or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 23,
      "popularity": {
        "githubStars": 1494,
        "npmWeekly": 507,
        "pypiWeekly": 11,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://documentation.hook0.com/",
      "llmsTxt": "https://documentation.hook0.com/llms.txt",
      "openapi": "https://app.hook0.com/api/v1/swagger.json",
      "capabilities": [
        "events.webhooks-send"
      ],
      "tags": [
        "hosted",
        "self-hosted",
        "source-available",
        "webhooks",
        "api-key",
        "openapi",
        "llms-txt",
        "mcp",
        "free-tier",
        "no-card",
        "status-page",
        "eu-hosted",
        "typescript",
        "python",
        "rust",
        "go"
      ],
      "lastRelease": "2026-09-21",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 64.6,
        "grade": "B",
        "agentReady": false,
        "rank": 347,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 87,
          "payments": 40,
          "reliability": 70,
          "schema": 79,
          "security": 64,
          "transparency": 84
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-08-11. Server-side request forgery in the delivery worker, rated High by the vendor. An IPv6 transition address passed the filter on forbidden targets, so a tenant could make the worker reach internal addresses. Fixed in commit 3b27e932 and published with the reporter credited, so the deduction is reduced to 3 (https://documentation.hook0.com/resources/security-advisories).",
          "2026-08-24. A password reset link stayed usable after it had reset a password, rated Medium, which allowed account takeover by anyone holding a spent link. Fixed in commit 80fae0de and published, so the deduction is 1 (https://documentation.hook0.com/resources/security-advisories)."
        ],
        "verdict": "Hook0 Cloud sends signed webhooks from one REST call, with a public OpenAPI document, RFC 7807 errors and service tokens that can be narrowed offline to one application, an expiry or read-only actions. Six security advisories were published between August and September 2026, one rated High. Signup needs a browser check, and no uptime commitment exists below Enterprise.",
        "bestFor": "A product that has to send signed webhooks to its own customers' endpoints with retries, replay and a delivery log, and that wants EU hosting or the option to self-host the same code.",
        "strengths": [
          "Public OpenAPI 3.0 document at `/api/v1/swagger.json` with 56 operations, each with a summary, a description and ten error statuses",
          "Service tokens are Biscuit tokens that the holder can narrow offline to one application, an expiry date or a read-only action list",
          "Errors follow RFC 7807 with a stable `id`, and the reference lists 46 codes generated from the API's own `/errors` endpoint",
          "Free Developer plan of 100 events a day with no card, and per-event overage prices published for both paid plans",
          "Retention by plan, sub-processors with countries, a DPA, a GDPR Article 30 register and a transfer impact assessment are all public"
        ],
        "weaknesses": [
          "Six advisories were published between 6 August and 9 September 2026, including a High-rated SSRF in the delivery worker fixed on 11 August",
          "The status page records API and delivery downtime on 27 August and 22 September 2026, both traced to the hosting provider",
          "The terms give no uptime, latency or support commitment by default. Service levels exist only in a signed Enterprise agreement",
          "Cloud registration requires a Cloudflare Turnstile token and email verification, so an agent can't create an account alone",
          "The API introduction page documents an error shape and `limit` and `offset` pagination that the OpenAPI document doesn't contain"
        ],
        "agentNotes": [
          "Use a service token narrowed to one application and an expiry. A root service token covers the whole organisation, and an application secret can delete its application",
          "Send your own UUID as `event_id` on `POST /api/v1/event/`. A repeat returns `EventAlreadyIngested` (409), which means the first call succeeded",
          "Create the event type before sending. Unknown types fail with `EventTypeDoesNotExist`, and `labels`, `occurred_at` and `payload_content_type` are required",
          "Send `payload` as a string, with JSON serialised inside it, up to 512 KiB",
          "Set `HOOK0_API_URL` for `hook0-mcp` to the origin without `/api/v1`, and set `HOOK0_READ_ONLY=true` to hide the ten write tools"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 64.6
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 87,
          "payments": 40,
          "reliability": 70,
          "schema": 79,
          "security": 64,
          "transparency": 76
        },
        "provenanceScore": 91
      },
      "connect": {
        "install": "cargo install hook0-mcp",
        "http": "curl -X POST \"https://app.hook0.com/api/v1/event\" \\\n  -H \"Authorization: Bearer $HOOK0_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"application_id\": \"\u003capplication-id\u003e\", \"event_type\": \"user.account.created\", \"payload\": \"{\\\"user_id\\\": 123}\", \"payload_content_type\": \"application/json\", \"labels\": {\"environment\": \"tutorial\"}, \"occurred_at\": \"2026-10-08T12:00:00Z\"}'",
        "config": {
          "mcpServers": {
            "hook0": {
              "command": "hook0-mcp",
              "env": {
                "HOOK0_API_TOKEN": "your-service-token-here"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/events.webhooks-send",
        "tool": "https://letme.dev/hook0"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "FGRibreau SARL",
        "domain": "hook0.com",
        "domainRegistered": "2020-09-02",
        "endpointOnVendorDomain": true,
        "terms": "https://www.hook0.com/terms",
        "privacy": "https://www.hook0.com/privacy-policy",
        "statusPage": "https://status.hook0.com",
        "changelog": "https://gitlab.com/hook0/hook0/-/releases",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The terms of service (last updated 27 June 2026) name FGRibreau SARL, a French limited liability company registered at La Roche-sur-Yon under number 850 824 350, with its office at 3 rue de l'Aubepine, 85110 Chantonnay, France.",
          "The API answers at app.hook0.com, a hook0.com subdomain, per the OpenAPI document's server entry.",
          "www.hook0.com/.well-known/security.txt names security@hook0.com, a disclosure policy and an acknowledgments page, and expires on 6 August 2027.",
          "The privacy policy (last updated 9 September 2026) covers the Hook0 service and lists sub-processors with countries. A data processing addendum is published at www.hook0.com/data-processing-addendum.",
          "The documentation's changelog page only links to GitHub Releases. Releases are tagged per component on GitLab, where development happens, and each component keeps a CHANGELOG.md.",
          "RDAP for hook0.com gives a registration date of 2020-09-02."
        ],
        "score": 91
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/hook0.json",
      "live": {
        "slug": "hook0",
        "vendorStatus": {
          "page": "https://status.hook0.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-10T00:50:41.196227241Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "hook0/hook0",
            "version": "frontend/v1.2.1",
            "released": "2026-09-21",
            "seenAt": "2026-10-09T16:58:05.546267204Z"
          },
          {
            "registry": "npm",
            "name": "hook0-client",
            "version": "2.0.3",
            "seenAt": "2026-10-09T16:58:04.442801697Z"
          },
          {
            "registry": "pypi",
            "name": "hook0-client",
            "version": "2.0.3",
            "released": "2026-08-28",
            "seenAt": "2026-10-09T16:58:05.355564234Z"
          }
        ],
        "githubStars": 1494,
        "npmWeekly": 237,
        "pypiWeekly": 11,
        "securityTxt": {
          "url": "https://hook0.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-08-06T00:00:00.000Z",
          "checkedAt": "2026-10-09T15:40:25.765332314Z"
        },
        "llmsTxt": {
          "url": "https://documentation.hook0.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:02:08.800994395Z"
        },
        "pages": [
          {
            "url": "https://gitlab.com/hook0/hook0/-/releases",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:39:50.665890313Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e3b0c44298fc"
          },
          {
            "url": "https://www.hook0.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:50:59.149387956Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cdd9491791e7"
          },
          {
            "url": "https://www.hook0.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:51:01.522512737Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c88a3c9ad15e"
          }
        ],
        "updatedAt": "2026-10-10T00:50:41.196227241Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Amazon Web Services",
        "b": "FGRibreau SARL",
        "name": "Vendor"
      },
      {
        "a": "https://events.us-east-1.amazonaws.com",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the AWS Customer Agreement. The AWS SDKs, the API models and the agent toolkit skill are Apache-2.0",
        "b": "SSPL-1.0 for the server (source available, not an OSI licence). The SDKs and the `hook0-mcp` server are MIT per crates.io and npm. Hook0 Cloud is a hosted service under Hook0's terms of service",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "23",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-24",
        "b": "2026-09-21",
        "name": "Last release"
      },
      {
        "a": "2026-08-14",
        "b": "2026-06-27",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-18",
        "b": "2026-09-09",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "3.2M npm/wk",
        "b": "1.5k stars, 507 npm/wk, 11 PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Amazon EventBridge scores 73.7 (BB) on agent readiness against Hook0's 64.6 (B), and leads in 5 of 7 scored categories. Hook0 leads on payments \u0026 pricing and maintenance \u0026 community.",
        "question": "Which is better for AI agents, Amazon EventBridge or Hook0?"
      },
      {
        "answer": "Amazon EventBridge takes an API key or an OAuth sign-in. Hook0 needs an API key.",
        "question": "Do Amazon EventBridge and Hook0 need an API key?"
      },
      {
        "answer": "Amazon EventBridge has a hosted endpoint at https://events.us-east-1.amazonaws.com. Hook0 runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call Amazon EventBridge and Hook0 without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 73 against 65",
          "Security \u0026 auth, 88 against 64"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "A hosted endpoint, with nothing to install",
          "No incidents deducted, where Hook0 loses 4 points for them"
        ],
        "goodFor": "Teams already on AWS that want events routed between AWS services, their own code and outside HTTPS endpoints under IAM, with retention and replay on the bus.",
        "slug": "amazon-eventbridge",
        "watchFor": "Classic `PutEvents` has no idempotency token or deduplication, and failed entries come back inside a successful response for the caller to resend"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 40 against 35",
          "Maintenance \u0026 community, 87 against 75"
        ],
        "also": [
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "A product that has to send signed webhooks to its own customers' endpoints with retries, replay and a delivery log, and that wants EU hosting or the option to self-host the same code.",
        "slug": "hook0",
        "watchFor": "Six advisories were published between 6 August and 9 September 2026, including a High-rated SSRF in the delivery worker fixed on 11 August"
      }
    ],
    "job": {
      "capability": "events.webhooks-send",
      "name": "Sending webhooks"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ably-vs-amazon-eventbridge.json",
        "title": "Ably vs Amazon EventBridge",
        "url": "https://www.anchorterminal.com/compare/ably-vs-amazon-eventbridge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ably-vs-hook0.json",
        "title": "Ably vs Hook0",
        "url": "https://www.anchorterminal.com/compare/ably-vs-hook0"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-convoy.json",
        "title": "Amazon EventBridge vs Convoy",
        "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-convoy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hookdeck.json",
        "title": "Amazon EventBridge vs Hookdeck",
        "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hookdeck"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-pubnub.json",
        "title": "Amazon EventBridge vs PubNub",
        "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-pubnub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-pusher-channels.json",
        "title": "Amazon EventBridge vs Pusher Channels",
        "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-pusher-channels"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-svix.json",
        "title": "Amazon EventBridge vs Svix",
        "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-svix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-upstash-qstash.json",
        "title": "Amazon EventBridge vs Upstash QStash",
        "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-upstash-qstash"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-webhook-relay.json",
        "title": "Amazon EventBridge vs Webhook Relay",
        "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-webhook-relay"
      },
      {
        "json": "https://www.anchorterminal.com/compare/convoy-vs-hook0.json",
        "title": "Convoy vs Hook0",
        "url": "https://www.anchorterminal.com/compare/convoy-vs-hook0"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hook0-vs-hookdeck.json",
        "title": "Hook0 vs Hookdeck",
        "url": "https://www.anchorterminal.com/compare/hook0-vs-hookdeck"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hook0-vs-pubnub.json",
        "title": "Hook0 vs PubNub",
        "url": "https://www.anchorterminal.com/compare/hook0-vs-pubnub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hook0-vs-pusher-channels.json",
        "title": "Hook0 vs Pusher Channels",
        "url": "https://www.anchorterminal.com/compare/hook0-vs-pusher-channels"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hook0-vs-svix.json",
        "title": "Hook0 vs Svix",
        "url": "https://www.anchorterminal.com/compare/hook0-vs-svix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hook0-vs-upstash-qstash.json",
        "title": "Hook0 vs Upstash QStash",
        "url": "https://www.anchorterminal.com/compare/hook0-vs-upstash-qstash"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hook0-vs-webhook-relay.json",
        "title": "Hook0 vs Webhook Relay",
        "url": "https://www.anchorterminal.com/compare/hook0-vs-webhook-relay"
      }
    ],
    "scores": [
      {
        "amazon-eventbridge": 73,
        "by": 3,
        "edge": "amazon-eventbridge",
        "hook0": 70,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "amazon-eventbridge": 82,
        "by": 3,
        "edge": "amazon-eventbridge",
        "hook0": 79,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "amazon-eventbridge": 73,
        "by": 8,
        "edge": "amazon-eventbridge",
        "hook0": 65,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "amazon-eventbridge": 88,
        "by": 24,
        "edge": "amazon-eventbridge",
        "hook0": 64,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "amazon-eventbridge": 35,
        "by": 5,
        "edge": "hook0",
        "hook0": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "amazon-eventbridge": 75,
        "by": 12,
        "edge": "hook0",
        "hook0": 87,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "amazon-eventbridge": 87,
        "by": 3,
        "edge": "amazon-eventbridge",
        "hook0": 84,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Amazon EventBridge scores 73.7 (BB) on agent readiness against Hook0's 64.6 (B), and leads in 5 of 7 scored categories. Hook0 leads on payments \u0026 pricing and maintenance \u0026 community. Both do sending webhooks.",
    "verdicts": {
      "amazon-eventbridge": "IAM policies scope a credential to single actions and buses, and an SLA commits 99.99 per cent monthly uptime per Region. The Custom Event Bus API of 24 September 2026 adds retention, replay, ordering and publish-time deduplication. Classic `PutEvents` takes no idempotency token and answers 200 for a bus that does not exist. A person must open the AWS account.",
      "hook0": "Hook0 Cloud sends signed webhooks from one REST call, with a public OpenAPI document, RFC 7807 errors and service tokens that can be narrowed offline to one application, an expiry or read-only actions. Six security advisories were published between August and September 2026, one rated High. Signup needs a browser check, and no uptime commitment exists below Enterprise."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hook0",
    "json": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hook0.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hook0.md",
    "slim": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hook0.min.md"
  },
  "markdown": "Amazon EventBridge scores 73.7 (BB) on agent readiness against Hook0's 64.6 (B), and leads in 5 of 7 scored categories. Hook0 leads on payments \u0026 pricing and maintenance \u0026 community. Both do sending webhooks.\n\n- Amazon EventBridge: grade BB, 73.7/100, rank #83 of 950. Markdown https://www.anchorterminal.com/tools/amazon-eventbridge.md · JSON https://www.anchorterminal.com/api/v1/tools/amazon-eventbridge.json\n- Hook0: grade B, 64.6/100, rank #347 of 950. Markdown https://www.anchorterminal.com/tools/hook0.md · JSON https://www.anchorterminal.com/api/v1/tools/hook0.json\n- Best webhook and event delivery infrastructure for AI agents: https://www.anchorterminal.com/best/webhooks/index.md\n- All 48 webhooks comparisons: https://www.anchorterminal.com/compare/webhooks/index.md\n\n## Which one, for what\n\n### Amazon EventBridge (BB)\n\nGood for: Teams already on AWS that want events routed between AWS services, their own code and outside HTTPS endpoints under IAM, with retention and replay on the bus.\n\nAhead on:\n- Agent ergonomics, 73 against 65\n- Security \u0026 auth, 88 against 64\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- A hosted endpoint, with nothing to install\n- No incidents deducted, where Hook0 loses 4 points for them\n\nWatch for: Classic `PutEvents` has no idempotency token or deduplication, and failed entries come back inside a successful response for the caller to resend\n\n### Hook0 (B)\n\nGood for: A product that has to send signed webhooks to its own customers' endpoints with retries, replay and a delivery log, and that wants EU hosting or the option to self-host the same code.\n\nAhead on:\n- Payments \u0026 pricing, 40 against 35\n- Maintenance \u0026 community, 87 against 75\n\nAlso in its favour:\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: Six advisories were published between 6 August and 9 September 2026, including a High-rated SSRF in the delivery worker fixed on 11 August\n\n\n## Score by category\n\n| Category | Weight | Amazon EventBridge | Hook0 | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 70 | Amazon EventBridge +3 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 82 | 79 | Amazon EventBridge +3 |\n| Agent ergonomics | 13% (16.2 this run) | 73 | 65 | Amazon EventBridge +8 |\n| Security \u0026 auth | 14% (17.5 this run) | 88 | 64 | Amazon EventBridge +24 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 40 | Hook0 +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 75 | 87 | Hook0 +12 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 87 | 84 | Amazon EventBridge +3 |\n| Negative events | ≤15 | 0 | -4 | |\n| **Total** | | **73.7 · BB** | **64.6 · B** | |\n\n## Facts side by side\n\n| Fact | Amazon EventBridge | Hook0 |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Amazon Web Services | FGRibreau SARL |\n| Hosted endpoint | `https://events.us-east-1.amazonaws.com` | no (local only) |\n| Transports | HTTP | HTTP, stdio |\n| Auth | OAuth or key | API key |\n| Pricing | Pay per use | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under the AWS Customer Agreement. The AWS SDKs, the API models and the agent toolkit skill are Apache-2.0 | SSPL-1.0 for the server (source available, not an OSI licence). The SDKs and the `hook0-mcp` server are MIT per crates.io and npm. Hook0 Cloud is a hosted service under Hook0's terms of service |\n| Tools exposed | none | 23 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| Last release | 2026-09-24 | 2026-09-21 |\n| Terms last updated | 2026-08-14 | 2026-06-27 |\n| Privacy policy last updated | 2026-05-18 | 2026-09-09 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 3.2M npm/wk | 1.5k stars, 507 npm/wk, 11 PyPI/wk |\n\n## Verdicts\n\n**Amazon EventBridge.** IAM policies scope a credential to single actions and buses, and an SLA commits 99.99 per cent monthly uptime per Region. The Custom Event Bus API of 24 September 2026 adds retention, replay, ordering and publish-time deduplication. Classic `PutEvents` takes no idempotency token and answers 200 for a bus that does not exist. A person must open the AWS account.\n\n**Hook0.** Hook0 Cloud sends signed webhooks from one REST call, with a public OpenAPI document, RFC 7807 errors and service tokens that can be narrowed offline to one application, an expiry or read-only actions. Six security advisories were published between August and September 2026, one rated High. Signup needs a browser check, and no uptime commitment exists below Enterprise.\n\n## Before you call either\n\n### Amazon EventBridge\n\n1. Use `aws eventsv2` and the `EventBridgeV2` SDK client for the Custom Event Bus, but write IAM actions with the `events:` prefix. A policy naming `eventsv2:` grants nothing\n2. After a Classic `PutEvents` call, check `FailedEntryCount` and each entry's `ErrorCode`, then resend failed entries yourself. A request holds up to 10 entries and under 1 MB\n3. Set `SystemMetadata.DeduplicationId` on Custom Event Bus entries when retrying a publish, and treat a `SuccessCode` of `DEDUPLICATED` as success\n4. Set `RetryPolicy` and `OnFailureConfiguration` when creating a subscriber. The defaults stop after 5 attempts or 300 seconds, and an exhausted event is dropped\n5. Store the full bus ARN. A Custom Event Bus ARN ends in a generated identifier that changes when a bus of the same name is recreated\n\n### Hook0\n\n1. Use a service token narrowed to one application and an expiry. A root service token covers the whole organisation, and an application secret can delete its application\n2. Send your own UUID as `event_id` on `POST /api/v1/event/`. A repeat returns `EventAlreadyIngested` (409), which means the first call succeeded\n3. Create the event type before sending. Unknown types fail with `EventTypeDoesNotExist`, and `labels`, `occurred_at` and `payload_content_type` are required\n4. Send `payload` as a string, with JSON serialised inside it, up to 512 KiB\n5. Set `HOOK0_API_URL` for `hook0-mcp` to the origin without `/api/v1`, and set `HOOK0_READ_ONLY=true` to hide the ten write tools\n\n## Questions\n\n### Which is better for AI agents, Amazon EventBridge or Hook0?\n\nAmazon EventBridge scores 73.7 (BB) on agent readiness against Hook0's 64.6 (B), and leads in 5 of 7 scored categories. Hook0 leads on payments \u0026 pricing and maintenance \u0026 community.\n\n### Do Amazon EventBridge and Hook0 need an API key?\n\nAmazon EventBridge takes an API key or an OAuth sign-in. Hook0 needs an API key.\n\n### Can an agent call Amazon EventBridge and Hook0 without installing anything?\n\nAmazon EventBridge has a hosted endpoint at https://events.us-east-1.amazonaws.com. Hook0 runs on your own machine, with no hosted endpoint listed.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hook0.json, and with the fewest tokens: https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hook0.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"amazon-eventbridge\", \"b\": \"hook0\"}`. From a terminal: `anchor compare amazon-eventbridge hook0`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/amazon-eventbridge.json and https://www.anchorterminal.com/api/v1/tools/hook0.json\n\n## Other comparisons with Amazon EventBridge or Hook0\n\n- [Ably vs Amazon EventBridge](https://www.anchorterminal.com/compare/ably-vs-amazon-eventbridge.md)\n- [Ably vs Hook0](https://www.anchorterminal.com/compare/ably-vs-hook0.md)\n- [Amazon EventBridge vs Convoy](https://www.anchorterminal.com/compare/amazon-eventbridge-vs-convoy.md)\n- [Amazon EventBridge vs Hookdeck](https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hookdeck.md)\n- [Amazon EventBridge vs PubNub](https://www.anchorterminal.com/compare/amazon-eventbridge-vs-pubnub.md)\n- [Amazon EventBridge vs Pusher Channels](https://www.anchorterminal.com/compare/amazon-eventbridge-vs-pusher-channels.md)\n- [Amazon EventBridge vs Svix](https://www.anchorterminal.com/compare/amazon-eventbridge-vs-svix.md)\n- [Amazon EventBridge vs Upstash QStash](https://www.anchorterminal.com/compare/amazon-eventbridge-vs-upstash-qstash.md)\n- [Amazon EventBridge vs Webhook Relay](https://www.anchorterminal.com/compare/amazon-eventbridge-vs-webhook-relay.md)\n- [Convoy vs Hook0](https://www.anchorterminal.com/compare/convoy-vs-hook0.md)\n- [Hook0 vs Hookdeck](https://www.anchorterminal.com/compare/hook0-vs-hookdeck.md)\n- [Hook0 vs PubNub](https://www.anchorterminal.com/compare/hook0-vs-pubnub.md)\n- [Hook0 vs Pusher Channels](https://www.anchorterminal.com/compare/hook0-vs-pusher-channels.md)\n- [Hook0 vs Svix](https://www.anchorterminal.com/compare/hook0-vs-svix.md)\n- [Hook0 vs Upstash QStash](https://www.anchorterminal.com/compare/hook0-vs-upstash-qstash.md)\n- [Hook0 vs Webhook Relay](https://www.anchorterminal.com/compare/hook0-vs-webhook-relay.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Amazon EventBridge vs Hook0",
        "url": ""
      }
    ],
    "description": "Amazon EventBridge scores 73.7 (BB) to Hook0's 64.6 (B) for sending webhooks. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Amazon EventBridge BB 73.7",
      "Hook0 B 64.6",
      "scores"
    ],
    "h1": "Amazon EventBridge vs Hook0",
    "image": "https://www.anchorterminal.com/assets/og/compare-amazon-eventbridge-vs-hook0.png",
    "path": "/compare/amazon-eventbridge-vs-hook0",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Amazon EventBridge vs Hook0 for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/amazon-eventbridge-vs-hook0"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 780
  },
  "version": 1
}
