sheepCRM API (1.0.0)

Download OpenAPI specification:Download

The sheepCRM API is a RESTful API that allows you to access and manipulate data in your sheepCRM database. Sheep was built with an API-first approach, so all of the functionality you see in the web interface is available via the API.

The API is designed to be used by developers to build custom integrations and applications. It is not designed to be used by end users, although some of the endpoints are available to end users via the self-service app.

Please report any inaccuracies or omissions to support@sheepcrm.com on the understanding that this documentation is a work in progress and will be updated regularly.

Contact

Avatar

The avatar for the person or organisation If an image has been provided it will be returned as a redirect If no image has been provided a placeholder image will be generated based on the initials of the name.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Display

The display name for the record e.g. the persons name or the organisation name

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "display_value": "Caroline Smith"
}

Contact - summary

get a summary of a contact (person or organisation) from their uri

path Parameters
contact_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Person - communications detail

get the communication details for a person e.g. email, phone, address

path Parameters
person_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Person - personal detail

get the personal details for a person

path Parameters
person_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Person - membership list

Get the full membership history for a person, current and historic, use the /summary endpoint for a faster summary

path Parameters
person_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "contact_uri": "string",
  • "count": 0,
  • "memberships": [
    ]
}

Search

Find Person (specific) Deprecated

check for a specific person contact from within sheepCRM, for general searching use the search endpoint. this call has been deprecated in favour of an identical call to the search endpoint /search/v2/{bucket}/person

path Parameters
bucket
required
string
query Parameters
title
string
first_name
string
last_name
string
email
string
date_of_birth
string
postal_code
string
take_first_if_multiple
boolean

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Search - 'Global'

search across the whole system /search/v2/{bucket}/?q=John+Smith The global url is an alias: /search/v2/{bucket}/global

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
q
required
string (q)
Example: q=john smith

Responses

Response samples

Content type
application/json
{
  • "results": [
    ]
}

Search - Help

search within our help documentation

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
q
required
string (q)
Example: q=john smith
limit
integer
Default: 10
include_text
boolean
Default: false

include the text of the help articles in the response as text

include_html
boolean
Default: false

include the text of the help articles in the response as html

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Search - Vehicles

search for a specific vehicle by registration number, engine number or identifying number

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
registration_number
string (registration_number)
Example: registration_number=EK23 JWW

Vehicle registration number

engine_number
string (engine_number)
Example: engine_number=1234567890

Vehicle engine number

identifying_number
string (identifying_number)
Example: identifying_number=1234567890

Vehicle identifying number (VIN in modern cars)

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Search - People

search for a specific person (this is the same as the /api/v2/find/person/{bucket} endpoint)

path Parameters
bucket
required
string
query Parameters
title
string
first_name
string
last_name
string
email
string
date_of_birth
string
postal_code
string
take_first_if_multiple
boolean

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

People

Find Person (specific) Deprecated

check for a specific person contact from within sheepCRM, for general searching use the search endpoint. this call has been deprecated in favour of an identical call to the search endpoint /search/v2/{bucket}/person

path Parameters
bucket
required
string
query Parameters
title
string
first_name
string
last_name
string
email
string
date_of_birth
string
postal_code
string
take_first_if_multiple
boolean

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Person - communications detail

get the communication details for a person e.g. email, phone, address

path Parameters
person_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Person - personal detail

get the personal details for a person

path Parameters
person_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Person - membership list

Get the full membership history for a person, current and historic, use the /summary endpoint for a faster summary

path Parameters
person_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "contact_uri": "string",
  • "count": 0,
  • "memberships": [
    ]
}

Membership

Person - membership list

Get the full membership history for a person, current and historic, use the /summary endpoint for a faster summary

path Parameters
person_uri
required
string (uri)
Example: /example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "contact_uri": "string",
  • "count": 0,
  • "memberships": [
    ]
}

Membership - single

Get a summary of a single membership record (a member record), use the /detail endpoint to get the full details

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership - single detail

Get a summary of the membership details for a person, use the /all endpoint to get the full details

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extra settings

Get the extra settings for a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Add additional field

Add an additional user input field to a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
label
required
string

The label for the field that will be shown to the user

field
string

The field name, if not provided the label will be slugified

