Skedulo Webhooks API
The Webhooks API from Skedulo — 6 operation(s) for webhooks.
The Webhooks API from Skedulo — 6 operation(s) for webhooks.
openapi: 3.0.0
info:
title: Authentication Admin Webhooks API
description: Skedulo Authentication API
version: 1.0.0
servers:
- url: https://api.skedulo.com/auth
- url: https://api.uk.skedulo.com/auth
- url: https://api.ca.skedulo.com/auth
- url: https://api.au.skedulo.com/auth
tags:
- name: Webhooks
paths:
/webhooks:
get:
security:
- Authorization: []
summary: Get webhooks
description: Get all existing webhooks
operationId: webhooksFetch
responses:
'200':
description: success
content:
application/json:
schema:
type: object
required:
- result
properties:
result:
type: array
items:
$ref: '#/components/schemas/Webhook'
'403':
description: If the user does not have the required permissions
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
tags:
- Webhooks
post:
security:
- Authorization: []
summary: Create a new webhook
description: Establish a new webhook.
operationId: webhooksCreate
responses:
'200':
description: success
content:
application/json:
schema:
type: object
required:
- result
properties:
result:
type: array
items:
$ref: '#/components/schemas/Webhook'
'403':
description: If the user does not have the required permissions.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewWebhook'
required: true
tags:
- Webhooks
/webhooks/{id}:
delete:
security:
- Authorization: []
summary: Delete a webhook
description: Delete a webhook using the webhook ID.
operationId: webhooksDelete
parameters:
- name: id
in: path
description: Identifier of the webhook to delete.
required: true
schema:
type: string
format: uuid
responses:
'200':
description: success
'403':
description: If the user does not have the required permissions.
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
default:
description: Error
content:
'*/*':
schema:
$ref: '#/components/schemas/Error'
tags:
- Webhooks
/webhooks/schema:
get:
security:
- Authorization: []
summary: Webhook GraphQL schema
description: Retrieve the GraphQL schema that is used for webhooks with type `graphql`.
operationId: webhookGraphQLSchema
responses:
'200':
description: Schema was returned.
default:
description: Error
content:
application/text:
schema:
$ref: '#/components/schemas/Error'
tags:
- Webhooks
/webhooks/graphql:
post:
security:
- Authorization: []
summary: Webhook GraphQL introspection
description: Perform an introspection query against the GraphQL query that is used for webhooks with type `graphql`.
operationId: webhookGraphQLQuery
responses:
'200':
description: Introspection query was returned.
content:
application/json:
schema:
$ref: '#/components/schemas/GraphQLResult'
'400':
description: Invalid query
content:
application/json:
schema:
$ref: '#/components/schemas/GraphQLResult'
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
tags:
- Webhooks
/webhooks/deferred/schema:
get:
security:
- Authorization: []
summary: Webhook Deferred GraphQL schema
description: Retrieve the GraphQL schema that is used for webhooks with type `graphql_deferred`.
operationId: webhookDeferredGraphQLSchema
responses:
'200':
description: Schema was returned.
default:
description: Error
content:
application/text:
schema:
$ref: '#/components/schemas/Error'
tags:
- Webhooks
/webhooks/deferred/graphql:
post:
security:
- Authorization: []
summary: Webhook Deferred GraphQL introspection
description: Perform an introspection query against the GraphQL query that is used for webhooks with type `graphql_deferred`.
operationId: webhookDeferredGraphQLQuery
responses:
'200':
description: Introspection query was returned.
content:
application/json:
schema:
$ref: '#/components/schemas/GraphQLResult'
'400':
description: Invalid query
content:
application/json:
schema:
$ref: '#/components/schemas/GraphQLResult'
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
tags:
- Webhooks
components:
schemas:
WebhookBase:
type: object
required:
- id
- type
- name
- url
- headers
properties:
id:
type: string
format: uuid
name:
type: string
url:
type: string
format: uri
maxLength: 2048
headers:
type: object
additionalProperties: true
NewWebhook:
oneOf:
- $ref: '#/components/schemas/WebhookGraphQL'
- $ref: '#/components/schemas/WebhookGraphQLDeferred'
- $ref: '#/components/schemas/WebhookScheduled'
- $ref: '#/components/schemas/WebhookInboundSMS'
discriminator:
propertyName: type
mapping:
graphql: '#/components/schemas/WebhookGraphQL'
graphql_deferred: '#/components/schemas/WebhookGraphQLDeferred'
scheduled: '#/components/schemas/WebhookScheduled'
inbound_sms: '#/components/schemas/WebhookInboundSMS'
Webhook:
oneOf:
- $ref: '#/components/schemas/WebhookGraphQL'
- $ref: '#/components/schemas/WebhookGraphQLDeferred'
- $ref: '#/components/schemas/WebhookScheduled'
- $ref: '#/components/schemas/WebhookInboundSMS'
discriminator:
propertyName: type
mapping:
graphql: '#/components/schemas/WebhookGraphQL'
graphql_deferred: '#/components/schemas/WebhookGraphQLDeferred'
scheduled: '#/components/schemas/WebhookScheduled'
inbound_sms: '#/components/schemas/WebhookInboundSMS'
GraphQLResult:
type: object
properties:
data:
type: object
description: Query result
additionalProperties: true
errors:
type: array
items:
$ref: '#/components/schemas/GraphQLError'
WebhookGraphQL:
allOf:
- $ref: '#/components/schemas/WebhookBase'
required:
- type
- query
properties:
type:
type: string
enum:
- graphql
query:
type: string
WebhookGraphQLDeferredOffset:
oneOf:
- type: integer
format: int64
- $ref: '#/components/schemas/WebhookGraphQLDeferredOffsetField'
WebhookGraphQLDeferred:
allOf:
- $ref: '#/components/schemas/WebhookBase'
required:
- type
- name
- offset
- query
properties:
type:
type: string
enum:
- graphql_deferred
filter:
type: string
name:
type: string
offset:
$ref: '#/components/schemas/WebhookGraphQLDeferredOffset'
query:
type: string
WebhookScheduled:
allOf:
- $ref: '#/components/schemas/WebhookBase'
required:
- type
- cron
properties:
type:
type: string
enum:
- scheduled
cron:
type: string
GraphQLError:
type: object
description: errors
properties:
message:
type: string
description: Error message.
location:
type: object
properties:
line:
type: string
description: Line Number
column:
type: string
description: Column number
WebhookGraphQLDeferredOffsetField:
required:
- fieldName
properties:
fieldName:
type: string
default:
type: integer
format: int64
Error:
type: object
required:
- errorType
- message
properties:
errorType:
type: string
message:
type: string
errorId:
type: string
WebhookInboundSMS:
allOf:
- $ref: '#/components/schemas/WebhookBase'
required:
- type
properties:
type:
type: string
enum:
- inbound_sms
securitySchemes:
Authorization:
type: http
scheme: bearer
bearerFormat: JWT