Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Knock Schedules API

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

Knock Schedules API is one of 19 APIs that Knock publishes on the APIs.io network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification.

Tagged areas include Schedules. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an AsyncAPI specification.

This API exposes 6 operations across 3 paths, and defines 40 schemas. It is described by OpenAPI 3.0.0, at version 1.0.

Requests are made against a single base URL, https://api.knock.app.

6 operations 3 paths 40 schemas 1 DELETE3 GET1 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.0
API Version
1.0
Base URL
https://api.knock.app/v1
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

Knock Schedules API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (JWT) (BearerAuth). By default, every request must be authenticated.

Paths & Operations 6

Across 3 paths, the API surfaces 6 operations — 1 DELETE, 3 GET, 1 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Schedules 6

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

GET
/v1/objects/{collection}/{id}/schedules
List object schedules
listObjectSchedules 7 params → 200
DELETE
/v1/schedules
Delete schedules
deleteSchedules body → 200
GET
/v1/schedules
List schedules
listSchedules 6 params → 200
POST
/v1/schedules
Create schedules
createSchedules body → 200
PUT
/v1/schedules
Update schedules
updateSchedules body → 200
GET
/v1/users/{user_id}/schedules
List user schedules
listUserSchedules 6 params → 200

Schemas 40

The contract defines 40 schemas that model the data the API accepts and returns. The most detailed are Schedule (12 properties), InlineIdentifyUserRequest (10 properties), User (9 properties), CreateSchedulesRequest (8 properties). Each schema is shown below with its type and property counts.

DiscordIncomingWebhookConnection
object
Discord incoming webhook connection.
1 property 1 required
TenantRequest
object
A tenant to be set in the system. You can supply any additional properties on the tenant object.
5 properties 1 required
Schedule
object
A schedule represents a recurring workflow execution.
12 properties 6 required
RecipientReference
A reference to a recipient, either a user identifier (string) or an object reference (ID, collection).
InlinePreferenceSetRequest
object
Inline set preferences for a recipient, where the key is the preference set id. Preferences that are set inline will be merged into any existing preferences ra…
InlineTenantRequest
An request to set a tenant inline.
CreateSchedulesRequest
object
A request to create a schedule.
8 properties 2 required
MsTeamsTokenConnection
object
Microsoft Teams token connection.
4 properties
PageInfo
object
Pagination information for a list of resources.
4 properties 2 required
Object
object
A custom [Object](/concepts/objects) entity which belongs to a collection.
6 properties 4 required
MsTeamsIncomingWebhookConnection
object
Microsoft Teams incoming webhook connection.
1 property 1 required
OneSignalChannelDataPlayerIdsOnly
object
OneSignal channel data.
1 property 1 required
InlineIdentifyObjectRequest
object
A custom [Object](/concepts/objects) entity which belongs to a collection.
6 properties 2 required
PreferenceSetWorkflowCategorySetting
object
Workflow or category preferences within a preference set
Recipient
object
A recipient of a notification, which is either a user or an object.
PreferenceSetChannelTypes
object
Channel type preferences.
6 properties
PreferenceSetChannelTypeSetting
object
A set of settings for a channel type. Currently, this can only be a list of conditions to apply.
1 property 1 required
UpdateSchedulesRequest
object
A request to update a schedule.
7 properties 1 required
DeleteSchedulesRequest
object
A request to delete a schedule.
1 property 1 required
PreferenceSetRequest
object
A request to set a preference set for a recipient.
6 properties
AWSSNSPushChannelDataTargetARNsOnly
object
AWS SNS push channel data.
1 property 1 required
DiscordChannelConnection
object
Discord channel connection.
1 property 1 required
AWSSNSPushChannelDataDevicesOnly
object
AWS SNS push channel data.
1 property 1 required
InlineIdentifyUserRequest
object
A set of parameters to inline-identify a user with. Inline identifying the user will ensure that the user is available before the request is executed in Knock.…
10 properties 1 required
Condition
object
A condition to be evaluated.
3 properties 3 required
InlineChannelDataRequest
object
A request to set channel data for a type of channel inline.
User
object
A [User](/concepts/users) represents an individual in your system who can receive notifications through Knock. Users are the most common recipients of notifica…
9 properties 3 required
RecipientRequest
Specifies a recipient in a request. This can either be a user identifier (string), an inline user request (object), or an inline object request, which is deter…
PushChannelDataTokensOnly
object
Push channel data.
1 property 1 required
DiscordChannelData
object
Discord channel data.
1 property 1 required
SlackTokenConnection
object
A Slack connection token.
3 properties
PreferenceSetChannels
object
Channel preferences.
ScheduleRepeatRule
object
The repeat rule for the schedule.
7 properties 1 required
SlackIncomingWebhookConnection
object
A Slack connection incoming webhook.
1 property 1 required
SlackChannelData
object
Slack channel data.
2 properties 1 required
SchedulesResponse
array
A list of schedules.
MsTeamsChannelData
object
Microsoft Teams channel data.
2 properties 1 required
ListSchedulesResponse
object
A response containing a list of schedules.
2 properties 2 required
PreferenceSetChannelSetting
object
A set of settings for a specific channel. Currently, this can only be a list of conditions to apply.
1 property 1 required
PushChannelDataDevicesOnly
object
Push channel data.
1 property 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

knock-schedules-api-openapi.yml Raw ↑

Other APIs Knock publishes across the network.

Knock Audiences API
Knock Bulk operations API
Knock Channel data API
Knock Feeds API
Knock Guides API
Knock Integrations API
Knock Messages API
Knock Microsoft Teams API
Knock Objects API
Knock Preferences API
Knock Providers API
Knock Slack API