description
required
string

A description of the field, shown to the user

form_type
required
string
Enum: "checkbox" "date" "email" "multi-choice" "number" "person_record" "select" "tel" "text" "textarea"

The type of field

required
boolean

Is this field required?

options
Array of strings

If the form_type is select, this is the list of options that will be shown to the user

dob_required
boolean

If the form_type is person_record, is the date of birth required?

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Remove additional field

Remove an additional user input field from a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
field
required
string

The field name to be removed

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Add condition

Add a condition to a membership plan e.g. Age: Under 18

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
key
required
string

The key element of the condition

value
required
string

The value element of the condition

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Remove condition

Remove a condition from a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
key
required
string

The key element of the condition

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Audit

Audit

Pull audit log messages across the whole client for a time period Available as standard JSON packet or a list for easier reading Note the call is time limited to 20 seconds, so if you have a lot of audit messages you may need to reduce the limit and break into multiple calls

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
limit
integer
Default: 250
from
string (datetime)
Example: from=2023-09-05T11:27:06.437000

A date in the format YYYY-MM-DDTHH:MM:SS.mmmmmm

to
string (datetime)
Example: to=2023-09-05T11:27:06.437000

A date in the format YYYY-MM-DDTHH:MM:SS.mmmmmm

resource
string (resource_type)
Example: resource=person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

format
string
Default: "json"
Enum: "json" "list"

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Audit - Single Record

Pull audit log messages from a single record

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
limit
integer
Default: 250
since_days
integer
Default: 180

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "count": 0,
  • "uri": "/example/person/6305f074683e800f3abe809e/",
  • "related_uris": [
    ]
}

Audit - provenance

Pull the provenance for a specific record

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Events

Events - List

All the events for a client within the past 14 days and next 90 Aliased as /events/v2/{bucket}/bookings

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
page_size
integer
Default: 250
page
integer
Default: 1

Responses

Response samples

Content type
application/json
{}

Events - List by state

All events by their status

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

state
required
string
Enum: "all" "current" "draft" "future" "past" "running"

the state or classification

query Parameters
page_size
integer
Default: 250
page
integer
Default: 1

Responses

Response samples

Content type
application/json
{}

Events - Single

All the details for an event

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{}

Event - Rebase ticket dates

Rebase the ticket dates for an event. Use this after moving the date of an event to propogate the date change to all the tickets

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "ticket_changes": [
    ],
  • "unchanged_tickets": 0
}

Event - Rebase questions

Rebase the questions to ensure that all buyers and attendees have a form response Use this when a live event with orders but no questions has questions added

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "changes": [
    ],
  • "unchanged": 0
}

Events - Single summary

Reduced fields for faster API call and for accounts without access to the full event details

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{}

Event - Attendance

All the attendees for an event Aliased as /events/v2/{bucket}/bookings/{uid}/attendance

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{}

Event - Attendance

Set the attendance status for a single attendee

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
person_uri
required
string (uri)
Example: person_uri=/example/person/6305f074683e800f3abe809e/

The URI of the person

status
required
string
Enum: "invited" "accepted" "declined" "attended" "no-show"
Example: status=attended

the attendance status

Responses

Response samples

Content type
application/json
{
  • "attendance": [
    ],
  • "booking_ref": "/example/person/6305f074683e800f3abe809e/",
  • "person_ref": "/example/person/6305f074683e800f3abe809e/",
  • "status": "string"
}

Event - Attendance

All the attendees for an event Aliased as /events/v2/{bucket}/bookings/{uid}/attendance

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{}

Event - Attendance Export

All the attendees for an event in spreadsheet format

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

query Parameters
fieldset
Array of strings
Items Enum: "core" "attendance" "communications" "emergency" "membership" "profile" "mailing"

The fieldsets (lists of fields) to be returned in the export

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Event - Available Ticket Types

Get all the ticket types available for a specific event

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "available_tickets": [
    ]
}

Event - Orders

All the orders for an event for a booking Requires booking.orders permission

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{}

Event - Orders for a contact

All the orders for an event for a specific contact Requires contact.orders permission

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "contact_uri": "/example/person/6305f074683e800f3abe809e/",
  • "orders": [
    ]
}

Event - Orders Export

