Webhook Events

Event schemas fall into four categories:

  • Service

    • church.online.service.attended
    • church.online.service.served
    • church.online.service.chatted
  • User

    • church.online.user.created
    • church.online.user.updated
    • church.online.user.deleted
    • church.online.user.muted
  • Moment

    • church.online.moment.interacted
    • church.online.moment.shared
    • church.online.moment.liked
  • Prayer

    • church.online.prayer.requested
    • church.online.prayer.accepted

Service

Attended

Send an attendance record for each unique user that attended a service.

{
    "specversion" : "1.0",
    "type" : "church.online.service.attended",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/service",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
      "totalTimeAttended": 123456
    }
}

Served

Send a served record for each unique host in a service.

{
    "specversion" : "1.0",
    "type" : "church.online.service.served",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/service",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
      "totalTimeServed": 123456
    }
}

Chatted

Send a chatted event to determine engagement in chat channels.

{
    "specversion" : "1.0",
    "type" : "church.online.service.chatted",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/service",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
      "channels": [
        {
          "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
          "key": "chat.public.16e8d84c-282e-48e2-9114-6ce02b5c2104",
          "type": "public",
          "messageCount": 3
        },
        {
          "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
          "key": "chat.prayer.16e8d84c-282e-48e2-9114-6ce02b5c2104",
          "type": "prayer",
          "messageCount": 12
        }
      ]
    }
}

User

Created

Sent when a user signs up for a new account.

{
    "specversion" : "1.0",
    "type" : "church.online.user.created",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/user",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        },
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Updated

Sent when a user updates their profile.

{
    "specversion" : "1.0",
    "type" : "church.online.user.updated",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/user",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        },
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Deleted

Sent when a user account is deleted.

{
    "specversion" : "1.0",
    "type" : "church.online.user.deleted",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/user",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        },
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Muted

Sent when a user is muted.

{
    "specversion" : "1.0",
    "type" : "church.online.user.muted",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/user",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        },
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Moment

Interacted

Sent when a user interacts with the primary action of a Moment. For example, raising their hand for salvation or interacting with a Connect moment.

{
    "specversion" : "1.0",
    "type" : "church.online.moment.interacted",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/moment",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
      "moment": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "type": "SALVATION"
        "options": {
          "salvationMomentFollowUpType": "PRAYER"
        }
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Shared

Sent when a user shares a Moment.

{
    "specversion" : "1.0",
    "type" : "church.online.moment.shared",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/moment",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
      "moment": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "type": "QUOTE"
        "options": {
          "text": "Whoever Finds God, Finds Life!",
          "attribution": ""
        }
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Liked

Sent when a user likes a Moment.

{
    "specversion" : "1.0",
    "type" : "church.online.moment.liked",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/moment",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
      "moment": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "type": "QUOTE"
        "options": {
          "text": "Whoever Finds God, Finds Life!",
          "attribution": ""
        }
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Prayer

Requested

Sent when a user requests prayer.

{
    "specversion" : "1.0",
    "type" : "church.online.prayer.requested",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/prayer",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
     "channel": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "key": "chat.prayer.16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "type": "prayer"
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}

Accepted

Sent when a user accepts a prayer request.

{
    "specversion" : "1.0",
    "type" : "church.online.prayer.accepted",
    "source" : "https://live.example.church",
    "id" : "16e8d84c-282e-48e2-9114-6ce02b5c2104",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/json",
    "dataschema": "https://developers.online.church/docs/cloudevents/spec/prayer",
    "data" : {
      "user": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "firstName": "Joe",
        "lastName": "Test",
        "email": "[email protected]",
        "nickname": "Joe T.",
        "role": null,
        "meta": {
          "externalId": "auth0:12345"
        }
      },
      "service": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "scheduleTime": "2018-04-05T17:31:00Z"
      },
      "channel": {
        "id": "16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "key": "chat.prayer.16e8d84c-282e-48e2-9114-6ce02b5c2104",
        "type": "prayer"
      },
      "timestamp": "2018-04-05T17:31:00Z"
    }
}