Skip to main content
Current availability (September 15, 2026): CheckAI beta, Chat beta, and E-sign beta are Private Preview, available only to the existing beta tester group. Signing up, choosing a paid plan, upgrading, contacting support, or viewing a public demo does not grant access. Dated entries below describe release history; they do not open enrollment. Ordinary file attachments and external MCP connections are separate from these previews.

MCP

  • Docs now include per-assistant connect guides for Claude, ChatGPT, Cursor, and Claude Code. Hosted MCP stays live on mcp.soundchecklive.io. Claude Connectors Directory (soundcheck) and the ChatGPT plugin are submitted for review and not listed yet; use the custom URL recipes on those pages today. No Cursor Marketplace plugin yet. Official registry remains io.soundchecklive/soundcheck 0.1.1-ts.

Dates

  • Gig and inbox dates stay on the calendar day they were stored, including Flex/Studio timestamps that are not midnight UTC. Activity, setlist, and “member since” clocks show your local time. Accept and Decline stay available through the end of show day in the gig’s timezone, including invitations that would already look finished if read in UTC. Offer expiry copy (“Expires today”) uses that same gig-zone day, so it no longer disagrees with the urgency label on the card.

Onboarding

  • Organization onboarding step titles stay in their own columns on long trackers. Phones and narrow tablets show the current step under the circles; wider screens clamp each title to two lines. The lines between steps stay solid instead of breaking into pills.
  • Sign-up and invite wizard rail markers stay opaque so the hairline does not show through, and a truncated step title shows the full name on hover or keyboard focus.

MCP

  • Docs now advertise live connect URLs on mcp.soundchecklive.io: public https://mcp.soundchecklive.io/public/mcp (soundcheck-public 0.1.0-ts, four tools) and member https://mcp.soundchecklive.io/mcp (OAuth via Clerk PRM). Official MCP Registry listing io.soundchecklive/soundcheck is published at 0.1.1-ts. Prefer those hosts over any api.soundchecklive.io MCP path. Do not advertise qa-mcp / dev-mcp (still NXDOMAIN). No Cursor Marketplace plugin yet.

Chat

  • In-app event-chat members can leave a thread themselves. Managers still remove other people. Texting STOP (or STOPALL, UNSUBSCRIBE, CANCEL, END, QUIT) also drops an SMS member from that group; carriers may hide some of those texts from Soundcheck.
  • Archiving a chat, or archiving / cancelling / deleting a gig or org, no longer leaves Twilio conversations silently open when the close or delete fails. Retry the same action; it is safe to run again.

Gigs

  • Accepting or declining a gig invitation right after signing up now fails with an error if we cannot link the invitation to your account, instead of looking successful while the invite stays missing from your mailbox. An interrupted accept or decline can still finish after the gig date only when that earlier request recorded the same action for the same account.
  • Split-day crew offers keep the per-day seat targets you set. An earlier data fix could copy each day’s invite count over the target and close an offer that was still short; that copy is undone and offers are re-checked against the targets as stored.
  • Clearing a crew-offer seat target stays cleared after you reopen the offer sheet.

Gigs

  • Duplicate Gig, Save as Template, and Use template now carry over every planning section of the gig page, not just the details, invitations, schedule, setlists, and checklist. Added: run of show (with linked songs and documents), venue logistics overrides and show notes, clients, staffing shifts with their rosters, hotels, flights with passengers, open inventory assignments, files, custom sections, and the department. Times rebase to the new date, shifts come back as unsent drafts with everyone pending, confirmation numbers and ticket details are cleared, and copied files get their own storage so deleting one never removes the other. Duplicates stay in their tour; templates do not.
  • Save as team on the Staffing board turns a gig’s shifts into a reusable team template: one seat per position sized to the shift’s need, accepted crew seated first, then pending. It opens the usual team form pre-filled so you can rename, categorize, and trim before saving, and the result shows up under Use a team on every other gig.

Imports

  • Import preview counts for staffing now match commit when two rows describe the same gig (same title and date, even with different external IDs). Re-importing a shift whose previous job offer has expired fills that seat instead of treating the stale offer as still live, and overlapping imports no longer create duplicate staffing. Two shift rows that share a title and call window but map to different positions now both import instead of the second being dropped.

Tasks

  • Assigning a checklist task no longer double-notifies when the same push is delivered twice at once, or when a retry follows a database hiccup right after the first push went out. A retry that picks up an assignment whose earlier attempt stalled mid-send treats the push as already delivered rather than risking a second one; the task itself is still waiting in My tasks.