All the orders for an event in spreadsheet format

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

query Parameters
fieldset
Array of strings
Items Enum: "core" "communications" "emergency" "membership" "order" "profile" "mailing"

The fieldsets (lists of fields) to be returned in the export

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Event - Meta data for the Orders Export

The meta data used to generate the export, useful for debugging a report

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

query Parameters
fieldset
Array of strings
Items Enum: "core" "communications" "emergency" "membership" "profile" "mailing"

The fieldsets (lists of fields) to be returned in the export

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Event Tickets

Get all the ticket for a specific event

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "booking": {},
  • "booking_uri": "/example/person/6305f074683e800f3abe809e/",
  • "tickets": [
    ]
}

Event Order - get

A specific order for an event Requires event.order permission

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

euid
required
string (uid)
Example: 6305f074683e800f3abe809e

The event UID

Responses

Response samples

Content type
application/json
{
  • "attendee_count": 0,
  • "buyer": "/example/person/6305f074683e800f3abe809e/",
  • "buyer_index_name": "string",
  • "currencies": [
    ],
  • "order_date": "2023-09-05T11:27:06.437000",
  • "order_total": {
    },
  • "tickets": 0,
  • "tickets_as_string": "string"
}

Event Order - delete

Deleted a specific, single order for an event Requires event.order permission

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

euid
required
string (uid)
Example: 6305f074683e800f3abe809e

The event UID

Responses

Response samples

Content type
application/json
{
  • "booking_uri": "/example/person/6305f074683e800f3abe809e/",
  • "contact_uri": "/example/person/6305f074683e800f3abe809e/",
  • "deleted": [
    ],
  • "errors": [
    ],
  • "returned_stock": [
    ]
}

Event Order - questions

The questions and answers submitted for this order Requires event.order permission

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

euid
required
string (uid)
Example: 6305f074683e800f3abe809e

The event UID

Responses

Response samples

Content type
application/json
{
  • "booking_uri": "/example/person/6305f074683e800f3abe809e/",
  • "booking_display_value": "string",
  • "buyer_uri": "/example/person/6305f074683e800f3abe809e/",
  • "responses": [
    ]
}

Export

Event - Attendance Export

All the attendees for an event in spreadsheet format

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

query Parameters
fieldset
Array of strings
Items Enum: "core" "attendance" "communications" "emergency" "membership" "profile" "mailing"

The fieldsets (lists of fields) to be returned in the export

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Event - Orders Export

All the orders for an event in spreadsheet format

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

query Parameters
fieldset
Array of strings
Items Enum: "core" "communications" "emergency" "membership" "order" "profile" "mailing"

The fieldsets (lists of fields) to be returned in the export

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Event - Meta data for the Orders Export

The meta data used to generate the export, useful for debugging a report

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

The resource UID, usually a person UID

query Parameters
fieldset
Array of strings
Items Enum: "core" "communications" "emergency" "membership" "profile" "mailing"

The fieldsets (lists of fields) to be returned in the export

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Event Tickets

Get all the ticket for a specific event

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "booking": {},
  • "booking_uri": "/example/person/6305f074683e800f3abe809e/",
  • "tickets": [
    ]
}

Fieldset - list of fields

A list of fields that can be used to create a segment, report or export

path Parameters
bucket
required
string

The bucket to get the fieldset for

query Parameters
resource
string

The resource to get the applicable fieldset

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "fieldsets": [
    ]
}

Fieldset - create a fieldset

Create a fieldset that can be used to create a segment, report or export

path Parameters
bucket
required
string

The bucket to create the fieldset for

query Parameters
name
string
Default: "Field list based on {resource_type}"

the name of the fieldset

description
string
Default: "Field list based on {resource_type}"

the description of the fieldset

fields
Array of strings
Default: ["field_name"]

the fields of the fieldset

resource
string

used to generate the fieldset from all the fields on a resource

applicable_resources
Array of strings
Default: ["resource_type"]

the applicable resources of the fieldset

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "applicable_resources": [
    ],
  • "created": "string",
  • "description": "string",
  • "field_display": [
    ],
  • "fields": [
    ],
  • "last_updated": "string",
  • "locked": true,
  • "name": "string",
  • "record_state": "string",
  • "uid": "string",
  • "uri": "string"
}

