# Assign a TrueCoach program to a client group

> Start a new TrueCoach block for a whole group: an agent checks who already has it, who is still mid-block and who joins late, then assigns.

Source: https://cotlet.dev/integrations/truecoach-api-mcp-server/assign-program-to-group

A new block starts Monday for the Bootcamp group. Before you click assign, you need to know who is still finishing the last phase, who joined two weeks late, and whether the program was already given to anyone.

Cotlet does it in your own TrueCoach account with list\_programs, list\_clients, get\_client, assign\_program and unassign\_program, called by your AI agent, an n8n workflow or a script.

[Request access](https://cotlet.dev/app/signup?app=truecoach) [All TrueCoach tools](https://cotlet.dev/integrations/truecoach-api-mcp-server)

Hosted · nothing to install or maintain

Official options

## Can TrueCoach do this on its own?

TrueCoach has no API or Zapier action for assigning programs (checked 12 Oct 2026). Its Zapier app can only react when a client is "Added to a Client Group". TrueCoach does let you assign one program to several groups at once in the web app, but it does not check who already has the program or whose current block overlaps the new start date.

By hand

## How you do it in TrueCoach today

1. Open the Programs tab, pick the program and use its assign option; hold Command (Control on Windows) to select several clients or several client groups.
2. For a client joining mid-block, assign from that client's workout calendar instead, where TrueCoach lets you pick the date and the program day to start on, such as Day 8.
3. Decide on Sync before assigning: TrueCoach locks the Sync program changes toggle while any client is assigned to the program.
4. To end the old block for a client, open the old program, click Manage Assignments next to Active Assignments and click Unassign next to the client's name.
5. Check each client's calendar afterwards. TrueCoach's help center says a client who sees multiples of the same workout most likely had the program assigned more than once.

With an agent

## How to assign a TrueCoach program to a client group

Prompt

```
Assign my 12 Week Hypertrophy program to the Bootcamp group from Monday 19 Oct on day 1. Skip anyone who already has it and tell me whose current block runs past that date.
```

1. 01  
### Pick the program by name or tag  
list\_programs finds the program; on a Team Account a private program only shows up for the owner and admin coaches, so a missing program is reported, not replaced with a similar one.
2. 02  
### Check every group member before acting  
list\_clients with the group name gives the members and their due dates. get\_client shows each member's programs, and anyone who already has this program is skipped so no workouts get doubled.
3. 03  
### Handle overlap with the old block  
A client whose due date falls after the new start date is still mid-block. The agent lists them and asks: unassign the old program from the start date, or start them later on day 1.
4. 04  
### Start late joiners on the right day  
When you name clients who join partway through, the agent assigns them by client ID with a later start day, so a client who arrives in week 2 starts at day 8 with everyone else.
5. 05  
### Assign and confirm the Sync state  
assign\_program runs once for the remaining members. The agent reports whether Sync is on for the program, since that decides whether your later edits reach the group.

### What you get back

Example data

```
12 Week Hypertrophy to Bootcamp (11 clients), start Mon 19 Oct 2026, day 1.
Assigned: 8 clients.
Skipped: Alex Kim already has this program since 5 Oct.
Mid-block: Priya Shah and Tom Becker are due 25 Oct on Bootcamp Base. Unassign it or start them 26 Oct?
Sync is on: your edits to the program reach all 8 calendars.
```

### Other ways to ask

- Every Friday, find clients due in the next 7 days and assign each the next phase of the program they are on, starting the day after their due date.
- Move Jordan and Lee from Bootcamp Base to 12 Week Hypertrophy starting tomorrow, joining at day 15 like the rest of the group.
- Which clients in the January group have no program assigned at all?

Before you automate it

## What TrueCoach allows, and what to know first

- TrueCoach locks the Sync program changes toggle while clients are assigned; to change it, every active assignment has to be removed and the program reassigned.
- With Sync on, edits to a TrueCoach program overwrite changes you made on a client's workout calendar; with Sync off, the client keeps the version that existed at assignment.
- On a TrueCoach Team Account, private programs can be viewed, edited and assigned only by the account owner and coaches with admin privileges.
- TrueCoach lists clients who are due soon on the right of the Dashboard, using the threshold set under Settings > Misc > Dashboard > Due soon threshold.

assign\_program and unassign\_program change only your own TrueCoach data and reach no one else, so they run without asking first.

Sources: [TrueCoach Help: Programs](https://help.truecoach.co/en/articles/3047401-programs) · [TrueCoach Help: Sync Program Changes](https://help.truecoach.co/en/articles/4555142-sync-program-changes) · [TrueCoach Help: Duplicate Programs](https://help.truecoach.co/en/articles/3047412-duplicate-programs) · [TrueCoach Help: Client Due Dates](https://help.truecoach.co/en/articles/3047881-client-due-dates)

REST

## Call assign\_program from a script

curl

```
curl https://cotlet.dev/api/v1/truecoach/assign_program \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"program_id":"30517","group_names":["Bootcamp"],"start_date":"2026-10-19","start_day":1}'
```

Example response

```
{
"program_id": "30517",
"assigned_clients": 6,
"start_date": "2026-10-19",
"start_day": 1
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the tool is truecoach\_assign\_program. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/truecoach-api-mcp-server#automations)

Tools

## TrueCoach tools this automation uses

__Cotlet TrueCoach tools used to assign a TrueCoach program to a client group__
| Tool | Parameters |
| ----------------- | --------------------------------------------------------------- |
| list\_programs | tag |
| list\_clients | group, client\_type, archived, limit, cursor |
| get\_client | client\_id |
| assign\_program | program\_id, client\_ids, group\_names, start\_date, start\_day |
| unassign\_program | program\_id, client\_id |

[All 15 TrueCoach tools with descriptions](https://cotlet.dev/integrations/truecoach-api-mcp-server#tools)

## Frequently asked questions

### How do I remove a program that was assigned twice?

TrueCoach's help center says to select the doubled workouts on the client's workout calendar and delete them with the trash can, or unassign the program. unassign\_program does the second; workouts the client already completed or missed stay on the calendar.

## More TrueCoach automations

- [Write TrueCoach workouts from a text prompt](https://cotlet.dev/integrations/truecoach-api-mcp-server/write-workouts-from-text)
- [Check in with TrueCoach clients who missed workouts](https://cotlet.dev/integrations/truecoach-api-mcp-server/check-in-with-clients-who-missed-workouts)
- [Onboard new TrueCoach clients from a list](https://cotlet.dev/integrations/truecoach-api-mcp-server/onboard-new-clients)
- [TrueCoach API and MCP server: every tool](https://cotlet.dev/integrations/truecoach-api-mcp-server)
- [All use cases](https://cotlet.dev/use-cases)

## Give your agent access to TrueCoach.

Free 7-day trial with 5,000 credits, no card needed. Cotlet is independent and not affiliated with TrueCoach.

[Request access](https://cotlet.dev/app/signup?app=truecoach)