Tasks

  • Assigning a checklist task now notifies the person you assigned it to. They get a push, and the task lands in one My tasks list: the Tasks tab and a Tasks segment in the Mailbox on mobile, and the My tasks tab on /tasks on web. Tasks are grouped by gig, soonest first, with completed work collapsed, and you can check them off without opening the gig. The web sidebar and the mobile Mailbox badge count what is still open. Several tasks assigned on one gig at once arrive as a single notification, and assigning to yourself does not notify you.
  • /tasks is no longer admin-only. Every member with the tasks feature sees their own assigned work there; building templates still requires organization admin.

MCP

  • Lead tools now match the API: get_lead / update_lead / delete_lead accept optional organization_id (defaults from the MCP session), create_lead requires source, and list_leads accepts a search filter on name, email, company, or location.
  • create_event accepts start_time / end_time as RFC3339 or unix seconds (number or numeric string), so agents are not stuck at schema -32602 or API 400 for unix values.
  • After a confirmed delete_venue, default list_venues returns only org-saved venues (saved_only defaults true). Pass saved_only=false to search the shared global directory. list_songs lists the org song library so you can verify delete_song.
  • set_org_timezone (confirmation-gated) writes the org IANA timezone so new events are not stuck on UTC. set_availability type=unavailable stores UNAVAILABLE (case-insensitive); invalid types are rejected.

App

  • Mobile founder signup is now the same three steps as web: organization name, what you do, then account. The workspace is created on that screen instead of a separate setup page.
  • People joining from an organization invite can now finish on the phone: create or sign in, review the invite, add a profile, and join that team. They are not given a personal workspace.

MCP

  • Member MCP OAuth discovery now lists the authorization provider and serves authorization-server and protected-resource metadata so external clients can discover the sign-in requirements.
  • Venue and customer lookup now honors limit/offset and accepts a search name filter, so agents can find “Caswell House” without loading the whole directory. list_venues and list_setlists default organization_id to the caller’s active org.
  • create_event stores the required name as the event title and returns it as both name and title. When timezone is omitted, a numeric start_time offset (for example -05:00) is mapped to a US IANA zone so a 7 PM Central gig does not display as UTC midnight.
  • duplicate_event copies venue_id and adds the caller as a member. add_event_member accepts org_position_id so you can staff a named role.
  • Confirmation-gated delete_venue, delete_customer, delete_song, and delete_setlist wrap the existing REST deletes. Invalid member user ids return 400 instead of 500.
  • Leads and inventory are first-class MCP tools: list/get/create/update, pipeline actions (claim_lead, mark_lead_lost, reopen_lead, gated convert_lead), gated deletes, and inventory assign/return. list_inventory honors search and pagination. Get, update, and delete lead tools authorize the caller’s org first and return the same not-found for missing and cross-org IDs.

Gigs

  • Staffing Grid now keeps unstaffed + Shift drafts visible next to staffed people, the same way Details → Crew does: “No crew selected yet”, the saved call time, chronological order, and a discard control that does not remove the rest of the role.

App

  • The iOS TestFlight app opens again. A Twilio Babel override that unblocked Expo Go broke the release bundle and crashed launch; chat now loads the Conversations SDK only when you open a thread.
  • Mobile Mailbox no longer stacks Active / Needs response / Responded / Past on top of type chips. Mail is one list — needs-reply, scheduled, and a collapsed Past section — with type chips as the only filter. Availability checks live in Mail. Set your hours from You → Settings → Availability.
  • Signing out or deleting your account no longer waits forever if a device keychain write hangs. The app gives that write a few seconds, then continues cleanup, keeps the deletion lock, and retries that key on the next pass so a late write cannot restore the deleted session.

Gigs

  • Confirming a shorten on a staffed multi-day gig now reaches the API. The acknowledgement was dropped on the way out, so Confirm retried the same refusal and surfaced it as a toast with no way to proceed.
  • Gig chats (now Private Preview for existing beta testers) no longer leave Twilio participants behind when someone is removed from the org or the org is deleted. Managers who can see a thread are added as participants so they can open it. Creating a chat with no successful members rolls the conversation back. SMS onboarding is one group announcement, not a ping to everyone for each new number. Archived threads lock the composer on web the same way they do on mobile, and unread badges refresh when you return to the app or mark a thread read.

Activity

  • Event Activity now shows who made each change. Older rows that were stored without a name look up the actor from the org roster.