Fieldset - delete

Delete an existing fieldset

path Parameters
bucket
required
string

The bucket to delete the fieldset for

uid
required
string

The uid of the fieldset to delete

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Fieldset - single fieldset

A single fieldset that can be used to create a segment, report or export

path Parameters
bucket
required
string

The bucket to get the fieldset for

uid
required
string

The uid of the fieldset to get

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "applicable_resources": [
    ],
  • "created": "string",
  • "description": "string",
  • "field_display": [
    ],
  • "fields": [
    ],
  • "last_updated": "string",
  • "locked": true,
  • "name": "string",
  • "record_state": "string",
  • "uid": "string",
  • "uri": "string"
}

Internal

Membership Plan - Extra settings

Get the extra settings for a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Add additional field

Add an additional user input field to a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
label
required
string

The label for the field that will be shown to the user

field
string

The field name, if not provided the label will be slugified

description
required
string

A description of the field, shown to the user

form_type
required
string
Enum: "checkbox" "date" "email" "multi-choice" "number" "person_record" "select" "tel" "text" "textarea"

The type of field

required
boolean

Is this field required?

options
Array of strings

If the form_type is select, this is the list of options that will be shown to the user

dob_required
boolean

If the form_type is person_record, is the date of birth required?

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Remove additional field

Remove an additional user input field from a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
field
required
string

The field name to be removed

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Add condition

Add a condition to a membership plan e.g. Age: Under 18

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
key
required
string

The key element of the condition

value
required
string

The value element of the condition

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Membership Plan - Extras - Remove condition

Remove a condition from a membership plan

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
key
required
string

The key element of the condition

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Request Partner Sync

Request a sync with a partner

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

partner
required
string
Enum: "clio" "gocardless" "mailchimp" "mryum" "stripe"

The partner to sync with e.g. mailchimp, gocardless, stripe

action
required
string
Enum: "pull" "push"

The action to perform e.g. pull, push

data_type
required
string
Enum: "contacts" "consents" "payments"

The data type to sync e.g. contacts, payments

query Parameters
since_hours
integer
Default: 24

The number of hours to look back for changes e.g. 24 would look back 24 hours for changes

create_contacts
boolean

If the data_type is contacts, should new contacts be created?

full
boolean

Where supported a full sync will override the since_hours parameter

Responses

Response samples

Content type
application/json
{
  • "action": "string",
  • "data_type": "string",
  • "function_name": "string",
  • "params": {
    },
  • "partner": "string",
  • "status": "string"
}

Request a warehouse build

Request a warehouse build

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

facet
required
string
Enum: "attendance" "contact" "contact_large" "fundraising" "membership"

The facet to build e.g. contact, membership

query Parameters
force
boolean
Default: false

If force is false the build will only run if the there are relevant changes since the last build.

safe_mode
boolean
Default: false

If safe_mode is true, the build will be executed in a read only way.

Responses

Response samples

Content type
application/json
{
  • "function_name": "string",
  • "message": "string",
  • "params": {
    },
  • "status": "string"
}

Create new composite user policy

Create a composite user policy from a set of standard policies

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
policies
required
string
Enum: "achievement" "base" "base-ro" "events" "events-management" "evidence" "evidence-read-only" "form-admin" "form-response" "gdpr" "group" "group-add-member" "group-members" "health-edi" "membership" "membership-ro" "notifications" "payment" "person" "person-ro" "send-messages" "session" "team-leader" "team-leader-with-applications" "tasks-and-notes" "vehicle" "vehicle-ro"
user_type
required
string

The name of the new user policy

name
string

Optional name for the policy

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Create group policies

Expand a user policy for all groups

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
tag_filter
string

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Add a policy to all group leaders

Add the given policy to all group user accounts. The output is logged in the usage reports; safe mode will output the planned changes without applying them

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
safe_mode
boolean
Default: true

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Create a single policies

Create a single user group for a specific user policy

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
tag_filter
string

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Partners

Request Partner Sync

Request a sync with a partner

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

partner
required
string
Enum: "clio" "gocardless" "mailchimp" "mryum" "stripe"

The partner to sync with e.g. mailchimp, gocardless, stripe

action
required
string
Enum: "pull" "push"

