sheepTeams

Teams aka Groups, Regions, Applications. Our Teams system was originally built for volunteer applications to teams but has been re-used in many different ways. At the heart of the system is the concept of a Team which people can join and leave.

Team

team / group / region / area of expertise SheepCRM resource: group

team member

member of the team, applicant SheepCRM resource: group_member

Application Status

accepted

accepted / member / finished / joined

follower

pre-application / interested / follower

started

application started but not yet completed

applied

application submitted (but not accepted)

ready-for-references

references can now be requested

checking

e.g. out for reference checking

references-received

references are back and ready to checked

rejected

rejected by team leaders

waiting

accepted - waiting to join when space permits

cancelled

application cancelled by user

no-show

applicant failed to a

flagged

application has an issue/problem needs human judgement

Team Home

Teams root showing all flocks that a user can access

http https://api.sheepcrm.com/api/v1/teams/ Authorization:"Bearer $API_KEY"
HTTP/1.1 200 OK

{
    "bearer_token": "***",
    "first_name": "Support",
    "flocks": [
        "example",
        "example-association",
        "example-family",
    ],
    "last_login": "2020-02-21T14:18:55",
    "last_name": "User"
}

Team Data

The large config data packet available for building a client application.

http https://api.sheepcrm.com/api/v1/teams/$FLOCK/ Authorization:"Bearer $API_KEY"
HTTP/1.1 200 OK

{
    "bearer_token": "***",
    "config": {
        "address_lines": [
            "1 Pretend Street",
            "Pretendsville",
            "Utah"
        ],
        "availableOptions": [
            "giving",
            "consent",
            "membership",
            "events",
            "venues",
            "payments"
        ],
        "base_for_above": {
            "flockNamePublic": "Sheep Example",
            "flockNamePublicShort": "Example",
            "include_form": true,
            "logo": "/images/flocks/logo.png",
            "name_in_logo": false,
            "signupline": "Become a member",
            "tagline": "Testing System - For Internal Use Only",
            "website": "http://www.getsheep.co.uk/"
        },
        "consent_list": [
            {
                "channels": [
                    "email"
                ],
                "cid": "c000",
                "context": "What’s On Newsletter",
                "purpose": "Live Programme Newsletter"
            },
            {
                "channels": [
                    "email",
                    "phone",
                    "post"
                ],
                "cid": "c001",
                "context": "Bothering phonecalls and letters",
                "purpose": "To bother you"
            }
        ],
        "email": "fake@example.com",
        "events": true,
        "flockNamePublic": "My Community Trust",
        "flockNamePublicShort": "MCT",
        "how_to_contact_us_intro": "You can't contact us, because we're not a real organisation, but if we were you could use some details like these.",
        "how_we_collect": [
            "you send us an email",
            "you sign up as a member",
            "you make a donation",
            "you volunteer",
            "you sign up to a mailing list online"
        ],
        "how_we_collect_intro": "We collect personal information directly from you when:",
        "include_form": true,
        "logo": "...",
        "membership": {
            "allowMultiple": true,
            "cardstreamDev": {
                "countryCode": 826,
                "currencyCode": 826,
                "merchantId": "***",
                "preSharedKey": "***"
            },
            "confirmIntroText": "Please double check the details and then click confirm",
            "enabled": true,
            "hideFilteredByDefault": true,
            "payLater": {
                "linkText": "Request an invoice"
            },
            "paymentOptions": [
                "payLater",
                "stripe",
                "cardstreamDev"
            ],
            "stepIntroText": [
                "Select the membership plan that best suits you. ",
                "Please enter your details so we can create an account for you. We take your privacy very seriously and won't share this information with any third parties without your express consent.",
                "Please review the information below and check for any errors before continuing. If you find anything that isn't correct, please go back and make your changes.",
                "Please choose how you would like to pay."
            ],
            "steps": [
                "Configure membership",
                "Enter your details",
                "Review & Confirm",
                "Make Payment"
            ]
        },
        "name_in_logo": false,
        "other_questions_contact": "If you do not want us to use your data in this way, wish to stop receiving communications from us or have any other questions please email us at [myprivacy@sheepcrm.com](mailto:myprivacy@sheepcrm.com?subject=I have a question about the personal information you hold for me)",
        "palette": {
            "featureColor": "#f65161",
            "headerFont": "'Raleway', sans-serif",
            "hoverColor": "#902b35",
            "mainColor": "#f65161",
            "mainFont": "'Open Sans', sans-serif"
        },
        "phone": "01234 567 890",
        "privacy_intro": "We take privacy very seriously and want to ensure your personal data is cared for correctly and in line with the new General Data Protection Regulation (GDPR). The following page gives some information about how we care for your personal data followed by a short form which you can fill in to tell us how you would like us to communicate with you.",
        "signupline": "Become a member",
        "stripeKey": "***",
        "tagline": "",
        "teams": {
            "enabled": false
        },
        "venue_hire": {
            "amenities_introduction": "Each work space comes with everything you need to get your project off the ground.",
            "important_information_list": [
                {
                    "content": "You don’t need to bring anything, however bringing proof of this reservation will speed up the checking process. If you bring your own electrical tools to use on site then they must comply with health & safety legislation or if require mains supply will need to have been PAT tested. If necessary we can undertake PAT testing on site.",
                    "heading": "What to bring"
                },
                {
                    "content": "On your booked day you have 1 hour to claim your booked bench otherwise you will risk losing your booking, i.e if you have a morning slot you have until 10.30am, otherwise your bench will be given away.",
                    "heading": "Claiming your bench"
                },
                {
                    "content": "If you can’t make it for any reason, please note that you need to let us know before 5.30pm the day before, otherwise you will be charged as we are unable to book anyone in alternatively. For Monday bookings please let us know by the Saturday before as we are closed on Sundays.",
                    "heading": "Cancellation Policy"
                }
            ]
        },
        "website": "https://www.sheepcrm.com/",
        "what_we_collect": [
            "contact details and personal information to enable us to plan, organise and manage our annual festival and year round events and keep you up to date with news and other information ",
            "financial information relating to payments for tickets and merchandise and donations to enable such payments and donations (including Gift Aid applications) to be processed. "
        ],
        "what_we_collect_intro": "We collect the following information:",
        "why_we_collect": [
            "To build up a picture of our customer/supporter profile;",
            "To keep you up to date with news of our events, activities and other information;",
            "To process a payment that you have made for tickets or merchandise;",
            "To process a donation that you have made (including Gift Aid information); ",
            "To manage our employees and volunteers; ",
            "To maintain our own accounts and records;",
            "To process a grant;",
            "To process an application for a role."
        ],
        "why_we_collect_intro": "We use your personal data for the following purposes:"
    },
    "first_name": "Support",
    "flocks": [
        "example",
        "example-association",
        "example-family",
    ],
    "is_staff": true,
    "last_login": "2020-02-21T14:18:55",
    "last_name": "User"
}

