Connectors

/

Chorus

/

Log Chorus call time in Teamwork.com
Write
Cross-Connector

Log client call time in Teamwork.com without rebuilding your week

For project teams who want time for Chorus client calls logged on the right Teamwork.com project, by asking their AI assistant.

Try PopdockAI free
Get a live demo
Log Chorus call time in Teamwork.com
Log my client call time from Chorus for last week in Teamwork.com as billable. I'm alex.morgan@northwindtraders.com.
I found 5 client calls, and 4 need time logged. - Contoso Rollout: 45 minutes on 30 September - Fabrikam Support: 30 minutes on 1 October - Already logged: Northwind ERP, 2 October - Unplaceable: 1 call with no matching project Shall I log these entries as billable?
Chorus
Sample figures. Your results come from your own account.
teamwork-com-get-people
chorus-get-engagements
teamwork-com-get-projects
teamwork-com-get-time
teamwork-com-create-time-entry

On this page

The problem

The problem

The prompt

Who it's for

How it works

Tools used

Connector

Chorus

Chorus
Run it on your own Chorus data.

Connect Chorus, pick your AI tool and paste the prompt.

Try PopdockAI free

The problem

Client call time rebuilt from memory at week end

Logging time for client calls means checking your calendar, working out durations, finding the right Teamwork.com project and making sure you did not log it already. At the end of a busy week, much of that time never gets recorded.

Without PopdockAI

  • Check your calendar for client calls
  • Work out each duration
  • Find the right Teamwork.com project
  • Make sure you did not log it already

With PopdockAI

  • Client calls are read and rounded up to 15 minutes
  • Each is matched to an open project, or marked unplaceable
  • Calls already covered that day are skipped
  • You confirm, edit or drop each entry before it is logged

The prompt

Use this prompt

Copy it into any AI tool connected to PopdockAI. Swap the values in braces for your own.

Prompt
**Objective:** Log time in Teamwork for the client calls `{user-email}` took in Chorus between `{from-date}` and `{to-date}` (default the last 7 days), skipping any call already covered, and only after the user confirms.

**Step 1: Identify the person**

Call `teamwork-get-people` with `email` set to `{user-email}` and keep `person-id`. If nothing comes back, stop: time cannot be logged for someone Teamwork does not know.

**Step 2: Read the calls in Chorus**

Call `chorus-get-engagements` with `user-email` set to `{user-email}` and the date range. Keep `conversation-id`, `subject`, `date`, `duration` and `account-name`. Convert `duration` from seconds to minutes and round up to the nearest 15 minutes. Drop calls with no `account-name`.

**Step 3: Find each call's project**

Call `teamwork-get-projects` with `company-name.contains` set to the distinctive part of each `account-name`, keeping only projects that are not completed. If exactly one project matches, use it. If several match, list them for that call and ask. If none match, mark the call as unplaceable.

**Step 4: Skip what is already logged**

Call `teamwork-get-time` with `user-id` set to the `person-id` and the same date range. Treat a call as already logged when there is an entry on the same day on the same project.

**Step 5: Confirm**

Show the proposed entries as a table: date, project, minutes, billable (default `{billable}`, which defaults to true), and a description of the form "Call: <subject> (Chorus)". List skipped and unplaceable calls underneath. Ask the user to confirm, edit or drop entries. Do not write anything until they confirm.

**Step 6: Write and confirm**

For each confirmed entry call `teamwork-create-time-entry` once, with `project-id`, `user-id`, `date`, `minutes`, `is-billable` and `description`. Report the `id` each call returns, and any that failed with the error.

**Rules & Guidelines:**

* `chorus-get-engagements` is on the chorus server. `teamwork-get-people`, `teamwork-get-projects`, `teamwork-get-time` and `teamwork-create-time-entry` are on the teamwork server.
* `teamwork-create-time-entry` is the only tool that may write, and only after confirmation. Do not call `teamwork-update-time-entry`, `teamwork-create-task` or any chorus write tool.
* Never log time on a project the user has not seen in the confirmation table.

**Validation:**

* If every call is already logged, say so and stop without writing.
* If a create fails, do not retry it automatically; report it and continue with the rest.

Who it's for

One answer, three teams that use it

Consultants

Log the week's calls in one ask

Client calls become time entries without rebuilding your week from memory.

Log my Chorus client calls from last week in Teamwork.com as billable. I am priya@contoso.com.

Project managers

Keep project time complete

Call time lands on the right project, so budgets reflect real effort.

Log Sam Patel's Chorus calls with Fabrikam this month to their Teamwork.com project as billable.

Account managers

Record non billable client time

Track time on account calls as non billable, so effort is visible without invoicing it.

Log my Northwind Traders Chorus calls from the last two weeks in Teamwork.com as non billable.

How it works

What PopdockAI does when you ask

You give your email, a date range and whether time is billable, and your AI assistant proposes the entries. Time is never logged on a project you have not seen.

01

Ask

You give the person's email, a date range and whether time is billable.

Your AI tool

02

Match

It reads the client calls, rounds up to 15 minutes and finds each open project.

teamwork-com-get-people
chorus-get-engagements
teamwork-com-get-projects

03

Skip

It drops calls already covered by a same-day entry on that project.

teamwork-com-get-time

04

Confirm

You confirm, edit or drop each entry before anything is logged.

Your AI tool

What PopdockAI provides

The tools behind the answer

Ready made tools for Chorus and one secure connection to your AI tool. No code, no exports.

get-data

teamwork-com-get-people

Returns people (users) from Teamwork.com with their company, role, rates and contact details. Filter by email, type, name, company ID, person ID, last name, role name and company name.
get-data

chorus-get-engagements

Returns recorded calls and meetings from Chorus, with the subject, date, duration, participants and the account each conversation relates to. Filter by date range, owner or account to pull the conversations behind a deal or a period.
get-data

teamwork-com-get-projects

Returns Teamwork.com projects with status, company, owner, category and dates. Filter by name, member user ID, project ID, start date, category name, end date, company ID, status and company name.
get-data

teamwork-com-get-time

Returns time log entries from Teamwork.com with the person, project, task, minutes and billable amounts. Filter by time logged, minutes, project ID, user ID, user name, billable and task ID.
run-action

teamwork-com-create-time-entry

Logs time against a Teamwork.com project, optionally on a task. Needs the project ID. Can also set user ID, date, description, billable, minutes, hours and more.
Read only.Nothing in Chorus Changes

This report is built from Get data tools only. PopdockAI applies the row, field and parameter rules your admin sets, and every query is written to the audit trail.

How Popdock AI secures your data

The outcome

Client call time logged accurately and once

Try PopdockAI free
Get a live demo

Related use cases

More ways to put this data to work

All Ramp use cases

One prompt template with infinite possibilities.

‍

Your AI assistant adapts its approach, tone, and capabilities to match each unique context while you maintain a single, manageable workflow.

Join forward-thinking companies that are transforming their operations with intelligent, secure AI automation.

Try PopdockAI Free
See Documentation