The action to perform e.g. pull, push

data_type
required
string
Enum: "contacts" "consents" "payments"

The data type to sync e.g. contacts, payments

query Parameters
since_hours
integer
Default: 24

The number of hours to look back for changes e.g. 24 would look back 24 hours for changes

create_contacts
boolean

If the data_type is contacts, should new contacts be created?

full
boolean

Where supported a full sync will override the since_hours parameter

Responses

Response samples

Content type
application/json
{
  • "action": "string",
  • "data_type": "string",
  • "function_name": "string",
  • "params": {
    },
  • "partner": "string",
  • "status": "string"
}

Request a warehouse build

Request a warehouse build

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

facet
required
string
Enum: "attendance" "contact" "contact_large" "fundraising" "membership"

The facet to build e.g. contact, membership

query Parameters
force
boolean
Default: false

If force is false the build will only run if the there are relevant changes since the last build.

safe_mode
boolean
Default: false

If safe_mode is true, the build will be executed in a read only way.

Responses

Response samples

Content type
application/json
{
  • "function_name": "string",
  • "message": "string",
  • "params": {
    },
  • "status": "string"
}

User Policy

Create new composite user policy

Create a composite user policy from a set of standard policies

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
policies
required
string
Enum: "achievement" "base" "base-ro" "events" "events-management" "evidence" "evidence-read-only" "form-admin" "form-response" "gdpr" "group" "group-add-member" "group-members" "health-edi" "membership" "membership-ro" "notifications" "payment" "person" "person-ro" "send-messages" "session" "team-leader" "team-leader-with-applications" "tasks-and-notes" "vehicle" "vehicle-ro"
user_type
required
string

The name of the new user policy

name
string

Optional name for the policy

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Create group policies

Expand a user policy for all groups

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
tag_filter
string

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Add a policy to all group leaders

Add the given policy to all group user accounts. The output is logged in the usage reports; safe mode will output the planned changes without applying them

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
safe_mode
boolean
Default: true

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Create a single policies

Create a single user group for a specific user policy

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
tag_filter
string

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Finance

Invoice - Single

A single master invoice or statement record containing the details of the invoice, client config data and payment details

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

invoice_type
required
string (invoice_type)
Enum: "order" "invoice" "membership"
Example: order

The type of invoice

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "billing_contact": "/example/person/6305f074683e800f3abe809e/",
  • "buyer": {
    },
  • "buyer_ref": "/example/person/6305f074683e800f3abe809e/",
  • "config": {},
  • "context": "/example/person/6305f074683e800f3abe809e/",
  • "currency": "string",
  • "date": "2020-01-01",
  • "due": 0,
  • "for_the_attention_of": "string",
  • "id": "string",
  • "invoice_currency": "gbp",
  • "invoice_uri": "/example/person/6305f074683e800f3abe809e/",
  • "line_items": [
    ],
  • "links": [],
  • "number_of_payments": 0,
  • "payment_reference_uri": "/example/person/6305f074683e800f3abe809e/",
  • "purchase_order_no": "string",
  • "signature": "6305f",
  • "signed_invoice_uri": "/example/person/6305f074683e800f3abe809e/",
  • "status": "string",
  • "tax_total": 0,
  • "total": 0,
  • "total_before_tax": 0,
  • "total_paid": 0,
  • "total_scheduled": 0,
  • "total_tax": 0,
  • "xero_ready": true
}

Invoice - Single with signature

A single master invoice or statement record containing the details of the invoice, client config data and payment details

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

invoice_type
required
string (invoice_type)
Enum: "order" "invoice" "membership"
Example: order

The type of invoice

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

signature
required
string (signature)
Example: 6305f

An alphanumeric string that is used to verify the request

Responses

Response samples