Imports

  • The operator-data importer now lives at Settings → Organization → Imports, next to Data. Assets is files only. Older /imports and /assets?tab=imports links still redirect.
  • Owners and admins can download a workspace zip from Settings → Organization → Data: UEF JSON plus wizard-ready CSVs for crew, venues, clients, inventory, songs, setlists, events, and leads. Restore the CSVs on Settings → Organization → Imports. Commit the JSON from the same Data page. Money, files, branding, and integration tokens stay out. See Export a workspace.
  • Workspace export now includes call-list staffed event members (including standby) who never received an invitation.
  • Importing a UEF bundle treats row errors as a partial failure even when failed_rows is zero.

MCP

  • Added hosted public MCP tools for organization lookup, positions, booking requests, and sponsorship requests. Production connection URLs were announced on September 4.
  • Member MCP requires sign-in and advertises its authorization provider. Production connection URLs were announced on September 4.
  • Listing organizations now shows only the ones you belong to, not every organization in the environment.
  • Consequential MCP writes (close out a show, settle, change the playbook, send messages, commit imports) ask for confirmation before they run on hosted environments.
  • An assistant can work the org mailbox: list open invitation, crew-offer, and availability threads, see what is new, mark the inbox checked, list the invitations on an event, read one invitation, and send a reminder with optional custom copy.
  • An assistant can list organization members with roles and invite someone by email. Inviting an admin stays owner-only, and the invite is confirmation-gated because it emails a real person.
  • Member MCP can accept gig files (upload_ingestion_file base64, plus create batch / add text). Analysis may not produce proposals (files can land attached-only). Commit still requires confirmation. At the time, prod member connect advertise was still pending (since Done, see Sep 4).
  • list_events now honors event_status. ACTIVE returns only active events; ARCHIVED returns only archived events.
  • An assistant can clone a workspace without the Settings GUI: export_workspace downloads the eight UEF catalogs, preview_uef_import dry-runs them on a destination org you manage, and import_uef commits (confirmation-gated). Full rosters stay off the public MCP.

Availability

  • Availability checks close themselves once the gig date passes, so nobody has to tidy up a check for a show that already happened. Checks with an expiry date expire on their own when that date passes.
  • Reminding, sending to more people, and recording a response all stop once a check has closed.

Lists

  • Customers, inventory, venues, and sponsors load a page at a time instead of the whole list.
  • Saving a customer, inventory item, venue, sponsor, or lead refreshes every page of that list, not just the page on screen.

Gigs

  • New organizations get a Standard Show run of show and Standard Tasks checklist in their libraries. Creating an empty gig applies those defaults so Details starts with a plan instead of blank pages. Existing organizations pick the starters up the next time someone signs in. If an org already used those names, Soundcheck adds Standard Show (Soundcheck) or Standard Tasks (Soundcheck) instead of skipping. Deleting a starter is remembered so it is not recreated. Duplicated or imported gigs that already have a run of show or checklist are left as-is.

Mailbox

  • The org sidebar Mailbox tab shows new replies since you last opened it.

App

  • The organization logo stays fully visible when the sidebar is collapsed.

Added

  • Change the call times on a shift you’ve already sent. Moving load-in an hour no longer means cancelling and re-staffing. Everyone still attached is notified with the old and new windows, and anyone who already accepted can Keep my spot or Decline the new time from their Mailbox — doing nothing keeps their spot. Declining frees the seat, reopens a filled shift, takes them off the gig calendar for those days, and voids or reprices their payout. A payout that has already been paid is left standing for you to settle by hand. Call times on hourly shifts stay locked, because there the hours are the pay. Which days a shift covers stays locked either way. See How shifts work.
  • New staffing reference. How shifts work documents the whole model in one place — positions, shifts, offers and days; shift and per-person statuses; seats and Need; per-day answers on multiday gigs; exactly what stays editable after you send; and who gets notified when.
  • Extend or shorten a multi-day gig while staffing is live. A gig’s dates froze the moment anything went out, which also blocked a festival adding a load-in day or cutting a show. Adding days at either end now saves straight through — no shift is extended onto the new day, so nobody is signed up for a day they never accepted. Removing days nobody works saves too. Removing a day the crew is booked on shows you exactly who comes off, on which shift, on which day, before anything happens; confirm and they are cancelled for those days and told why. A flat fee is unchanged (it buys the shift, not the day); a rate card is recalculated from the days that remain, and removing work never increases what is owed. Days already in the past cannot be removed at all. Moving a gig to different dates stays locked — that is the case the original rule was written for. See How shifts work.
  • Pay is locked once a shift is sent. The rate, the rate type, and the per-day rate card all freeze when a shift goes out — changing them would rewrite terms people had already accepted. Repricing is now a deliberate act: cancel the shift and re-issue it, which puts the new number in front of every recipient. This holds in both directions, so a raise needs the same explicit step. You can still set a rate for someone you add after the shift went out, until they accept. See How shifts work.

