Global.Church Developer Portal
Global.Church API

Partners

Endpoint:https://api.global.church

Publish a digital-engagement release product

POST
https://api.global.church
/v0/partners/releases

Receives one release product from a partner analytics system (reference implementation: Kavanah Analytics' export_release_product job) on behalf of a contributing organization: aggregate counts of digital reach at country x month grain only (exposed, interactions, touchpoints, active), with a manifest naming the sources, the countries the organization chose to include, whether it wants to be named on the map, and the data-sharing agreement it accepted (id, version, SHA-256 of the text, acceptance time). Nothing below country grain is representable in the body. No small-cell suppression and no restricted-country list apply at this grain: a country-level count locates no one, and the organization's own choice of what to include is the control. The release is validated against the published JSON Schema (its agreement must be a text Global.Church has published, by id, version and SHA-256) and stored exactly as received with its SHA-256; a refusal (400) carries its first problem in error and all of them in problems; gc-kavanah-bridge --release <id> then loads it into <https://data.global.church/releases/digital-engagement/>, where it supersedes the organization's earlier release (in the test window a Global.Church operator runs the load). Sending the same bytes again returns the stored release. Authority in this version is the partner API key issued to the organization's workspace, which Global.Church binds to the organizations it may publish for (403 otherwise); the workspace-owner role that accepted the agreement is taken on the partner system's word (the Home steward check comes later). Not yet deployed.

Publish a digital-engagement release product › Headers

  • Authorizationstring · required

    The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Publish a digital-engagement release product › Request Body

  • manifestobject · required

    schemaVersion ("0.2.0"), grain ("country x month"), suppression ("none"), sources, countriesIncluded, organization {orgUri, partnerOrgId}, displayName {named, name?}, period {firstMonth, lastMonth}, agreement {id, version, sha256, acceptedAt, acceptedByRole}, unattributed {exposed, interactions}, generatedAt, generatedBy, testData.

  • rowsobject[] · required

Publish a digital-engagement release product › Responses

Release accepted for loading

  • releaseIdstring · required

    The release IRI under https://data.global.church/releases/digital-engagement/releases/

  • manifestHashstring · required

    SHA-256 of the body as received

  • statusstring · enum · required
    Enum values:
    accepted

CORS preflight for publish partner release

OPTIONS
https://api.global.church
/v0/partners/releases

CORS preflight for publish partner release › Responses

No content

No data returned