Operating integration
Operating is a professional services automation (PSA) platform for consulting firms. With this API an agent can manage projects, clients and their contacts and addresses, CRM deals, people, positions and allocations (staffing), tasks and phases, time entries (one by one or in bulk), budgets, expenses, planned expenses, receipts, invoices, skills and person skill assignments, vendors and holidays, read companies, CRM pipelines and pipeline stages, billable items, sites, groups, rate cards, tags, tax rates, currencies and statuses, and run the planned and actual work reports per person and per project. List routes page with limit and after (pass meta.nextCursor). Not exposed: person costs and cost cards (pay rates), per-person cost figures in the reports, external assignee cost on positions, person phone numbers, the receipt file upload and the receipt file and upload links, setting a person's time balance, individual working hours, the deprecated assignment and work-effort routes, tag assignments on clients and deals, skill assignments on positions, and the administration of tags and tag categories, groups, sites, rate cards, pipelines and pipeline stages, competence roles, their seniorities and their assignments to people, expense and skill categories, skill levels and sentiments, holiday calendars and dates, exchange rates, and the group, site and rate-card assignments of people, positions and projects. Authentication is the account's API token (Settings, API keys; generating a new one revokes the previous one; the user needs the Manage integrations permission) sent as a bearer token in the Authorization header; the token has full access to all resources.
Say what should happen.
The workflow builds itself.
What you can do with Operating
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Time entry, 6 operations
create_time_entries_bulkCreate time entries bulkPOSTCreates several time entries. Time entries and time balance are saved immediately.create_time_entryCreate time entryPOSTLogs actual work: a person's time (seconds) on a project for a date, optionally on a task, with a description. Saved immediately together with the person's time balance.delete_time_entries_bulkDelete time entries bulkPOSTPermanently deletes several time entries at once by id; if one id does not exist nothing is deleted. Time entries and the time balance are updated immediately.delete_time_entryDelete time entryDELETEPermanently deletes a time entry by id; the person's time balance is updated.get_time_entryGet time entryGETReads one time entry: person, project, task, date, seconds, description, rate and whether it is invoiced.list_time_entriesList time entriesGETLists time entries (actual work). Filter by personId, projectId, entry date range (entryDateAfter/Before, YYYY-MM-DD) or externalId; page with after = meta.nextCursor.
Allocation, 5 operations
create_allocationCreate allocationPOSTPlans work on a position: a percentage of time from one date to another (allocationPercentage 1000000 = 100%, 500000 = 50%), confirmed or tentative. Allocations of one position cannot overlap.delete_allocationDelete allocationDELETEPermanently deletes an allocation (planned work) by id.get_allocationGet allocationGETReads one allocation: position, from and through dates, allocation percentage (1000000 = 100%) and status.list_allocationsList allocationsGETLists allocations (planned work of a position for a period, with its percentage and status). Page with after = meta.nextCursor. For names of people and projects use report_allocations.report_allocationsReport allocationsGETLists allocations (planned or confirmed time of a person on a project for a period) with the person, project, client, group, role and position names included. Filter by from and through dates, archived, created or updated time.
Person skill assignment, 5 operations
create_person_skill_assignmentCreate person skill assignmentPOSTGives a person a skill, optionally with a level (list_skill_assignment_levels), a sentiment and a note.create_person_skill_assignments_bulkCreate person skill assignments bulkPOSTCreates several person skill assignments in one call; answers the ids of the created assignments.delete_person_skill_assignmentDelete person skill assignmentDELETERemoves a skill from a person (deletes the assignment) by id.get_person_skill_assignmentGet person skill assignmentGETReads one person skill assignment (person, skill, level).list_person_skill_assignmentsList person skill assignmentsGETLists which persons have which skills. Filter by personId or skillId; page with after = meta.nextCursor.
Budget, 4 operations
create_budgetCreate budgetPOSTCreates a budget: a monetary amount for a project over a period (from, through), mainly for fixed-price projects. Budgets of the same project cannot overlap in time.delete_budgetDelete budgetDELETEPermanently deletes a budget by id.get_budgetGet budgetGETReads one budget: project, name, amount, period and whether it is invoiced outside Operating.list_budgetsList budgetsGETLists project budgets (amount and period). Page with after = meta.nextCursor.
Client address, 4 operations
create_client_addressCreate client addressPOSTCreates a client address. Client addresses represent addresses for a client.delete_client_addressDelete client addressDELETEPermanently deletes a client address by id.get_client_addressGet client addressGETReads a client address. Client addresses represent addresses for a client.list_client_addressesList client addressesGETLists all client addresses. Client addresses represent addresses for a client.
Client contact person, 4 operations
create_client_contact_personCreate client contact personPOSTCreates a client contact person. Client contact persons represent contacts for a client.delete_client_contact_personDelete client contact personDELETEPermanently deletes a client contact person by id.get_client_contact_personGet client contact personGETReads a client contact person. Client contact persons represent contacts for a client.list_client_contact_personsList client contact personsGETLists all client contact persons. Client contact persons represent contacts for a client.
Deal, 4 operations
create_dealCreate dealPOSTCreates a new deal. Deals represent the sales opportunities of the company. They are linked to projects for staffing purposes.delete_dealDelete dealDELETEDeletes the deal with the given id. Deals represent the sales opportunities of the company. They are linked to projects for staffing purposes.get_dealGet dealGETRead a deal. Deals represent the sales opportunities of the company. They are linked to projects for staffing purposes.list_dealsList dealsGETLists all deals. Deals represent the sales opportunities of the company. They are linked to projects for staffing purposes.
Expense, 4 operations
create_expenseCreate expensePOSTCreates an expense. Expenses represent costs incurred by employees which are related to a project. They can be categorized and may include receipts and other documentation.delete_expenseDelete expenseDELETEDeletes the expense with the given id. Deleting an expense also deletes all line items for that expense.get_expenseGet expenseGETReads an expense. Expenses represent costs incurred by employees which are related to a project. They can be categorized and may include receipts and other documentation.list_expensesList expensesGETLists all expenses. Expenses represent costs incurred by employees which are related to a project. They can be categorized and may include receipts and other documentation.
Holiday, 4 operations
create_holidayCreate holidayPOSTCreates a holiday. A holiday is a day that may recur and gives a percentage of time off; its dates (holiday dates) are managed in Operating, not through this API.delete_holidayDelete holidayDELETEDeletes a holiday. A holiday is a day that may recur and gives a percentage of time off; its dates (holiday dates) are managed in Operating, not through this API.get_holidayGet holidayGETReads a holiday. A holiday is a day that may recur and gives a percentage of time off; its dates (holiday dates) are managed in Operating, not through this API.list_holidaysList holidaysGETLists all holidays. A holiday is a day that may recur and gives a percentage of time off; its dates (holiday dates) are managed in Operating, not through this API.
Invoice, 4 operations
create_invoiceCreate invoicePOSTCreates an invoice. Invoices are financial documents between a company and a client. They include details such as the invoice date, number, amount, and status.delete_invoiceDelete invoiceDELETEPermanently deletes an invoice by id.get_invoiceGet invoiceGETReads an invoice. Invoices are financial documents between a company and a client. They include details such as the invoice date, number, amount, and status.list_invoicesList invoicesGETLists all invoices. Invoices are financial documents between a company and a client. They include details such as the invoice date, number, amount, and status.
Phase, 4 operations
create_phaseCreate phasePOSTCreates a new phase. Phases can be used to organize projects into logical time periods or stages.delete_phaseDelete phaseDELETEDeletes a phase. Phases can be used to organize projects into logical time periods or stages.get_phaseGet phaseGETReads a phase. Phases can be used to organize projects into logical time periods or stages.list_phasesList phasesGETLists all phases with optional filtering. Phases can be used to organize projects into logical time periods or stages.
Planned expense, 4 operations
create_planned_expenseCreate planned expensePOSTCreates a planned expense. Planned expenses represent expected costs on a project. They can be billable or non-billable and are used for budgeting and forecasting.delete_planned_expenseDelete planned expenseDELETEPermanently deletes a planned expense by id.get_planned_expenseGet planned expenseGETReads a planned expense. Planned expenses represent expected costs on a project. They can be billable or non-billable and are used for budgeting and forecasting.list_planned_expensesList planned expensesGETLists all planned expenses. Planned expenses represent expected costs on a project. They can be billable or non-billable and are used for budgeting and forecasting.
Position, 4 operations
create_positionCreate positionPOSTCreates a position on a project: a seat, optionally with a person and a competence role, that allocations are planned on. Create the position first, then create_allocation on it. Changes data.delete_positionDelete positionDELETEDeletes the position with the given id. Deleting a position also deletes all allocations for that position.get_positionGet positionGETReads one position: its project, person, competence role and position-specific rate.list_positionsList positionsGETLists positions (a project seat, optionally with a person and role; open positions have no person). Filter by project or person; page with after = meta.nextCursor.
Project tag assignment, 4 operations
create_project_tag_assignmentCreate project tag assignmentPOSTCreates a project tag assignment. Project tag assignments can be used to assign tags to projects.delete_project_tag_assignmentDelete project tag assignmentDELETEDeletes the project tag assignment with the given id. Project tag assignments can be used to assign tags to projects.get_project_tag_assignmentGet project tag assignmentGETReads a project tag assignment. Project tag assignments can be used to assign tags to projects.list_project_tag_assignmentsList project tag assignmentsGETLists all project tag assignments. Project tag assignments can be used to assign tags to projects.
Project task assignment, 4 operations
create_project_task_assignmentCreate project task assignmentPOSTMakes a task available on a project (optionally with its own billable rate), so time entries on that project can reference it.delete_project_task_assignmentDelete project task assignmentDELETERemoves a task from a project (deletes the project task assignment) by id.get_project_task_assignmentGet project task assignmentGETReads one project task assignment (project, task, rate).list_project_task_assignmentsList project task assignmentsGETLists which tasks are available on which projects. Filter by projectId or taskId; page with after = meta.nextCursor.
Receipt, 4 operations
create_receiptCreate receiptPOSTCreates a receipt record (name, MIME type) attached to an expense (expenseId from list_expenses). The file itself is uploaded through a signed link this tool does not return.delete_receiptDelete receiptDELETEDeletes the receipt with the given id. This also removes the associated file from storage.get_receiptGet receiptGETReads a receipt. Receipts represent uploaded files associated with expenses. They provide documentation for expense claims and can include images or PDF files.list_receiptsList receiptsGETLists all receipts. Receipts represent uploaded files associated with expenses. They provide documentation for expense claims and can include images or PDF files.
Skill, 4 operations
create_skillCreate skillPOSTCreates a skill that persons and positions can be given.delete_skillDelete skillDELETEPermanently deletes a skill by id.get_skillGet skillGETReads one skill.list_skillsList skillsGETLists skills. Page with after = meta.nextCursor.
Task, 4 operations
create_taskCreate taskPOSTCreates a task: a work item that time entries can be logged against, or a time-off category for the time-off project. Assign it to projects with create_project_task_assignment.delete_taskDelete taskDELETEPermanently deletes a task by id.get_taskGet taskGETReads one task, including whether it is billable by default and, for time-off categories, whether it uses flex time or zeroes capacity.list_tasksList tasksGETLists tasks (work items time is logged against, and time-off categories). Page with after = meta.nextCursor.
Vendor, 4 operations
create_vendorCreate vendorPOSTCreates a vendor. Vendors represent external companies or individuals from whom expenses are incurred.delete_vendorDelete vendorDELETEDeletes the vendor with the given id. The vendor cannot be deleted if it is referenced by any expenses or planned expenses.get_vendorGet vendorGETReads a vendor. Vendors represent external companies or individuals from whom expenses are incurred.list_vendorsList vendorsGETLists all vendors. Vendors represent external companies or individuals from whom expenses are incurred.
Client, 3 operations
create_clientCreate clientPOSTCreates a new client. Clients represent the companies that your company works with.get_clientGet clientGETReads a single client. Clients represent the companies that your company works with.list_clientsList clientsGETLists all clients. Clients represent the companies that your company works with.
Person, 3 operations
create_personCreate personPOSTCreates a person. Persons represent the invidual consultants and staff members of the company who are allocated to projects.get_personGet personGETReads a person. Persons represent the invidual consultants and staff members of the company who are allocated to projects.list_personsList personsGETLists all persons. Persons represent the invidual consultants and staff members of the company who are allocated to projects.
Project, 3 operations
create_projectCreate projectPOSTCreates a new project. Projects are the primary entity for which people are staffed in Operating. Their client can be either an internal or an external one.get_projectGet projectGETReads a project. Projects are the primary entity for which people are staffed in Operating. Their client can be either an internal or an external one.list_projectsList projectsGETLists all projects. Projects are the primary entity for which people are staffed in Operating. Their client can be either an internal or an external one.
Billable item, 2 operations
get_billable_itemGet billable itemGETReads a billable item. Billable items represent categories of things a company can invoice.list_billable_itemsList billable itemsGETLists all billable items. Billable items represent categories of things a company can invoice.
Client tag, 2 operations
get_client_tagGet client tagGETReads a client tag. Client tags can be used to categorize clients.list_client_tagsList client tagsGETLists all client tags. Client tags can be used to categorize clients.
Company, 2 operations
get_companyGet companyGETReads a company. Companies represent your own legal entities in the system.list_companiesList companiesGETLists all companies. Companies represent your own legal entities in the system.
Competence role, 2 operations
get_competence_roleGet competence roleGETReads one competence role.list_competence_rolesList competence rolesGETLists competence roles (the roles people can play on positions, which drive rates). Page with after = meta.nextCursor.
Expense category, 2 operations
get_expense_categoryGet expense categoryGETReads an expense category. Expense categories allow categorizing expense line items. Each category can have default values for markup, receipt requirements, and billing behavior.list_expense_categoriesList expense categoriesGETLists all expense categories. Expense categories allow categorizing expense line items.
Group, 2 operations
get_groupGet groupGETReads a group. Groups represent internal groups of people within the company.list_groupsList groupsGETLists all groups. Groups represent internal groups of people within the company.
Pipeline, 2 operations
get_pipelineGet pipelineGETRead a pipeline. Pipelines are the sales process of the company, consisting of pipeline stages. Deals flow through these pipelines by stage.list_pipelinesList pipelinesGETLists all pipelines. Pipelines are the sales process of the company, consisting of pipeline stages. Deals flow through these pipelines by stage.
Pipeline stage, 2 operations
get_pipeline_stageGet pipeline stageGETLists all pipeline stages. Pipeline stages are the individual steps of the sales process. Each stage is part of exactly one pipeline and several deals can be in any one stage.list_pipeline_stagesList pipeline stagesGETLists all pipeline stages. Pipeline stages are the individual steps of the sales process. Each stage is part of exactly one pipeline and several deals can be in any one stage.
Project tag, 2 operations
get_project_tagGet project tagGETReads a project tag. Project tags can be used to categorize projects.list_project_tagsList project tagsGETLists all project tags. Project tags can be used to categorize projects.
Rate card, 2 operations
get_rate_cardGet rate cardGETReads a rate card. Rate cards are used to define hourly rates for people and positions based on their site, competence role and seniority.list_rate_cardsList rate cardsGETLists all rate cards. Rate cards are used to define hourly rates for people and positions based on their site, competence role and seniority.
Site, 2 operations
get_siteGet siteGETReads a site. Sites represent geographical locations your organization works in. All employees belong to one site.list_sitesList sitesGETLists all sites. Sites represent geographical locations your organization works in. All employees belong to one site.
Skill assignment level, 2 operations
get_skill_assignment_levelGet skill assignment levelGETReads one skill assignment level.list_skill_assignment_levelsList skill assignment levelsGETLists the skill levels a person skill assignment can carry. Page with after = meta.nextCursor.
Skill category, 2 operations
get_skill_categoryGet skill categoryGETReads one skill category.list_skill_categoriesList skill categoriesGETLists skill categories. Page with after = meta.nextCursor.
Tax rate, 2 operations
get_tax_rateGet tax rateGETReads a tax rate. Tax rates are used to denote the tax amount of line items on invoices.list_tax_ratesList tax ratesGETLists all tax rates. Tax rates are used to denote the tax amount of line items on invoices.
Allocation status, 1 operation
list_allocation_statusesList allocation statusesGETLists the allocation statuses of the account (id and name); their ids filter the planned reports (allocationStatusIds).
Currency, 1 operation
list_currenciesList currenciesGETLists the currencies configured for the tenant (exchange rates are not exposed). Page with after = meta.nextCursor.
Project status, 1 operation
list_project_statusesList project statusesGETLists the project statuses of the account (the statusId values of projects).
Showing the first 120 of 146 endpoints. The rest are in the product, searchable from the workflow builder and from chat.
Use Operating from Claude Code, Cursor or Codex
Connect Operating in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Operating operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Operating
- Create your workspace
Sign up free. Nothing to install.
- Connect Operating once
Add your Operating connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Operating integration FAQ
What can you do with the Operating integration?
LiveContext exposes 146 operations on Operating, covering time entry, allocation, person skill assignment and budget.