Fixed

  • Editing an open shift no longer emails the whole crew when nothing they care about changed. Saving a shift without touching its schedule now notifies nobody.
  • The shift-level start and end times could be changed on a sent shift with no warning and no notification — including on hourly shifts, where it silently changed what people were owed. Those edits now follow the same rules as every other call-time change.

Gigs

  • The crew app on phones still shows and saves gig call times correctly after Instant clock storage ships. New web and app builds identify themselves so they can use real UTC times.
  • A team availability request that is not tied to a gig now uses the organization timezone, not Chicago, when the org is in New York, Los Angeles, or another zone.
  • Changing only a gig timezone texts invited crew the same way a date or location change does.
  • Moving an availability day without editing its times keeps those times. The server rebases them instead of clearing the window to all-day.
  • Dragging a start-only or end-only availability block on the web calendar keeps the open side open. It no longer fills in 00:00 or 23:59.
  • Declining every day on a multi-day crew offer no longer puts those days back on the calendar feed.
  • Requesting team availability waits until the organization timezone is loaded, so a New York org is not encoded as Chicago.
  • Switching organizations no longer encodes a venue-less gig or team availability request in the previous organization’s timezone.
  • Team availability on mobile waits for the feature flag before loading the organization timezone.
  • The mobile schedule editor waits for the feature flag before loading the organization timezone.
  • An availability request still shows the gig timezone if the organization timezone lookup fails.
  • Saving a gig that only stores an already-effective timezone no longer texts the crew.
  • An accepted gig still appears on the calendar feed when the same person also has a pending or declined multi-day offer for that gig.
  • Calendar subscriptions still show an accepted multi-day gig if the per-day lookup fails.
  • Cancelling a multi-day crew offer no longer puts declined days back on the calendar feed when that offer was the person’s only path onto the gig.
  • A gig with a far-future end date no longer expands the calendar feed into millions of days.
  • Gig templates list the organization timezone so copied call times decode in the org zone, not a missing fallback.
  • Importing a gig with only a date, a custom clock layout, or a bad timezone keeps that time on the gig’s local day instead of shifting it to UTC midnight.
  • After a gig or offer time change, crew keep the gig Google Calendar event. They only leave an offer-only calendar event when that day matches the gig hours again.
  • A mobile gig that is missing a calendar date uses the gig timezone to pick the day from its call time, so a Chicago evening show does not jump to the next UTC day.
  • Editing a venue-less gig on mobile uses the organization timezone when the gig itself has no timezone. A failed organization profile still saves with Chicago instead of blocking.
  • Opening a venue-less gig or its schedule on mobile waits for the organization timezone before showing or saving Instant call times, so a New York org is not flashed as UTC hours and rewritten on save.
  • All-day availability on mobile stays all-day. A stored midnight-to-end-of-day UTC window is not shown as evening hours in Chicago.
  • Mailbox and lead gig dates stay on the stored calendar day, even when that day arrives as midnight UTC.
  • An event-less crew offer on mobile encodes call times in Chicago when no timezone is sent, not the viewer’s local zone.
  • Declining every day on a multi-day crew offer no longer puts those days back on Google Calendar after a later gig or offer time change.
  • Mailbox message dates older than a week stay on the viewer’s calendar day. A UTC timestamp is not shown as the next UTC day in Los Angeles or New York.
  • Cancelling a multi-day crew offer no longer hides a separately accepted one-day offer on the calendar feed.
  • Sending or responding to a team availability request still succeeds if the timezone lookup fails after save.
  • Sending or accepting a crew offer still succeeds if the gig or organization timezone lookup fails after save.
  • After a gig time or timezone change, crew stay on the updated Google Calendar event instead of being dropped when two calendar updates race.
  • Opening a gig schedule or run of show still succeeds if the timezone lookup fails.
  • Crew inbox per-day reply clocks show in the gig timezone. A Chicago 5:00 PM Instant day is not shown as 10:00 PM UTC.
  • Renaming, repricing, or cancelling a crew offer still saves if the gig timezone lookup fails.
  • Renaming or changing the status of a team availability request still saves if the gig timezone lookup fails.
  • Saving a gig run of show still works if a second gig lookup fails after the editor is already authorized.
  • Staffing “who is free” on an older phone uses the organization timezone for the shift window. A Chicago 5:00 PM check no longer treats 5:00 PM UTC as the overlap.