Content type
application/json
{
  • "billing_contact": "/example/person/6305f074683e800f3abe809e/",
  • "buyer": {
    },
  • "buyer_ref": "/example/person/6305f074683e800f3abe809e/",
  • "config": {},
  • "context": "/example/person/6305f074683e800f3abe809e/",
  • "currency": "string",
  • "date": "2020-01-01",
  • "due": 0,
  • "for_the_attention_of": "string",
  • "id": "string",
  • "invoice_currency": "gbp",
  • "invoice_uri": "/example/person/6305f074683e800f3abe809e/",
  • "line_items": [
    ],
  • "links": [],
  • "number_of_payments": 0,
  • "payment_reference_uri": "/example/person/6305f074683e800f3abe809e/",
  • "purchase_order_no": "string",
  • "signature": "6305f",
  • "signed_invoice_uri": "/example/person/6305f074683e800f3abe809e/",
  • "status": "string",
  • "tax_total": 0,
  • "total": 0,
  • "total_before_tax": 0,
  • "total_paid": 0,
  • "total_scheduled": 0,
  • "total_tax": 0,
  • "xero_ready": true
}

Notifications

Notifications - list for user

Get all notifications for the user ordered by date (new -> old)

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
page_size
integer
Default: 7

Responses

Response samples

Content type
application/json
{
  • "notification": {
    }
}

Notifications - single

Get a single notification

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Tasks

Tasks - list for user

Get all tasks for the user ordered by date (new -> old)

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
page_size
integer
Default: 7

Responses

Response samples

Content type
application/json
{
  • "tasks": {
    }
}

Tasks - list for user

Get all tasks for the user ordered by date (new -> old)

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
page_size
integer
Default: 7

Responses

Response samples

Content type
application/json
{
  • "tasks": {
    }
}

Task - single

Get a single task

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Task - complete

Mark a single task as complete

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Task - snooze

Snooze a single task for 24 hours or for 24 hours from now if overdue.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Task - uncomplete

Mark a single completed tasks as uncomplete/active. i.e. undo a completed task to make it active again

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Segments

Segments - All active segments

Segments are groups of records that can be used for browsing or bulk actions. A segment can be thought of as a stored query or view in traditional database terms. This endpoint returns a list of all the active segments in the system.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
page_size
number (page_size)
Example: page_size=10

The number of items to return per page, usually used in conjunction with page to paginate a list of items

page
number (page)
Example: page=1

A page number, usually used in conjunction with page_size to paginate a list of items

Responses

Response samples

Content type
application/json
{
  • "segments": [
    ]
}

Segments - All segments

A list of all the segments in the system including inactive segments.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
page_size
number (page_size)
Example: page_size=10

The number of items to return per page, usually used in conjunction with page to paginate a list of items

page
number (page)
Example: page=1

A page number, usually used in conjunction with page_size to paginate a list of items

Responses

Response samples

Content type
application/json
{
  • "segments": [
    ]
}

Segments - Create a new segment

Segments are groups of records that can be used for browsing or bulk actions. A segment can be thought of as a stored query or view in traditional database terms. This endpoint creates a new segment.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
name
string
description
string
segment_type
string
Default: "dynamic"
Enum: "dynamic" "static" "hybrid" "auxiliary"
view_context
string
Enum: "comments" "crm" "documents" "events" "forms" "giving" "membership" "minimal_membership_directory" "reservations" "teams" "vehicles"
parent_segment
string (uri)
Example: parent_segment=/example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

active
boolean
Default: true
Array of objects
uris_include
Array of strings (uri)
Example: uris_include=/example/person/6305f074683e800f3abe809e/
uris_exclude
Array of strings (uri)
Example: uris_exclude=/example/person/6305f074683e800f3abe809e/
resource_type
required
string
Enum: "achievement" "booking" "comment" "contact" "duplicates" "form_response" "group" "group_member" "journal" "membership" "message" "organisation" "page_document" "payment" "person" "reservation" "sheep_event" "vehicle"
system_segment
boolean
Default: false
tags
Array of strings
mailchimp_sync
boolean
Default: false

If this is a segment of contacts, syncing will create a matching segment in mailchimp

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "created": "2023-09-05T11:27:06.437000",
  • "description": "string",
  • "display_value": "string",
  • "last_updated": "2023-09-05T11:27:06.437000",
  • "legacy_uid": "string",
  • "mailchimp_sync": true,
  • "name": "string",
  • "parent_segment": "string",
  • "record_state": "string",
  • "resource_type": "person",
  • "rules": { },
  • "segment_type": "dynamic",
  • "system_segment": true,
  • "tags": [
    ],
  • "uid": "6305f074683e800f3abe809e",
  • "uri": "/example/person/6305f074683e800f3abe809e/",
  • "uris_exclude": [
    ],
  • "uris_include": [
    ],
  • "user_interface": {
    },
  • "view_context": [
    ]
}

