Knock website screenshot

Knock

Knock is a notification infrastructure platform with workflows, channels (email, SMS, push, in-app), preferences, and digests. Stripe-style API for sending and orchestrating multi-channel notifications.

Knock publishes 19 APIs on the APIs.io network, including Audiences API, Bulk operations API, Channel data API, and 16 more. Tagged areas include Notifications, Email, SMS, Push, and Workflows.

The Knock catalog on APIs.io includes 1 event-driven AsyncAPI specification and 1 Spectral governance ruleset.

Knock’s developer surface includes authentication and 9 more developer resources.

36.1/100 thin ▼ -7.3 Agent 39/100 agent ready Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessSelf serve
19 APIs
NotificationsEmailSMSPushWorkflows

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 36.1/100 · thin
Contract Quality 15.8 / 25
Developer Ergonomics 2.2 / 20
Commercial Clarity 5.8 / 20
Operational Transparency 3.4 / 13
Governance 5.0 / 12
Discoverability 7.4 / 10
Agent readiness — 39/100 · agent ready
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 0 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 6 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/knock: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 19

Individual APIs this provider publishes, each with its own machine-readable definition.

Knock Audiences API

An Audience is a segment of users.

Knock Bulk operations API

A bulk operation is a set of changes applied across zero or more records triggered via a call to the Knock API and performed asynchronously.

Knock Channel data API

Channel data is data that is specific to a recipient and a channel, like push tokens, or one or more Slack connections.

Knock Feeds API

The Feeds API from Knock — 2 operation(s) for feeds.

Knock Guides API

The Guides API from Knock — 8 operation(s) for guides.

Knock Integrations API

The Integrations API from Knock — 2 operation(s) for integrations.

Knock Messages API

A message sent to a single recipient on a channel.

Knock Microsoft Teams API

The Microsoft Teams API from Knock — 4 operation(s) for microsoft teams.

Knock Objects API

An object represents a resource in your system that you want to map into Knock.

Knock Preferences API

Preferences are a way to configure how notifications are sent to recipients. They are a set of configuration that determines whether a recipient should receive a notification fo...

Knock Providers API

A provider represents a third-party service that Knock integrates with and is configured via a channel.

Knock Schedules API

A schedule is a per-recipient, timezone-aware configuration for when to invoke a workflow.

Knock Slack API

The Slack API from Knock — 3 operation(s) for slack.

Knock Subscriptions API

A subscription represents a connection between a recipient and an object, used to represent a list.

Knock Tenants API

A tenant represents a top-level entity from your system, like a company, organization, account, or workspace.

Knock Users API

A user is an individual from your system, represented in Knock. They are most commonly a recipient of a notification.

Knock Workflow recipient runs API

A workflow run represents an individual execution of a workflow for a specific recipient.

Knock Workflow Triggers API

Operations for triggering and canceling workflow executions.

Knock Workflows API

A workflow is a structured set of steps that is triggered to produce notifications sent over channels.

Scroll for all 19

Open Collections 1

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

Knock API

OPEN COLLECTION

Pricing Plans 1

Published pricing tiers and plan structures.

Knock Plans Pricing

1 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Knock Rate Limits

1 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Knock Finops

FINOPS

Event Specifications 1

AsyncAPI definitions for this provider's event-driven and streaming APIs.

Knock Real-Time In-App Feed (Phoenix Channels)

AsyncAPI specification for Knock's real-time in-app notification feed transport. Knock exposes a Phoenix Channels WebSocket that pushes feed updates to subscribed clients. The c...

ASYNCAPI

Spectral Rules 1

Spectral governance rulesets for linting and validating these APIs.

Knock API Rules

8 rules · 1 errors 7 warnings

SPECTRAL

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Knock Authentication

http · 1 scheme

SECURITY

Knock Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Knock Agentic Access

116 operations · 78 acting · 3 human-in-the-loop

116 operations · 78 acting

AGENTIC

Resources

Agent Surfaces 2

MCP servers, agent skills, and machine-readable catalogs

Build 1

SDKs, sample code, and the tooling you integrate with

Access & Security 2

Authentication, authorization, and security posture

Operate 1

Status, limits, changes, and where to get help

Commercial 2

Pricing, plans, and the legal terms of use

Company 2

The organization behind the API

Source (apis.yml)

apis.yml Raw ↑
aid: knock
url: https://raw.githubusercontent.com/api-evangelist/knock/refs/heads/main/apis.yml
name: Knock
kind: company
description: Knock is a notification infrastructure platform with workflows, channels (email, SMS, push, in-app), preferences,
  and digests. Stripe-style API for sending and orchestrating multi-channel notifications.
accessModel:
  pricing: unknown
  onboarding: self-serve
  trial: false
  try_now: false
  public: false
  label: Self-serve signup
  confidence: high
  source:
  - plans
  - authentication
  generated: '2026-07-22'
  method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/knock.png