Gigs

  • Saving a gig stores call times as real UTC Instants in the venue, organization, or Chicago timezone. A missing venue no longer writes 6:00 PM as 6:00 PM UTC.
  • Every organization has a timezone. Organizations that were missing one are stored as Chicago.
  • Creating a gig without a venue waits until the organization timezone is loaded. A failed profile fetch does not save Chicago.
  • Editing an availability request keeps the gig timezone. A Chicago 5:00 PM window is not rewritten as 5:00 PM in the manager’s local zone.
  • Editing a gig title on the crew app keeps overnight ends on the next morning and no longer shifts same-day call times by a day.
  • Crew-offer and availability (next day) flags use the gig timezone, so an evening Chicago window is not treated as tomorrow.
  • Google Calendar and ICS invites for early-morning gigs in positive-offset timezones (for example Tokyo 1:00–3:00 AM) stay on the gig’s local day. A timed gig with no start time begins at local midnight, not the previous evening.
  • Uniform call times show again on mobile engagement cards. Overnight (next day) uses the gig timezone, not UTC digits.

Finances

  • A crew payout created while a gig date is changing now uses the new gig day.

Fixed

  • Organization Admins can use admin surfaces again (Mailbox, org settings, members, finance roll-ups). Billing and Payments stay Owner-only. Only the Owner can grant Admin (promote or invite). See Roles and permissions.
  • Removing a member from mobile org settings follows the same rules as web: Admins cannot remove the Owner or another Admin, and the removal is rejected if that person’s role changed while you were looking at the list. See Roles and permissions.
  • A gig’s Staffing tab lists each shift under a role the same way Details does. Two same-day windows for one role no longer collapse when some of the same people are on both. See Building teams for gigs.
  • Editing a sent crew offer no longer fails once everyone has replied. Adding more people (including when the shift already has per-person pay) saves the current terms first, then notifies the new person at their custom rate if you set one, without re-sending the invite to people who are already waiting to reply. A filled job offer opens again so the new person can answer. Saving a draft does not email anyone; Save & Send opens the offer and notifies the people on that send. Adding someone to a live shift notifies only that person. See Building teams for gigs.
  • A job offer is filled only when you set Need and accepted crew meet that number. Leave Need blank and the roster is unbounded: declines do not fill the shift, the gig list and calendar do not invent a fill target, and you can keep adding people. Changing Need on a filled shift updates whether it stays filled. Adding someone after replies keeps Review and Save & Send available in Edit Crew. See Building teams for gigs.

Added

  • Organization profile settings now include a timezone picker, including UTC and a compatibility list for older browsers. New organizations start with the creator’s timezone, or UTC if that cannot be resolved. If that first save misses, Soundcheck retries after you land in the app without blocking signup and fills a timezone that is still unset. See Organization setup.
  • Org Mailbox has a Replies view that lists each person who responded, newest first, including answers on filled, cancelled, or expired requests. See Mailbox.
  • Crew-offer and availability emails show the gig title under the shift or request name when they differ. See Mailbox.

Changed

  • “New replies” in Mailbox is shared across the organization. The last-check time is org-wide, not per browser.
  • Mailbox crew offers show the shift, call window, seats, and pay (per person or hourly), including $0 overrides. Open days uses seats for job offers instead of max acceptances.

Fixed

  • Draft crew offers no longer appear in My Mailbox, the gig list, or the Team tab for members. Recipients only see an offer after it is sent. Admins still see drafts while they are staging the roster. See Building teams for gigs and Mailbox.
  • Confirming an unsaved change in Edit Crew no longer freezes the gig page in Safari. The confirm dialog and the crew sheet no longer fight over keyboard focus.
  • Saving a draft gig no longer leaves the page unable to scroll. Closing the create dialog, including Create Draft from a template, restores pointer and scroll on the gig page.
  • On Create shift, changing pay or call times enables Save as draft even before you pick crew. Review & send still needs people. See Building teams for gigs.
  • Discard all on the staffing draft bar now asks you to confirm before staged drafts are removed.
  • Single-day gigs and staffing call times can run past midnight. When out is earlier than call (8:00 PM – 2:00 AM), Past midnight (next day) turns on and the out time stays on the next morning. Check it yourself for a next-morning window (1:30 AM – 3:30 AM). No + End date needed. The crew app shows (next day) on those windows and the same checkbox when you edit gig, offer, or availability times. See Building teams for gigs.