List all active teams for a flock

    http https://api.sheepcrm.com/api/v2/teams/$FLOCK/teams/ Authorization:"Bearer $API_KEY"

    {
        "grand_total": 11,
        "results": [
            {
                "_id": null,
                "bucket": "...",
                "created": "2019-07-01T15:29:06.413000",
                "data": {
                    "accepted": 1,
                    "active": true,
                    "category": "category",
                    "description": null,
                    "entry_requirements": null,
                    "invite_code": null,
                    "invite_only": false,
                    "joining_policy": null,
                    "leader": [
                        null
                    ],
                    "links": {},
                    "location": null,
                    "location_address_string": null,
                    "location_country": null,
                    "location_postal_code": null,
                    "max": null,
                    "min": null,
                    "name": "name",
                    "reapply_to_group": null,
                    "remuneration": null,
                    "renuneration": null,
                    "skills_required": null,
                    "tags": [
                        null
                    ],
                    "total_applicants": 1,
                    "uid": "...-group-5d1a26c2461a181aadaa9b15",
                    "uri": "/.../group/5d1a26c2461a181aadaa9b15/",
                    "what_you_will_do": null,
                    "working_pattern": null
                },
                "display_value": "name",
                "last_updated": "2019-07-01T15:29:06.472000",
                "resource": "group",
                "state": "updated",
                "uri": "/.../group/5d1a26c2461a181aadaa9b15/"
            },
            ...
    ],
"total": 11

}

List of active teams for a given leader

{leader-slugified-uri}

the person uri of the leader. slugify the uri (/example/person/1234/ => example-person-1234)

    http https://api.sheepcrm.com/api/v2/teams/$FLOCK/{leader-slugified-uri} Authorization:"Bearer $API_KEY"

    {
        "grand_total": 11,
        "results": [
            {
                "_id": null,
                "bucket": "...",
                "created": "2019-07-01T15:29:06.413000",
                "data": {
                    "accepted": 1,
                    "active": true,
                    "category": "category",
                    "description": null,
                    "entry_requirements": null,
                    "invite_code": null,
                    "invite_only": false,
                    "joining_policy": null,
                    "leader": [
                        null
                    ],
                    "links": {},
                    "location": null,
                    "location_address_string": null,
                    "location_country": null,
                    "location_postal_code": null,
                    "max": null,
                    "min": null,
                    "name": "name",
                    "reapply_to_group": null,
                    "remuneration": null,
                    "renuneration": null,
                    "skills_required": null,
                    "tags": [
                        null
                    ],
                    "total_applicants": 1,
                    "uid": "...-group-5d1a26c2461a181aadaa9b15",
                    "uri": "/.../group/5d1a26c2461a181aadaa9b15/",
                    "what_you_will_do": null,
                    "working_pattern": null
                },
                "display_value": "name",
                "last_updated": "2019-07-01T15:29:06.472000",
                "resource": "group",
                "state": "updated",
                "uri": "/.../group/5d1a26c2461a181aadaa9b15/"
            },
            ...
    ],
"total": 11

}