Segments - Find a segment by name

A list of all the active segments in the system matching the search term.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
name
required
string
page_size
number (page_size)
Example: page_size=10

The number of items to return per page, usually used in conjunction with page to paginate a list of items

page
number (page)
Example: page=1

A page number, usually used in conjunction with page_size to paginate a list of items

Responses

Response samples

Content type
application/json
{
  • "segments": [
    ]
}

Segment - Config

The config for a segment

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "mapping": {
    },
  • "resource_type": "string",
  • "segment": "/example/person/6305f074683e800f3abe809e/",
  • "segment_type": "dynamic",
  • "user_groups": [
    ],
  • "user_groups_for_display": [
    ],
  • "user_interface": {
    },
  • "view_context": [
    ]
}

Segment - Count

The count and description of the segment

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "count": 0,
  • "description": "string",
  • "segment": "/example/person/6305f074683e800f3abe809e/"
}

Segment - Lookup

Lookup a record within a segment using a simple single search term

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
q
string (uid)
Example: q=6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Segment - All records

Segments are groups of records that can be used for browsing or bulk actions. This endpoint returns a list of all the records in the segment.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
q
string (q)
Example: q=john smith
page_size
number (page_size)
Example: page_size=10

The number of items to return per page, usually used in conjunction with page to paginate a list of items

page
number (page)
Example: page=1

A page number, usually used in conjunction with page_size to paginate a list of items

verbose
boolean (verbose)
Example: verbose=true

A boolean value that can be used to return more verbose information in a response

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Segment - PDF export

Export a PDF report based on the data from the segment

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
template
required
string
policy
string
gdpr_bypass
boolean
Default: false
gdpr_bypass_reason
string
debug
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "bucket": "example",
  • "uid": "6305f074683e800f3abe809e",
  • "lambda_prefix": "string",
  • "policy": "string",
  • "gdpr_bypass": true,
  • "gdpr_channel": "string",
  • "user_uri": "/sheepcrm/user/6305f074683e800f3abe809e/",
  • "template": "string",
  • "journal_uri": "/example/person/6305f074683e800f3abe809e/",
  • "use_mapreduce": true,
  • "report_format": "string",
  • "debug": true
}

Segment - XLSX export

Export a XLSX report based on the data from the segment

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
template
string
policy
string
gdpr_bypass
boolean
Default: false
gdpr_bypass_reason
string
debug
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "bucket": "example",
  • "uid": "6305f074683e800f3abe809e",
  • "lambda_prefix": "string",
  • "policy": "string",
  • "gdpr_bypass": true,
  • "gdpr_channel": "string",
  • "user_uri": "/sheepcrm/user/6305f074683e800f3abe809e/",
  • "template": "string",
  • "journal_uri": "/example/person/6305f074683e800f3abe809e/",
  • "use_mapreduce": true,
  • "report_format": "string",
  • "debug": true
}

Segment - Sync Mailchimp

Sync the segment with Mailchimp

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
segment_name
string
Default: "The name of the segment"
mailchimp_batch_size
integer
Default: 500
verbose
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "bucket": "example",
  • "lambda_prefix": "string",
  • "segment_uri": "/example/person/6305f074683e800f3abe809e/",
  • "segment_name": "string",
  • "mailchimp_batch_size": 0,
  • "verbose": true,
  • "journal_uri": "/example/person/6305f074683e800f3abe809e/",
  • "safe_mode": true
}

Fieldset - list of fields

A list of fields that can be used to create a segment, report or export

path Parameters
bucket
required
string

The bucket to get the fieldset for

query Parameters
resource
string

The resource to get the applicable fieldset

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "fieldsets": [
    ]
}

Fieldset - create a fieldset

Create a fieldset that can be used to create a segment, report or export

path Parameters
bucket
required
string

The bucket to create the fieldset for

query Parameters
name
string
Default: "Field list based on {resource_type}"

the name of the fieldset

description
string
Default: "Field list based on {resource_type}"

the description of the fieldset

fields
Array of strings
Default: ["field_name"]

