{
  "@context": {
    "@vocab": "https://hookbase.app/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "hookbase": "https://hookbase.app/schema#",
    "Error": "hookbase:Error",
    "error": {
      "@id": "hookbase:error",
      "@type": "xsd:string"
    },
    "Source": "hookbase:Source",
    "id": {
      "@id": "hookbase:id",
      "@type": "xsd:string"
    },
    "organizationId": {
      "@id": "hookbase:organizationId",
      "@type": "xsd:string"
    },
    "name": {
      "@id": "hookbase:name",
      "@type": "xsd:string"
    },
    "slug": {
      "@id": "hookbase:slug",
      "@type": "xsd:string"
    },
    "provider": {
      "@id": "hookbase:provider",
      "@type": "xsd:string"
    },
    "description": {
      "@id": "hookbase:description",
      "@type": "xsd:string"
    },
    "hasSigningSecret": {
      "@id": "hookbase:hasSigningSecret",
      "@type": "xsd:boolean"
    },
    "signingSecretLast4": {
      "@id": "hookbase:signingSecretLast4",
      "@type": "xsd:string"
    },
    "awaitingSigningSecret": {
      "@id": "hookbase:awaitingSigningSecret",
      "@type": "xsd:boolean"
    },
    "verifiesWithoutSecret": {
      "@id": "hookbase:verifiesWithoutSecret",
      "@type": "xsd:boolean"
    },
    "rejectInvalidSignatures": {
      "@id": "hookbase:rejectInvalidSignatures",
      "@type": "xsd:boolean"
    },
    "rateLimitPerMinute": {
      "@id": "hookbase:rateLimitPerMinute",
      "@type": "xsd:integer"
    },
    "isActive": {
      "@id": "hookbase:isActive",
      "@type": "xsd:boolean"
    },
    "customDomainId": {
      "@id": "hookbase:customDomainId",
      "@type": "xsd:string"
    },
    "ipFilterMode": {
      "@id": "hookbase:ipFilterMode",
      "@type": "xsd:string"
    },
    "ipAllowlist": {
      "@id": "hookbase:ipAllowlist",
      "@container": "@list"
    },
    "ipDenylist": {
      "@id": "hookbase:ipDenylist",
      "@container": "@list"
    },
    "encryptFields": {
      "@id": "hookbase:encryptFields",
      "@container": "@list"
    },
    "maskFields": {
      "@id": "hookbase:maskFields",
      "@container": "@list"
    },
    "dedupEnabled": {
      "@id": "hookbase:dedupEnabled",
      "@type": "xsd:boolean"
    },
    "dedupStrategy": {
      "@id": "hookbase:dedupStrategy",
      "@type": "xsd:string"
    },
    "dedupWindowHours": {
      "@id": "hookbase:dedupWindowHours",
      "@type": "xsd:integer"
    },
    "dedupCustomHeader": {
      "@id": "hookbase:dedupCustomHeader",
      "@type": "xsd:string"
    },
    "transientMode": {
      "@id": "hookbase:transientMode",
      "@type": "xsd:boolean"
    },
    "allowedMethods": {
      "@id": "hookbase:allowedMethods",
      "@container": "@list"
    },
    "createdAt": {
      "@id": "hookbase:createdAt",
      "@type": "xsd:dateTime"
    },
    "updatedAt": {
      "@id": "hookbase:updatedAt",
      "@type": "xsd:dateTime"
    },
    "eventCount": {
      "@id": "hookbase:eventCount",
      "@type": "xsd:integer"
    },
    "routeCount": {
      "@id": "hookbase:routeCount",
      "@type": "xsd:integer"
    },
    "ingestUrl": {
      "@id": "hookbase:ingestUrl",
      "@type": "xsd:string"
    },
    "CatalogSignatureVerificationSummary": "hookbase:CatalogSignatureVerificationSummary",
    "supported": {
      "@id": "hookbase:supported",
      "@type": "xsd:boolean"
    },
    "kind": {
      "@id": "hookbase:kind",
      "@type": "xsd:string"
    },
    "secretSource": {
      "@id": "hookbase:secretSource",
      "@type": "xsd:string"
    },
    "secretLabel": {
      "@id": "hookbase:secretLabel",
      "@type": "xsd:string"
    },
    "secretPlaceholder": {
      "@id": "hookbase:secretPlaceholder",
      "@type": "xsd:string"
    },
    "secretAfterRegistration": {
      "@id": "hookbase:secretAfterRegistration",
      "@type": "xsd:boolean"
    },
    "CatalogSignatureVerification": "hookbase:CatalogSignatureVerification",
    "algorithm": {
      "@id": "hookbase:algorithm",
      "@type": "xsd:string"
    },
    "headerName": {
      "@id": "hookbase:headerName",
      "@type": "xsd:string"
    },
    "secretLocationHint": {
      "@id": "hookbase:secretLocationHint",
      "@type": "xsd:string"
    },
    "secretInstruction": {
      "@id": "hookbase:secretInstruction",
      "@type": "xsd:string"
    },
    "secretFormat": {
      "@id": "hookbase:secretFormat",
      "@type": "xsd:string"
    },
    "verifyToken": {
      "@id": "hookbase:verifyToken"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "Hookbase API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects Hookbase's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-10-18) from openapi/hookbase-openapi.json.",
  "dcterms:created": "2026-10-18",
  "dcterms:source": [
    "openapi/hookbase-openapi.json"
  ]
}