Module: Coffrify
- Defined in:
- lib/coffrify.rb,
lib/coffrify/client.rb,
lib/coffrify/errors.rb,
lib/coffrify/version.rb,
lib/coffrify/webhook.rb,
lib/coffrify/event_catalog.rb
Defined Under Namespace
Modules: Webhook Classes: ApiError, ApiKeys, Audit, AuthError, Client, Error, NotFoundError, RateLimitError, Transfers, ValidationError, Webhooks
Constant Summary collapse
- VERSION =
"0.2.0".freeze
- EVENT_CATALOG =
Static event catalog mirroring the JS SDK / REST ‘GET /v1/webhooks/events`.
[ # Transfer { type: "transfer.created", family: "transfer", stability: "stable" }, { type: "transfer.downloaded", family: "transfer", stability: "stable" }, { type: "transfer.expired", family: "transfer", stability: "stable" }, { type: "transfer.deleted", family: "transfer", stability: "stable" }, { type: "transfer.cloned", family: "transfer", stability: "stable" }, { type: "transfer.scanned", family: "transfer", stability: "stable" }, { type: "transfer.scan_clean", family: "transfer", stability: "stable", required_plan: "pro" }, { type: "transfer.scan_infected", family: "transfer", stability: "stable", required_plan: "pro" }, { type: "transfer.scan_quarantined", family: "transfer", stability: "stable", required_plan: "pro" }, { type: "transfer.limit_reached", family: "transfer", stability: "stable" }, { type: "transfer.password_failed", family: "transfer", stability: "stable" }, { type: "transfer.geo_blocked", family: "transfer", stability: "stable", required_plan: "ultra" }, { type: "transfer.preview_opened", family: "transfer", stability: "beta" }, { type: "transfer.email_sent", family: "transfer", stability: "stable" }, { type: "transfer.e2e_created", family: "transfer", stability: "stable" }, # Workspace { type: "workspace.created", family: "workspace", stability: "stable" }, { type: "workspace.plan_changed", family: "workspace", stability: "stable" }, { type: "workspace.payment_succeeded", family: "workspace", stability: "stable" }, { type: "workspace.payment_failed", family: "workspace", stability: "stable" }, { type: "workspace.usage_limit_warning", family: "workspace", stability: "stable" }, { type: "workspace.usage_limit_reached", family: "workspace", stability: "stable" }, # Members { type: "member.invited", family: "member", stability: "stable" }, { type: "member.accepted", family: "member", stability: "stable" }, { type: "member.removed", family: "member", stability: "stable" }, # API keys / tokens { type: "api_key.created", family: "api_key", stability: "stable" }, { type: "api_key.revoked", family: "api_key", stability: "stable" }, { type: "api_key.rotated", family: "api_key", stability: "stable" }, { type: "api_key.expired", family: "api_key", stability: "stable" }, { type: "api_key.suspicious_usage", family: "api_key", stability: "beta", required_plan: "ultra" }, { type: "api_token.created", family: "api_token", stability: "stable" }, { type: "api_token.used", family: "api_token", stability: "beta" }, { type: "api_token.expired", family: "api_token", stability: "stable" }, # Webhook self { type: "webhook.delivery_failed_final", family: "webhook", stability: "stable" }, { type: "webhook.endpoint_disabled", family: "webhook", stability: "stable" }, # SCIM/SAML { type: "scim.user_provisioned", family: "scim", stability: "stable", required_plan: "enterprise" }, { type: "scim.user_deprovisioned", family: "scim", stability: "stable", required_plan: "enterprise" }, { type: "saml.login_succeeded", family: "saml", stability: "stable", required_plan: "enterprise" }, { type: "saml.login_failed", family: "saml", stability: "stable", required_plan: "enterprise" }, # Audit/GDPR { type: "audit.exported", family: "audit", stability: "stable" }, { type: "audit.policy_violated", family: "audit", stability: "beta", required_plan: "ultra" }, { type: "gdpr.deletion_requested", family: "gdpr", stability: "stable", required_plan: "pro" }, { type: "gdpr.export_requested", family: "gdpr", stability: "stable", required_plan: "pro" }, # System { type: "ping", family: "system", stability: "stable" }, ].freeze