the fields of the fieldset

resource
string

used to generate the fieldset from all the fields on a resource

applicable_resources
Array of strings
Default: ["resource_type"]

the applicable resources of the fieldset

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "applicable_resources": [
    ],
  • "created": "string",
  • "description": "string",
  • "field_display": [
    ],
  • "fields": [
    ],
  • "last_updated": "string",
  • "locked": true,
  • "name": "string",
  • "record_state": "string",
  • "uid": "string",
  • "uri": "string"
}

Fieldset - delete

Delete an existing fieldset

path Parameters
bucket
required
string

The bucket to delete the fieldset for

uid
required
string

The uid of the fieldset to delete

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Fieldset - single fieldset

A single fieldset that can be used to create a segment, report or export

path Parameters
bucket
required
string

The bucket to get the fieldset for

uid
required
string

The uid of the fieldset to get

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "applicable_resources": [
    ],
  • "created": "string",
  • "description": "string",
  • "field_display": [
    ],
  • "fields": [
    ],
  • "last_updated": "string",
  • "locked": true,
  • "name": "string",
  • "record_state": "string",
  • "uid": "string",
  • "uri": "string"
}

App

App - Request empty form responses

This endpoint returns a list of empty form responses for the given form.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
form_ref
required
string (uri)
Example: form_ref=/example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

quantity
required
integer >= 1
Default: 1

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Allocate a form response to a contact

Set or change the contact for the form response

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
contact_ref
required
string (uri)
Example: contact_ref=/example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Delete the contact on a form response

Delete the contact for the form response leaving it empty

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

App - Invoice PDF

A printable PDF of an invoice. The template parameter is optional and defaults to sheep-invoice-a4. The standard template uses the logo, address and other settings provided for the client. Contact the support team if you would like a custom template.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

signature
required
string (signature)
Example: 6305f

An alphanumeric string that is used to verify the request

query Parameters
template
string
Default: "sheep-invoice-a4"

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

App - Giving PDF

A printable PDF of a giving statement for a tax year

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

start_year
required
number
Example: 2022
end_year
required
number
Example: 2023

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

App - Membership card PDF

A printable PDF Member card

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

App - Public Pages

All pages (and index pages) are accessed through a single endpoint. The path is a required parameter and the response will be a page config block and zero or more resources. User credentials are optional but may be required if the page is not public or is only for members.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
path
string
Example: path=archive-introduction/

The URL path (after the domain name). All paths should end with a trailing slash.

object (page_user_query)

A dictionary of query terms which are merged with the base query for the index page (if present).

Responses

Response samples

Content type
application/json
{}

Forms

App - Request empty form responses

This endpoint returns a list of empty form responses for the given form.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

query Parameters
form_ref
required
string (uri)
Example: form_ref=/example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

quantity
required
integer >= 1
Default: 1

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Allocate a form response to a contact

Set or change the contact for the form response

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

query Parameters
contact_ref
required
string (uri)
Example: contact_ref=/example/person/6305f074683e800f3abe809e/

URIs are unique identifiers for resources in the system, they are structured as follows /bucket/resource_type/uid/

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

Delete the contact on a form response

Delete the contact for the form response leaving it empty

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

PDF

App - Invoice PDF

A printable PDF of an invoice. The template parameter is optional and defaults to sheep-invoice-a4. The standard template uses the logo, address and other settings provided for the client. Contact the support team if you would like a custom template.

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

resource_type
required
string (resource_type)
Example: person

The type of resource, usually the second element in the URI e.g person, organisation, member, payment

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

signature
required
string (signature)
Example: 6305f

An alphanumeric string that is used to verify the request

query Parameters
template
string
Default: "sheep-invoice-a4"

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

App - Giving PDF

A printable PDF of a giving statement for a tax year

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

start_year
required
number
Example: 2022
end_year
required
number
Example: 2023

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}

App - Membership card PDF

A printable PDF Member card

path Parameters
bucket
required
string (bucket)
Example: example

The bucket (client) name

uid
required
string (uid)
Example: 6305f074683e800f3abe809e

Usually the final element in the URI, an alphanumeric unique identifier

Responses

Response samples

Content type
application/json
{
  • "description": "string",
  • "error": "string",
  • "type": "string"
}