Gigs

  • Gig call times use the venue timezone, and imported Flex gigs retain their original call times.

Finances

  • Changing a gig’s date now moves unpaid crew payouts that have no payment history to the new date. Payouts that already have a payment attempt, and manual lines you added yourself, keep their original date.
  • New crew-offer payouts use the gig date, not the offer’s own day.
  • Stored payout dates are now calendar days (no clock) after leftover times are normalized to midnight on the same day. Gig eventDate encoding is unchanged.

Fixed

  • Cancelling a gig now fails the request if invitations, crew offers, or availability requests are still open, and a retry finishes that release instead of reporting success. Crew are not emailed the same cancellation twice if the first notice already went out. If the first cancel request dies mid-send, a later retry still emails crew instead of silently skipping them. A retry that arrives while that send is still claimed also stays unfinished, so the cancel does not report success before anyone is mailed. A notice that already sent is not mailed again when the completion write fails, and that sealed send does not leave later cancels stuck incomplete. A send that never went out also stays unfinished so a retry can mail crew. A mailbox-ledger outage no longer reports the cancel as finished. A Flex or lost-deal sync retries that close-out even after invitations are already flipped.
  • A quote cancelled directly in Flex now syncs through to Soundcheck instead of being dropped, and a lost-deal recovery accepts both Flex spellings of cancelled.

Exports

  • Gig summary, setlist, run of show, and schedule exports now download branded PDFs instead of opening a browser print window. Run of show still shows a live HTML preview while you configure fields; the download is a real PDF. Call sheets, day sheets, and advance packets keep the same download flow, now rendered with the same PDF engine.

Gig templates

  • Save as template and the Gigs Templates tab are now on for every organization. Duplication was already available. See Templates and duplication.

Calendar times

  • Calendar invites and your subscribed calendar feed now keep gig times in the event timezone. Gmail was treating those times as UTC and showing them several hours off. New invites and feed refreshes pick this up. Events you created yourself in Gmail are unchanged. See Calendar feed subscription and Calendar.

Mailbox rename

  • Renamed the personal and org Engagements UI labels to My Mailbox and Mailbox (web and mobile). Routes and APIs are unchanged (/engagements, /org-engagements).

Client portal, tours, run of show, and a gated closeout

  • Added the client portal: invite a customer’s primary contact into a dedicated workspace with their events, contracts, invoices, forms, and a message thread with your team. Invitations go out from the customer record. See inviting clients and contracts, invoices & forms.
  • Added tours: group a run of gigs into a folder on the Gigs page and manage it as a whole, with a per-tour financial roll-up (revenue, payouts, and net across every show inside).
  • The gig timeline grew into the run of show: one show-day rundown holding timed items, songs, instructions, notes, and attachments, with PDF export offering quick views (All Items / Songs Only / Titles Only), a field picker, and formatting controls with live preview.
  • The close-out checklist can now be enforced: organizations that opt in to close-out gates lock Settle and Archive behind the blocking steps (contract signed, quote approved, deposit received, invoice sent, payment received, feedback logged). Owners and admins can override with a logged reason, and enforcement only applies to gigs created after it’s enabled.
  • Added a Cancelled gig status, distinct from Archived: cancel a called-off show from Draft or Active, keep the record, stop uninitiated payouts. Cancelling is never gated by the close-out checklist. See the event lifecycle.
  • Venues are now a top-level directory with per-venue detail pages: Load-in & access logistics (dock, elevator, parking, load-in path, private access code) entered once auto-fill every gig at that venue, alongside stage specs and the room’s gig history.
  • Redesigned the gigs board, and made gig creation lighter: location is now optional (name, date, and event type are enough), and an optional end date turns a gig multi-day.
  • Replaced the dashboard with a personalized Home page: a greeting, a getting-started card while you set up, stat tiles, recent activity, and a finances summary for admins with finance access.
  • Plan seat limits now block organization invites at the cap, up front. The message shows your limit and current count, batches count pending invites, and custom per-organization limits are supported.
  • ACH payouts now ride on verified bank accounts: accounts carry a Verified / Pending / Unverified badge on profiles and in organization payment settings, and payout eligibility surfaces right on the gig roster.
  • Refined the unified engagements inbox: clearer Active / Needs response / Responded / Past filtering, a type filter spanning invitations, crew offers, availability checks, and onboarding steps, and an org-wide Engagements view of everything your organization has sent.
  • The MCP server surface kept growing alongside these features, so agents can work with the same tours, closeout, and portal data you see in the app.

