[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)

# Approve Connecteam timesheets with AI

> Approve submitted Connecteam timesheets by your own rule on the hours, flag odd days and leave edge cases for you. Runs weekly, no API plan needed.

Source: https://cotlet.dev/integrations/connecteam-api-mcp-server/approve-submitted-timesheets

When the pay period closes, an admin opens each employee's timesheet in Connecteam, checks the days and clicks approve, one person at a time, before payroll can run.

Cotlet does it in your own Connecteam account with list\_time\_clocks, list\_timesheets, get\_timesheet and approve\_timesheet, called by your AI agent, an n8n workflow or a script.

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

Hosted · nothing to install or maintain

## Can Connecteam do this on its own?

Connecteam approves timesheets in the dashboard, one by one or in bulk from the Timesheets tab (checked 20 Oct 2026). Its API, on the Expert plan or higher, reads timesheet totals and time activities and can lock days, but has no endpoint that approves a timesheet. Approval stays a click you make for every employee.

## How you do it in Connecteam today

1. An admin first turns approval on under Time Clock > Settings > Payroll tab > Timesheets approval, then picks which admins can approve and which can reopen. Each time clock has its own switch.
2. Employees submit from the Time Clock: on desktop, Timesheets opens on the current pay period and they click Submit Timesheets; in the mobile app it is the three dots on the Timesheets tab.
3. The admin opens Time Clock > Timesheets. The User Submission column shows Submitted once an employee has finalized a timesheet, and the Approval Progress Bar shows how many people still need to submit.
4. The admin opens each employee's timesheet and clicks Approve in the upper right, or selects several employees and picks approve from the actions tab.
5. Pending edit requests come first: Pending Requests in the Timesheets tab, with Approve or Decline on each.

## How to approve Connecteam timesheets with AI

Prompt

```
Go through the submitted timesheets of the Main Floor time clock for last week. Approve every timesheet with no day over 9 hours, and leave the rest for me with the day that broke the rule.
```

1. 01  
### Pick the time clock  
list\_time\_clocks returns each time clock and whether Timesheets approval is on. A time clock with approval off is reported and skipped, because the switch is set for each time clock. An account without approve permission gets APP\_PERMISSION\_DENIED and the run stops before anyone is judged.
2. 02  
### Read the pay period  
list\_timesheets runs with the pay period dates and status submitted, and follows next\_cursor to the end. Employees who have not submitted are listed but never touched.
3. 03  
### Check each timesheet against your rule  
get\_timesheet returns the days of one employee with clock in, clock out and hours. The agent compares them with the rule in your prompt, for example no day over 9 hours, and quotes the day that broke it.
4. 04  
### Approve the clean ones  
approve\_timesheet runs for each timesheet that passed, with the exact pay period dates. Connecteam notifies the employee right away. Every call asks for your OK until you switch confirmation off for it.
5. 05  
### Report the rest  
Timesheets that broke the rule and employees who have not submitted stay as they are, each with a one-line reason, so you open only those in Connecteam.

### What you get back

Example data

```
Time clock Main Floor, pay period Oct 12 to Oct 18
Submitted 2, not submitted 1
Approved 1: Dana Whitfield, 38.5 h
Left for you 1: Luis Ortega, 41.0 h (Wed Oct 14: 9.5 h)
Not submitted: Priya Nair
```

### Other ways to ask

- Every Monday at 8, approve submitted timesheets with no day over 9 hours and list the rest for me.
- Show me who has not submitted this pay period, but approve nothing yet.
- List timesheets over 40 hours for last week and approve none of them.
- Approve submitted timesheets of the Kitchen time clock only and skip any timesheet with a locked day.

## What Connecteam allows, and what to know first

- Timesheets approval is a setting of each time clock, under Settings > Payroll, so a second time clock needs its own switch.
- Approving and reopening are separate permissions, and once a timesheet is approved only an admin with reopen permission can change it.
- An optional setting stops admins from approving or locking their own timesheets; account owners are exempt.
- Connecteam shows Approve only for a specific pay period, not for a custom date range, so period\_start and period\_end must match a pay period.
- Closing or reopening a whole pay period needs the Payroll Manager permission, which approve\_timesheet does not use.

approve\_timesheet asks for your OK by default. To run it weekly without you, switch confirmation off for that tool in your dashboard.

Sources: [Connecteam Help: Approving Employee Timesheets for Payroll](https://help.connecteam.com/en/articles/5439640-approving-employee-timesheets-for-payroll) · [Connecteam Help: How to Submit Timesheets (For Users)](https://help.connecteam.com/en/articles/9208433-how-to-submit-timesheets-for-users)

## Call approve\_timesheet from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/connecteam/time-clocks/2041/timesheet/approve \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"user_id":8821034,"period_start":"2026-10-12","period_end":"2026-10-18"}'
```

Example response

```
{
"approved": true,
"time_clock_id": 2041,
"user_id": 8821034,
"name": "Dana Whitfield",
"period_start": "2026-10-12",
"period_end": "2026-10-18",
"total_hours": 38.5
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is connecteam\_write → approve\_timesheet. Example data.

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

## Connecteam tools this automation uses

__Cotlet Connecteam tools used to approve Connecteam timesheets with AI__
| Tool | Parameters |
| ------------------ | ----------------------------------------------------------- |
| list\_time\_clocks | none |
| list\_timesheets | time\_clock\_id, period\_start, period\_end, status, cursor |
| get\_timesheet | time\_clock\_id, user\_id, period\_start, period\_end |
| approve\_timesheet | time\_clock\_id, user\_id, period\_start, period\_end |

[All 14 Connecteam tools with descriptions](https://cotlet.dev/integrations/connecteam-api-mcp-server.md#tools)

## Frequently asked questions

### What happens if an employee edits a timesheet after submitting?

Connecteam lets employees change a submitted timesheet while its days are not locked and an admin has not approved it, and they have to resubmit after any edit. The agent reads the timesheet right before approving, so it judges the version the employee last submitted.

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

Yes. You sign in to Connecteam yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Connecteam 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 Connecteam automations

- [Copy last week's Connecteam schedule and publish it](https://cotlet.dev/integrations/connecteam-api-mcp-server/copy-last-weeks-schedule.md)
- [Approve or decline Connecteam time off requests with AI](https://cotlet.dev/integrations/connecteam-api-mcp-server/approve-time-off-requests.md)
- [Connecteam API and MCP server: every tool](https://cotlet.dev/integrations/connecteam-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to Connecteam.

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

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

---

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.