tags:
- Notifications
- Email
- SMS
- Push
- Workflows
created: '2026-05-08'
modified: '2026-05-29'
specificationVersion: '0.19'
apis:
- aid: knock:knock-audiences-api
  name: Knock Audiences API
  description: An Audience is a segment of users.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Audiences
  properties:
  - type: OpenAPI
    url: openapi/knock-audiences-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-bulk-operations-api
  name: Knock Bulk operations API
  description: A bulk operation is a set of changes applied across zero or more records triggered via a call to the Knock
    API and performed asynchronously.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Bulk operations
  properties:
  - type: OpenAPI
    url: openapi/knock-bulk-operations-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-channel-data-api
  name: Knock Channel data API
  description: Channel data is data that is specific to a recipient and a channel, like push tokens, or one or more Slack
    connections.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Channel data
  properties:
  - type: OpenAPI
    url: openapi/knock-channel-data-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-feeds-api
  name: Knock Feeds API
  description: The Feeds API from Knock — 2 operation(s) for feeds.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Feeds
  properties:
  - type: OpenAPI
    url: openapi/knock-feeds-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-guides-api
  name: Knock Guides API
  description: The Guides API from Knock — 8 operation(s) for guides.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Guides
  properties:
  - type: OpenAPI
    url: openapi/knock-guides-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-integrations-api
  name: Knock Integrations API
  description: The Integrations API from Knock — 2 operation(s) for integrations.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Integrations
  properties:
  - type: OpenAPI
    url: openapi/knock-integrations-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-messages-api
  name: Knock Messages API
  description: A message sent to a single recipient on a channel.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Messages
  properties:
  - type: OpenAPI
    url: openapi/knock-messages-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-microsoft-teams-api
  name: Knock Microsoft Teams API
  description: The Microsoft Teams API from Knock — 4 operation(s) for microsoft teams.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Microsoft Teams
  properties:
  - type: OpenAPI
    url: openapi/knock-microsoft-teams-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-objects-api
  name: Knock Objects API
  description: An object represents a resource in your system that you want to map into Knock.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Objects
  properties:
  - type: OpenAPI
    url: openapi/knock-objects-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-preferences-api
  name: Knock Preferences API
  description: Preferences are a way to configure how notifications are sent to recipients. They are a set of configuration
    that determines whether a recipient should receive a notification for a given workflow on a specific channel.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Preferences
  properties:
  - type: OpenAPI
    url: openapi/knock-preferences-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-providers-api
  name: Knock Providers API
  description: A provider represents a third-party service that Knock integrates with and is configured via a channel.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Providers
  properties:
  - type: OpenAPI
    url: openapi/knock-providers-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-schedules-api
  name: Knock Schedules API
  description: A schedule is a per-recipient, timezone-aware configuration for when to invoke a workflow.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Schedules
  properties:
  - type: OpenAPI
    url: openapi/knock-schedules-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-slack-api
  name: Knock Slack API
  description: The Slack API from Knock — 3 operation(s) for slack.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Slack
  properties:
  - type: OpenAPI
    url: openapi/knock-slack-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-subscriptions-api
  name: Knock Subscriptions API
  description: A subscription represents a connection between a recipient and an object, used to represent a list.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Subscriptions
  properties:
  - type: OpenAPI
    url: openapi/knock-subscriptions-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-tenants-api
  name: Knock Tenants API
  description: A tenant represents a top-level entity from your system, like a company, organization, account, or workspace.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Tenants
  properties:
  - type: OpenAPI
    url: openapi/knock-tenants-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-users-api
  name: Knock Users API
  description: A user is an individual from your system, represented in Knock. They are most commonly a recipient of a notification.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Users
  properties:
  - type: OpenAPI
    url: openapi/knock-users-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-workflow-recipient-runs-api
  name: Knock Workflow recipient runs API
  description: A workflow run represents an individual execution of a workflow for a specific recipient.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Workflow recipient runs
  properties:
  - type: OpenAPI
    url: openapi/knock-workflow-recipient-runs-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-workflow-triggers-api
  name: Knock Workflow Triggers API
  description: Operations for triggering and canceling workflow executions.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Workflow Triggers
  properties:
  - type: OpenAPI
    url: openapi/knock-workflow-triggers-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
- aid: knock:knock-workflows-api
  name: Knock Workflows API
  description: A workflow is a structured set of steps that is triggered to produce notifications sent over channels.
  humanURL: https://docs.knock.app/reference
  baseURL: https://api.knock.app/v1
  tags:
  - Workflows
  properties:
  - type: OpenAPI
    url: openapi/knock-workflows-api-openapi.yml
  - type: Documentation
    url: https://docs.knock.app/reference
  - type: AsyncAPI
    url: asyncapi/knock-asyncapi.yml
common:
- type: AgenticAccess
  url: agentic-access/knock-agentic-access.yml
- type: DomainSecurity
  url: security/knock-domain-security.yml
- type: Authentication
  url: authentication/knock-authentication.yml
- type: GitHubOrganization
  url: https://github.com/knocklabs
- type: LinkedIn
  url: https://www.linkedin.com/company/knockcrm
- type: Website
  url: https://knock.app/
- type: Plans
  url: plans/knock-plans-pricing.yml
- type: RateLimits
  url: rate-limits/knock-rate-limits.yml
- type: FinOps
  url: finops/knock-finops.yml
- type: LlmsText
  url: https://docs.knock.app/llms.txt
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com