AI file ingestion, contracts, closeout, and portal forms

  • Introduced CheckAI, Soundcheck’s AI assistant. AI file ingestion entered the beta: drop a contract, call sheet, rider, or email onto a gig and CheckAI extracts the schedule, crew, ledger, and leads into reviewable proposals you commit. See the current CheckAI guide for supported surfaces and Private Preview availability.
  • Ingestion produces the same Universal Event Format as the importer (source.type: "INGESTION"), with a per-file analyze → review → optional cross-file merge → commit flow, a new-vs-duplicate dry run, and a confirmation gate on every commit.
  • Added Contracts & e-signatures: send event agreements for SignWell signature, track a single client signer through the contract status flow, and review a decline before sending a revised agreement. E-sign remains Private Preview; eligible existing beta testers on Enterprise can use with white-label branding.
  • Added post-event closeout: gigs now extend to Completed and Settled, with a settlement view that gates closing the books until every crew payable has cleared, plus event/venue/crew reviews captured at closeout.
  • Added portal forms: connect JotForm or Form.io client-portal forms for lead intake, event questionnaires, and feedback, with responses matched to the right customer or event.
  • Added the HubSpot ↔ Flex pipeline: a signed n8n sync that keeps HubSpot deal stages, Flex quotes, and Soundcheck gig status in lockstep, with closeout status flowing back to your CRM.
  • Unified the roster around invitations and per-recipient crew offers, so every staffed seat (however it was filled) shares one response model.

MCP server: file ingestion and a bigger surface

  • The MCP server grew to 73 tools, 9 resources, and 9 prompts, adding the file-ingestion tranche (create_ingestion_batch, add_ingestion_text, get_ingestion_file_review, trigger_ingestion_merge, get_ingestion_batch_review, commit_ingestion_file, commit_ingestion_batch, and more), the soundcheck://ingestion/{event_id}/{batch_id} resource, and the ingest_gig_files prompt.
  • The confirmation gate now also covers commit_ingestion_file and commit_ingestion_batch, binding the exact proposals and merge version you reviewed so a re-merge re-gates the commit.

Unified engagement inbox, operator data importer, and sidebar overhaul

  • Unified inbox at /engagements brings invitations, crew offers, and availability requests under one view; org admins get an org-wide pipeline view at /org-engagements with per-engagement recipient stats.
  • Accepting an invitation or crew offer on Soundcheck now auto-accepts the matching Google Calendar invite. You no longer need to confirm twice.
  • Notification emails open the relevant row in the unified inbox via ?highlight={id}, with a brief scroll-and-highlight on arrival.
  • Added engagement notification preferences: per-kind (invitation, crew offer, availability request) × per-channel (email, SMS, push) toggles for each member, with org-wide defaults that admins can set.
  • Added the operator data importer at /imports: a Parse → Map → Preview → Commit wizard for bulk-loading gigs, venues, customers, and invitations from spreadsheets or pasted CSV/TSV. Idempotent on re-import via stable external IDs.
  • Sidebar reorganized into Operations, Admin, Sales, and Developer groups; Payments and Tasks promoted to top-level pages; Engagements pinned for admins.
  • Page titles, descriptions, and actions now use a consistent layout.
  • Crew offer cards now show the gig date, and past-event offers hide the Accept/Decline buttons.

