Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: Schoology Event Triggers (Webhooks) Events API
description: 'Schoology''s documented webhook surface, called "Event Triggers". Schoology-defined
actions ("triggers") fire against user-defined HTTP endpoints ("targets") that are
linked via "subscriptions". Schoology POSTs event objects to the configured target
URL and expects an HTTP 200 response. If a non-200 is received, the event is
requeued and retried up to 5 times at 10 minute intervals, after which it is
dropped.
Source: https://developers.schoology.com/api-documentation/rest-api-triggers-v1/
Event objects: https://developers.schoology.com/api-documentation/rest-api-triggers-v1/event_objects/
'
version: '1.0'
servers:
- url: https://api.schoology.com/v1
description: Schoology REST API v1
security:
- OAuth: []
tags:
- name: Events
paths: {}
webhooks:
eventObject:
post:
summary: Receive event object
description: 'Schoology POSTs an event object to the configured target URL when a subscribed
trigger fires. The target must respond with HTTP 200. Non-200 responses are
retried up to 5 times at 10 minute intervals.
'
operationId: receiveEventObject
tags:
- Events
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EventObject'
responses:
'200':
description: Acknowledgement. Anything other than 200 causes a retry.
components:
schemas:
EventObject:
type: object
description: Payload Schoology POSTs to a target when a subscribed trigger fires.
properties:
uid:
type: string
description: Identifies who triggered the event.
timestamp:
type: string
description: When the event occurred.
type:
type: string
description: Trigger category and operation in the form "trigger_name.operation" (for example "grade_item.update", "grade_item.delete").
data:
type: object
description: Contextual information about what happened or changed.
properties:
realm:
type: string
description: Realm context (course, group, section, school, district).
realm_id:
type: string
description: Identifier within the realm.
object:
type: object
description: Identical to the object returned from a GET list or single GET call for the resource (included when include_object is 1).
required:
- uid
- timestamp
- type
securitySchemes:
OAuth:
type: oauth2
description: OAuth 1.0a / 2.0 per Schoology Authentication docs.
flows:
authorizationCode:
authorizationUrl: https://api.schoology.com/v1/oauth/authorize
tokenUrl: https://api.schoology.com/v1/oauth/access_token
scopes: {}