[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Assign unassigned Breezeway tasks to available staff

> Give tomorrow's unassigned Breezeway tasks to staff whose shift covers them, and list the ones nobody can take. Runs daily from your agent.

Source: https://cotlet.dev/integrations/breezeway-api-mcp-server/assign-unassigned-tasks

Automated workflows fill the Breezeway schedule with turnover tasks, but a property without a default assignee gets them unassigned. Someone has to clear that list before the cleaners plan their day.

Cotlet does it in your own Breezeway account with list\_tasks, list\_people and assign\_task, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=breezeway) [All Breezeway tools](https://cotlet.dev/integrations/breezeway-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can Breezeway do this on its own?

Breezeway's API has an assignments field on create and update task, but only with keys from the request form (checked 20 Oct 2026). In the app, default assignees cover the regular cases. Nothing in either picks a person by who is on shift for a given task.

## How you do it in Breezeway today

1. Automated workflows (Settings > Scheduling) place tasks from check-ins, check-outs and turns up to 60 days ahead.
2. If "Assign Tasks to Default Workers" is off, or a property has no default, every task from the workflow arrives unassigned.
3. A manager sets defaults per property under Template Modifiers > People, per department or per task template. In bulk, Bulk assign default on the Properties page replaces any defaults already there.
4. Whatever is still unassigned is opened one task at a time and given an assignee by hand.
5. Drafted tasks send no notifications until the schedule is committed, so a missed commit leaves staff unaware of their day.

## How to assign unassigned Breezeway tasks to available staff

Prompt

```
List tomorrow's unassigned Breezeway tasks. Give each housekeeping task to a housekeeper whose shift covers it, and list the ones nobody can take.
```

1. 01  
### Collect the open tasks  
list\_tasks runs for the date range you name, one property at a time or for all of them, and keeps the tasks with no assignee. The agent groups them by department, because a housekeeper is not offered a maintenance task.
2. 02  
### Check who can take them  
list\_people returns each person with departments, groups and weekly shifts. The agent matches the task's department and scheduled time against a shift and skips inactive or invited people.
3. 03  
### Spread the load  
The agent gives each task to one fitting person, rotating so nobody gets all of them. A task with no fitting shift stays unassigned and goes on a list for you, with the reason.
4. 04  
### Assign after your OK  
assign\_task sets the people on a task. It can notify them, so it asks for your OK per call until you switch confirmation off for this tool. A task assigned by someone else since the read is skipped.
5. 05  
### Report what is left  
The agent ends with the tasks nobody could take, so you call a person or move the date before the day starts.

### What you get back

Example data

```
Unassigned tasks for tomorrow: 9
Assigned 7, e.g. "Turnover clean, Harbor View 4" to Ana Lopez (shift 09:00-17:00)
Left for you 2:
- "Deep clean, Maple Cabin" (no housekeeper on shift)
- "Pool inspection, Harbor View 2" (no inspector on shift)
```

### Other ways to ask

- Every evening at 6, assign tomorrow's unassigned inspection tasks and message me the leftovers.
- Show unassigned maintenance tasks for this week by property, but assign nobody.
- Give every unassigned task in the Harbor View group to its department's default person.

## What Breezeway allows, and what to know first

- Breezeway's automated workflows can schedule as far as 60 days ahead.
- Drafted tasks notify nobody until they are committed; committed tasks notify default workers as soon as the system schedules them.
- A default set on a task template overrides the default for its department.
- Bulk assigning defaults from the Properties page replaces existing defaults instead of adding to them.
- Under the "Claim Tasks" setting, the first assignee in a pool who accepts gets the task and the other offers are withdrawn.

assign\_task asks for your OK by default. To run it daily without you, switch confirmation off for that tool in your dashboard.

Sources: [Breezeway Help: Adjust your Automated Workflows](https://help.breezeway.io/en/articles/8224895-adjust-your-automated-workflows) · [Breezeway Help: Add Default Assignees to a Single Property](https://help.breezeway.io/en/articles/8510786-add-default-workers-to-each-property) · [Breezeway Help: Add Default Assignees to Properties in Bulk](https://help.breezeway.io/en/articles/16396766-add-default-assignees-to-properties-in-bulk) · [Breezeway Help: Claim Tasks for Administrators](https://help.breezeway.io/en/articles/8948756-claim-tasks-for-administrators)

## Call assign\_task from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/breezeway/tasks/4417302/assign \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"person_ids":[136]}'
```

Example response

```
{
"task_id": 4417302,
"name": "Turnover clean, Harbor View 4",
"assignees": [
{
"person_id": 136,
"name": "Ana Lopez"
}
],
"scheduled_date": "2026-10-21"
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is breezeway\_write → assign\_task. Example data.

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

## Breezeway tools this automation uses

__Cotlet Breezeway tools used to assign unassigned Breezeway tasks to available staff__
| Tool | Parameters |
| ------------ | ---------------------------------------------------------------------------------- |
| list\_tasks | property\_id, department, scheduled\_from, scheduled\_to, assignee\_id, unassigned |
| list\_people | status |
| assign\_task | task\_id, person\_ids |

[All 13 Breezeway tools with descriptions](https://cotlet.dev/integrations/breezeway-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect Breezeway to Cotlet?

Yes. You sign in to Breezeway yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Breezeway once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More Breezeway automations

- [Create Breezeway maintenance tasks from guest issues](https://cotlet.dev/integrations/breezeway-api-mcp-server/create-maintenance-tasks-from-guest-issues.md)
- [Approve finished Breezeway tasks after review](https://cotlet.dev/integrations/breezeway-api-mcp-server/approve-finished-tasks.md)
- [Breezeway API and MCP server: every tool](https://cotlet.dev/integrations/breezeway-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to Breezeway.

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

[Sign up free](https://cotlet.dev/app/signup?app=breezeway)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