Engagement service, calendar handoff, and operator import endpoints

  • Added the engagement service: a shared response model spanning invitations, crew offers, and availability requests. New reads at GET /v1/users/me/engagements and GET /v1/organizations/{orgId}/engagements.
  • Added engagement notification preference endpoints under /v1/users/me/.../engagement-notification-preferences and /v1/organizations/.../engagement-notification-defaults.
  • Added operator import endpoints under /v1/organizations/{orgId}/imports/* for creating jobs, parsing, mapping, previewing, committing, and reviewing imports.
  • Redesigned the sidebar with Linear-style grouped navigation; renamed Leads to Pipeline and unified Crew Offers and Leads under the sponsors-style layout.
  • Broadened People access and consolidated People / Pipeline tabs alongside the new sidebar groups.
  • Template events are now visually marked, draft and template styling uses the warning and info design tokens, Notify is hidden on templates, and templates no longer appear in date-based gig sections.
  • Quieted 503 noise on Connections and hid pending invites in the gig table view.

CRM, scheduling, templates, and payout workflows

  • Added the CRM suite: customers, venues, sponsors, sponsor commitments, inventory, lead intake, lead conversion, and signed n8n CRM sync ingestion.
  • Lead conversion now turns a qualified inquiry into a gig, customer, primary contact, and customer-gig link.
  • Added personal availability, the organization crew availability calendar, and availability requests that reconcile responses into member calendars.
  • Added the Gig Coordinator role for gig operations without billing, P&L, payout, or member-administration access.
  • Added gig templates, gig duplication improvements, and draft-to-active publishing guidance.
  • Added crew offers for open shifts and job offers, with accepted offer payouts included in finance totals.
  • Added per-user calendar feed subscriptions for Apple Calendar, Google Calendar, Outlook, and other iCal clients.
  • Added profile updates for instant member payouts through Stripe and calendar sync management.

CRM, availability, calendar feed, and payments API updates

  • Added CRM APIs for customers, venues, sponsors, inventory, lead conversion, sponsor requests, and the signed n8n CRM sync webhook.
  • Added availability request APIs, crew availability calendar reads, and candidate selection for scheduling managers.
  • Added calendar feed token generation and public .ics feed delivery using per-user secret URLs.
  • Updated payment handling with ACH-funded payouts shown as free, Stripe charge retrieval for better fee attribution, and offer-payable ledger support.

CRM sync

  • Added n8n CRM sync configuration through signed webhooks and organization binding.

Payment history visibility

  • Fixed payment history refreshes so pending member payments initiated from a gig team card appear on the organization Payments tab, and profile payment history loads across every organization membership instead of only the active organization.

Financial and roster workflow refinements

  • Improved the payout funding flow for member payments.
  • Added payment confirmation flow and tightened fee visibility controls so pay values respect creator/admin role rules.
  • Fixed setlist and team visibility edge cases, including accepted-invite filtering, paid-by logic, and roster dedupe behavior.
  • Enabled clickable song/media links in event workflows with more reliable parsing and safer deep-link handling.
  • Improved event details and sample-event UX with stable tab loading, search behavior, and reduced regressions around sample data and pay badges.

Routing and onboarding stability

  • Reworked public organization profile routing with top-level slug profiles and synced org slug handling with Clerk.
  • Hardened organization onboarding and authentication redirects to reduce stale-state stalls and redirect loops.
  • Updated enterprise and white-label behavior around organization pages and access gating.

Audit and finance reliability updates

  • Expanded event audit logging with field-level diffs and stronger success/error guardrails.
  • Added destination-charge transaction/stripe handling updates, including refund handling and improved payment observability.
  • Improved precision handling in ledger/amount math and tightened decimal rounding behavior across balance computations.

Documentation and platform reference updates

  • Corrected broken-link handling and synced reference links after recent product/API changes.

Pollstar Live! 2026

Soundcheck CEO Ben Ikwuagwu joined the speaker lineup at Pollstar Live! 2026 to discuss software, scale, and industry readiness for new tools. What we took home from Pollstar Live 2026.

Profile editing & UI improvements

  • Added the Edit General Information screen
  • Fixed the profile loading state

Authentication & onboarding fixes

  • Fixed first-login auth race conditions and context loading issues
  • Improved org invite onboarding flow for unauthenticated users
  • Auto-populate org invite signup form with email from Clerk API
  • Fixed position information on gig invitations
  • Added rate limiting to invite verification endpoints
  • Redirect NotFound to /gigs instead of /dashboard

API error handling

  • Standardized error handling for “Not Found” cases
  • Improved DELETE operation handling

OpenAPI Spec & Error Standardization

  • Added an OpenAPI 3.1 specification
  • Standardized error responses across all handlers to flat APIError format
  • Fixed bug where clients couldn’t read API error messages

Documentation Site Launch

  • Launched the Mintlify documentation site
  • Consolidated all markdown docs into structured navigation
  • Added API reference with OpenAPI integration
  • Added interactive API playground
  • Added search functionality

Finance Module

  • Added finance line items for event budgeting
  • Added performer payment tracking
  • Added organization finance metrics

NAMM 2026

The Soundcheck team spent the week at NAMM 2026 in Anaheim connecting with manufacturers, agencies, and touring professionals across the industry. NAMM 2026 recap.

Authentication Improvements

  • Fixed OAuth redirect handling
  • Added token race condition fix
  • Improved Apple Sign In flow

Setlist builder improvements

  • Drag-and-drop song reordering
  • Set duration calculations
  • PDF export functionality

Initial Release

  • Mobile app for iOS and Android
  • Web app for desktop users