Partners ======== .. toctree:: :maxdepth: 2 :caption: Contents: gocardless mailchimp xero Generic Partner Webhook ----------------------- This is a general purpose end-point for capturing webhooks sent from partners. This end-point expects a JSON body to be sent for later processing. If signatures need checking, data re-formatting or more specialised treatment then contact the team for bespoke setup. .. code-block:: http http POST /api/v1/$FLOCK/partner/{partner}/hook/ HTTP/1.1 200 OK { "message": "ok" } Pre-configured Webhooks ----------------------- A number of partners have pre-configured webhooks. These are listed below. Generic Ticketing ----------------- ``/api/v1/$FLOCK/partner/generic-ticket/hook/`` This is a sheepCRM ticket specification. It is used by any third-party system to create tickets in sheepCRM. .. code-block:: JSON { "amount": "123.45", "booking_name": "Annual Conference 2022", "booking_uri": "/example/booking/6332d5beb1b537e984b2e407", "boxoffice": "Example Box Office", "currency": "GBP", "date_of_birth": "1980-01-01", "email": "user@test.ac.uk", "first_name": "Bob", "hook_type": "ticket_purchase", "last_name": "Example", "payment_processor": "Stripe", "payment_uid": "ch_1J5Z2n2eZvKYlo2C0Z2eZvKY", "postal_code": "AB1 2CD", "purchase_date": "2022-10-26", "quantity": 1, "ticket_type_name": "Premium Ticket", "ticket_type_uid": "/example/ticket-type/1b537e984b2e4076332d5beb/", "uid": "i2pq-v9e66xM4ZnY" } All fields are required except: payment_processor, payment_uid, date_of_birth, postal_code. If a payment_uid is not provided then no payment will be recorded against the ticket. A ticket_type_name or ticket_type_uid must be specified. At this time only hook_type ``ticket_purchase`` is supported. Other hook types may be sent, they will be stored for possible future processing. GoCardless ---------- a dedicated webhook endpoint which verifies the signatures of the webhooks. ``/api/v1/partner/gocardless/hook/`` .. todo Google ---------- | ``/api/v1/$FLOCK/partner/google/`` | ``/api/v1/$FLOCK/partner/google/calendars/`` | ``/api/v1/$FLOCK/partner/google/revoke/`` | ``/api/v1/$FLOCK/partner/google/test/`` Dropbox ------- Connect SheepCRM to Dropbox ^^^^^^^^^^^^^^^^^^^^^^^^^^^ GET to the auth end point will begin the user OAuth2 flow ending with auth-finish. | ``/api/v1/$FLOCK/partner/dropbox/auth/`` | ``/api/v1/$FLOCK/partner/dropbox/auth-finish/`` Revoke Dropbox API Access ^^^^^^^^^^^^^^^^^^^^^^^^^ Clears acccess tokens thereby disconnecting SheepCRM from Dropbox .. code-block:: http http DELETE /api/v1/$FLOCK/partner/dropbox/revoke/ HTTP/1.1 200 OK {} Other Partners -------------- |``/api/v1/$FLOCK/partner/clearbit/{resource_type}/`` |``/api/v1/$FLOCK/partner/crbonline/(?P[\w\-]+)/`` |``/api/v1/$FLOCK/partner/dial9/call/`` |``/api/v1/$FLOCK/partner/discourse/sso`` |``/api/v1/$FLOCK/partner/eventbrite/`` |``/api/v1/$FLOCK/partner/vend/`` |``/api/v1/$FLOCK/partner/woocommerce/hook/`` | |``/api/v1/$FLOCK/partner/zapier/fields/{resource_type}/`` |``/api/v1/$FLOCK/partner/{partner}/callback/`` | |``/api/v1/partner/{partner}/callback/````