Skip to main content

Technical Changes

Information for developers and API users about what's changed, and what's planned.

Written by James Scholes

This article contains technical details on notable changes to underlying processes, automations, data structures and API calls for sheepCRM. It is also where we will announce upcoming changes which may affect any custom integrations or workflows.

If you need any further details on any of the changes please contact us via support.

Upcoming changes

Any planned changes which you may need to be aware of will appear here. Please check back regularly.

  • ETA Sept 2026: Segments - Extend available resources for segments will also include evidence - no front-end table view but can be used to build segments for exports

September 2026

  • Events - Tighter definition of a ticketed third-party event when created by API calls/webhooks from another box office:

    • If a booking record has:

      • booking_type: 'third_party'

      • ticketed_event: True

      • controller: <any string>

    • the Event detail view will show a summary of ticket purchases over time

    • the Event detail view will provide access to Orders and Attendees

    • the Event will NOT allow tickets to be added from within the sheepCRM UI

    • sheepCRM will warn users when editing the configuration that this is a third party event, as changes made from within sheepCRM will likely not be reflected in the third party box office

      Please update your custom integrations to match the above behaviour for consistent access to Orders and Attendee information within sheepCRM Alpine

August 2026

  • Available fields in segments/contact directory: extended to include support for more group fields including groups_accepted, groups_applied, groups_submitted, groups_rejected

  • Contact Mapreduce: A change has been made to the main contact mapreduce when processing form_responses.

    • Previously form_fields would be added as a simple key:label pair

    • Going forward form_fields contains a rich dictionary for each question:

      "form|1234|5678|910": {
      "label": "Form > Name > Section > Question",
      "type": "select-from-list",
      "choices": [
      "Red",
      "Green",
      "Blue"
      ]
      }

  • SchemaFields: A parallel change has been made to the SchemaFields GET call to correctly process form_fields after the change above

  • Membership selfservice call (/api/v1/{flock}/user/hosted/membership/{uid}/): Change from using membership_type when fetching plan details (for renewal) to preferring next_membership_type if set. This fixes an issue where membership joining_fee could be incorrectly applied during a renewal with a plan change.

  • Fieldset exports: form fields in exports will now show their label rather than the raw field UID

July 2026

  • Booking: uncancel action will now set status to "draft" rather than "pending", bringing states in line with expectations for events managed in sheepAlpine

  • SMS messages are now queued and sent asynchronously to avoid a timeout issue with larger segments.

Did this answer your question?