Single team detail

Full team data including a list of members with basic profile data. Team UID is a slugified version of the group URI e.g. example-group-5c055088d406945a79dab6d8

http https://api.sheepcrm.com/api/v1/teams/$FLOCK/{team-uid}/ Authorization:"Bearer $API_KEY"
HTTP/1.1 200 OK

{
    "active": true,
    "category": "primary",
    "config": {
        ...
    },
    "description": "This group is an example, which anyone should be able to join.\n\nIt has headers\n==========\n\nIt **must** correctly display markdown text including:\n\n* lists\n* _emphasis_\n* headers\n* ~magic~ paragraphs\n",
    "entry_requirements": "There are no specific requirements for this team",
    "invite_code": null,
    "invite_only": false,
    "joining_policy": null,
    "leader": [
        null
    ],
    "leaders": [],
    "location": null,
    "location_address_string": null,
    "location_country": null,
    "location_postal_code": null,
    "max": null,
    "members": [
        {
            "email": "britt@home.com",
            "extra": null,
            "first_name": "Britt",
            "group": "/example/group/5c055088d406945a79dab6d8/",
            "last_name": "Abernathy",
            "membership_status": "cancelled",
            "mobile": null,
            "person": "/example/person/54aaf7ad3078f80d90d8ca11/",
            "person_name": "Britt Abernathy",
            "photo-avatar": "https://s3-eu-west-1.amazonaws.com/sheepcrm/example/person/54aaf7ad3078f80d90d8ca11/photo/avatar--woman-profile.jpeg",
            "role": "Group Admin",
            "sortable_name": "abernathy britt",
            "status": "applied",
            "tags": [
                null
            ],
            "telephone": "01235012289",
            "uid": [
                "example-group_member-5d8dffc10b915a588aa79f57"
            ],
            "uri": "/example/group_member/5d8dffc10b915a588aa79f57/"
        },
        ...
    ],
    "min": null,
    "name": "Example Group 1",
    "processing_operation": null,
    "reapply_to_group": null,
    "remuneration": null,
    "renuneration": null,
    "skills_required": "It would be helpful if applicants were able to survive in a nitrogen-rich atmosphere",
    "tags": [
        null
    ],
    "total_volunteer_days": 0,
    "what_you_will_do": null,
    "working_pattern": null
}

Attendance for a given team

{team-slugified-uri}

the team uri. slugify the uri (/example/group/1234/ => example-group-1234)

{booking_id}

the id of the booking. (/example/booking/1234/ => 1234)

expansions

optional control param for more/less data

  • profile - add profile data (recommended)

  • application_questions - include application questions and answers

  • consolidated_questions - use in conjunction with application_questions to consolidate questions and answers across multiple applications

  • -team_memberships - remove team_membership data

List of all team members and their attendance:

https://api.sheepcrm.com/api/v2/teams/$FLOCK/team/{team-slugified-uri}/attendance/{booking_id}/ Authorization:"Bearer $API_KEY" expansions==profile

Update / Set the attendance for a team member

{team-slugified-uri}

the team uri. slugify the uri (/example/group/1234/ => example-group-1234)

{booking_id}

the id of the booking. (/example/booking/1234/ => 1234)

person_ref

the uri of the person / team member / attendee

attendance_status

valid values: ‘invited’, ‘accepted’, ‘declined’, ‘attended’ & ‘no-show’

PUT https://api.sheepcrm.com/api/v2/teams/$FLOCK/team/{team-slugified-uri}/attendance/{booking_id}/ Authorization:"Bearer $API_KEY" person_ref=/example/person/1234 attendance_status=attended

List of tasks for a given team

Open tasks:

https://sls-api.sheepcrm.com/api/v2/$FLOCK/group/{uid}/tasks Authorization:"Bearer $API_KEY"

All tasks (open and closed):

https://sls-api.sheepcrm.com/api/v2/$FLOCK/group/{uid}/tasks/all Authorization:"Bearer $API_KEY"