Integration

Avaza integration

Avaza is project management, timesheet, expense and invoicing software for service businesses. Manage projects, sections, tasks and task comments, log and approve timesheets and run timers, record and approve expenses with receipts, book team schedules and leave, manage companies and contacts, and create estimates, invoices, payments, supplier bills and webhooks. The two-step signed-URL file upload is not exposed (upload a file directly, as base64 or from a URL instead). Authentication is OAuth2 (an Avaza app with a client id and secret) or a Personal Access Token created by an admin under Settings > Manage Developer Apps, sent as a Bearer token.

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in Avaza.Built from the 123 Avaza tools below, on the connection you add once.

What you can do with Avaza

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.

Lookup, 6 operations

  • list_expense_payment_methodsList expense payment methodsGETRetrieves the list of expense payment methods configured in the Avaza account.
  • lookup_companiesLookup companiesGETRetrieves a paginated dropdown list of companies. Admins see all companies; non-admins see only companies from projects they are a member of.
  • lookup_expense_groupsLookup expense groupsGETRetrieves a paginated list of expense group names (ad hoc groupings of reported expenses, such as a trip), with optional search filtering.
  • lookup_expense_merchantsLookup expense merchantsGETRetrieves a minimal dropdown list of expense merchant names for search/autocomplete.
  • lookup_projectsLookup projectsGETRetrieves a minimal dropdown list of active projects grouped by customer company, for search/autocomplete.
  • lookup_tasksLookup tasksGETRetrieves the tasks of one project grouped by section, for dropdowns and autocomplete, sorted by section title then task title. Requires projectID.

Estimate, 5 operations

  • create_estimateCreate estimatePOSTCreates a new draft estimate (quote). Optionally creates a new customer company and contact if no matching company is found.
  • delete_estimateDelete estimateDELETEDeletes an estimate by its Estimate ID, with its line items and activity records. Only Draft, Sent, Accepted or Rejected estimates can be deleted; one converted to an invoice is refused (422). Repeating the delete returns 404.
  • get_estimateGet estimateGETRetrieves a single estimate by its Estimate ID, including line items, issuer/recipient details, and web links.
  • list_estimatesList estimatesGETLists estimates (quotes) page by page. EstimateStatusCode values: Draft, Sent, Accepted, Converted, Expired, Rejected.
  • update_estimateUpdate estimatePUTUpdates an estimate; only fields listed in FieldsToUpdate change, and listing LineItems deletes existing line items absent from the array. Accepted, Converted or Void estimates cannot be updated.

Expense, 5 operations

  • create_expenseCreate expensePOSTCreates a new expense entry. Requires at minimum an expense date, amount, and expense category (by ID or name).
  • delete_expensesDelete expensesDELETEDeletes one or more expense entries by their Expense IDs. Returns a result set indicating success or failure for each expense.
  • get_expenseGet expenseGETRetrieves a single expense entry by its Expense ID, including category, project, tax, attachment, and approval details.
  • list_expensesList expensesGETRetrieves a paginated list of expense entries with rich filtering by date range, user, project, category, chargeable/invoiced status, approval status, and merchant.
  • update_expenseUpdate expensePUTUpdates an existing expense entry. Only fields listed in the FieldsToUpdate array will be modified. Requires the ExpenseID and FieldsToUpdate properties.

Task, 5 operations

  • create_taskCreate taskPOSTCreates a new task in a project section. Requires ProjectIDFK, SectionIDFK, and Title. Optionally assign users, set dates, priority, estimated effort, and tags.
  • delete_taskDelete taskDELETEDeletes the task and its entire subtask tree along with related data (assignments, followers, tags, dependencies, comments, and recurring-task links).
  • get_taskGet taskGETRetrieves full task details by Task ID, including project context, section, assignees, dates, status, priority, tags, and time tracking information.
  • list_tasksList tasksGETRetrieves a paginated list of tasks with details including assignees, dates, status, priority, tags, and time tracking.
  • update_taskUpdate taskPUTUpdates a task; only the fields named in FieldsToUpdate (a string array) are written. TaskID and FieldsToUpdate are required.

Timesheet, 5 operations

  • create_timesheetCreate timesheetPOSTCreates a new timesheet entry. If Duration is null or 0, a timer will be started automatically. Requires ProjectIDFK and TimesheetCategoryIDFK.
  • delete_timesheetDelete timesheetDELETEDeletes a timesheet entry by its Timesheet Entry ID.
  • get_timesheetGet timesheetGETRetrieves a single timesheet entry by its Timesheet Entry ID, including user, project, category, approval, and timer details.
  • list_timesheetsList timesheetsGETRetrieves a paginated list of timesheet entries with rich filtering by date range, user, project, task, category, billable/invoiced status, approval status.
  • update_timesheetUpdate timesheetPUTUpdates an existing timesheet entry. Only fields listed in FieldsToUpdate will be modified. ProjectIDFK is always required.

Webhook, 5 operations

  • create_webhookCreate webhookPOSTSubscribes target_url to one Avaza event and returns the subscription ID. Needs the webhook_notifications scope plus the scope of the watched entity; a duplicate is refused (409). The receiver must answer 200 OK or Avaza retries.
  • delete_webhookDelete webhookDELETEDeletes a webhook subscription by its Subscription ID.
  • delete_webhook_by_urlDelete webhook by urlDELETEDeletes a webhook subscription by its callback URL.
  • get_webhookGet webhookGETRetrieves a single webhook subscription by its Subscription ID.
  • list_webhooksList webhooksGETRetrieves all active webhook subscriptions for the authenticated account.

Company, 4 operations

  • create_companyCreate companyPOSTCreates a new customer company record in Avaza.
  • get_companyGet companyGETRetrieves a single customer company by its Company ID, including contacts and billing address details.
  • list_companiesList companiesGETRetrieves a paginated list of customer companies with full details including contacts, billing address, and financial settings.
  • update_companyUpdate companyPUTUpdates an existing company record. Only fields listed in the FieldsToUpdate array will be modified.

Invoice, 4 operations

  • create_invoiceCreate invoicePOSTCreates a new draft invoice. Optionally creates a new customer company and contact if no matching company is found.
  • get_invoiceGet invoiceGETRetrieves a single invoice by its Transaction ID, including line items, issuer/recipient address details, and web links.
  • list_invoicesList invoicesGETLists invoices page by page. TransactionStatusCode values: Draft, Sent, Late, Paid, Partial, Void.
  • update_invoiceUpdate invoicePUTUpdates an existing draft invoice. Only fields listed in the FieldsToUpdate array will be modified.

Project, 4 operations

  • create_projectCreate projectPOSTCreates a new project in Avaza, linked to a customer company. Optionally creates a new company if CompanyName is provided and not matched.
  • get_projectGet projectGETRetrieves full project details by Project ID, including sections, team members with rates and permissions, and project tags.
  • list_projectsList projectsGETRetrieves a paginated list of projects with details including status, billing type, budget, category, and date range.
  • update_projectUpdate projectPUTUpdates an existing project. Only fields listed in the FieldsToUpdate array will be modified.

Bill, 3 operations

  • create_billCreate billPOSTCreates a new draft supplier bill (purchase invoice). Optionally creates a new supplier company and contact if no matching company is found.
  • get_billGet billGETRetrieves a single supplier bill by its Transaction ID, including line items, issuer/recipient address details, and web links.
  • list_billsList billsGETRetrieves a paginated list of supplier bills with line items, status and address details, filtered by company, status, date ranges or updated date. TransactionStatusCode values: Draft, Verified, Late, Paid, Partial, Void.

Bill payment, 3 operations

  • create_bill_paymentCreate bill paymentPOSTRecords a new supplier bill payment. Optionally include allocations to apply the payment against specific bills.
  • get_bill_paymentGet bill paymentGETRetrieves a single supplier bill payment by its Transaction ID, including allocations to bills.
  • list_bill_paymentsList bill paymentsGETRetrieves a paginated list of supplier bill payments, including payment allocations to specific bills.

Contact, 3 operations

  • create_contactCreate contactPOSTCreates a new external contact, optionally linked to an existing company. If CompanyName is provided and not matched, a new company is created.
  • get_contactGet contactGETRetrieves a single external contact by their Contact ID.
  • list_contactsList contactsGETRetrieves a paginated list of external contacts (customer contacts) with company association details.

Fixed amount, 3 operations

  • create_fixed_amountCreate fixed amountPOSTCreates a fixed-amount billing entry against a task, which the invoicing tools can then bill. The project is derived from the task and the amount is in its customer's currency; tasks on internal or archived projects are refused.
  • list_fixed_amountsList fixed amountsGETRetrieves a paginated list of fixed-amount billing entries used for fixed-price project invoicing. Can filter by project, task, invoiced status, and updated date.
  • update_fixed_amountUpdate fixed amountPUTUpdates a fixed-amount billing entry; only fields listed in FieldsToUpdate (Amount, InventoryItemIDFK, Notes) change. An invoiced entry cannot be updated until its invoice line is removed; its task cannot be changed.

Inventory, 3 operations

  • create_inventory_itemCreate inventory itemPOSTCreates a new inventory/product item.
  • get_inventory_itemGet inventory itemGETRetrieves a single inventory/product item by its Inventory Item ID.
  • list_inventory_itemsList inventory itemsGETRetrieves a paginated list of inventory/product items configured in the account, used as line items on invoices, bills, and estimates.

Payment, 3 operations

  • create_paymentCreate paymentPOSTRecords a new customer payment. Optionally include allocations to apply the payment against specific invoices.
  • get_paymentGet paymentGETRetrieves a single customer payment by its Transaction ID, including allocations to invoices.
  • list_paymentsList paymentsGETRetrieves a paginated list of customer payments, including allocations to specific invoices. Can filter by invoice or updated date.

Project member, 3 operations

  • add_project_memberAdd project memberPOSTAdds a user as a member of a project with rates, budget and permissions. Cost, budget and rate amounts are decimals in the customer company's currency; budget units follow the project's budget method.
  • list_project_membersList project membersGETRetrieves project members with their rates and permissions. Pass at least one of ProjectID or UserID.
  • update_project_memberUpdate project memberPUTUpdates a project member's rates, budget or permissions; only fields listed in FieldsToUpdate change. ScheduleRateUpdateOption and TimesheetRateUpdateOption cascade a rate change to existing bookings and timesheet entries.

Project timesheet category, 3 operations

  • add_project_timesheet_categoryAdd project timesheet categoryPOSTAssigns a timesheet/billing category to a project, specifying billable status, rate, and budget hours.
  • list_project_timesheet_categoriesList project timesheet categoriesGETRetrieves the timesheet (billing) categories assigned to projects, billable ones first, then by name.
  • update_project_timesheet_categoryUpdate project timesheet categoryPUTUpdates an existing project timesheet category assignment, including billable status, rate, and budget hours.

Schedule serie, 3 operations

  • delete_schedule_seriesDelete schedule seriesDELETEDeletes a schedule series (booking or leave) by its Schedule Series ID. Also removes all associated daily schedule assignments.
  • list_schedule_seriesList schedule seriesGETLists schedule series page by page, filtered by query parameters. A schedule series is a strip of time assigned to a user over a date range for a number of hours per day, either leave or a project work booking.
  • search_schedule_seriesSearch schedule seriesPOSTSearches schedule series with filters sent in the request body (including a list of ScheduleSeriesIDs) and returns a paginated list. A series is a user's leave or project work booking over a date range.

Section, 3 operations

  • create_sectionCreate sectionPOSTCreates a new section (task group) within a project.
  • delete_sectionDelete sectionDELETEDeletes a section by its Section ID. Cannot delete a Section that contains Tasks.
  • list_sectionsList sectionsGETRetrieves a list of sections (task groups) within a project. Requires a ProjectID query parameter.

Task discussion, 3 operations

  • add_task_commentAdd task commentPOSTPosts a comment to a task: a plain comment, internal note or reply, with up to 8 attachments (upload each with upload_file without linking it, then pass the IDs in FileAttachmentIDs). ResponseBody is capped at 16,000 characters.
  • list_task_commentsList task commentsGETRetrieves discussion/comment messages for a specific task, including replies, attachments, and system messages. Supports pagination via startItem.
  • update_task_commentUpdate task commentPUTEdits a task comment's body and attachments (author only). FileAttachmentIDs is the final set: attachments left out are deleted. Pass ExpectedDateUpdated to get a 409 on a concurrent edit. Edits send no new notification.

Timesheet timer, 3 operations

  • get_running_timerGet running timerGETChecks if there is a currently running timer for the authenticated user (or an impersonated user).
  • start_timerStart timerPOSTStarts a timer on an existing timesheet entry. If the entry is not on the current day or start/end times are enabled, a new timesheet entry is created for the timer.
  • stop_timerStop timerDELETEStops the running timer on a timesheet entry. The elapsed time is added to the entry's duration.

User profile, 3 operations

  • create_userCreate userPOSTCreates a user (admin only): a customer contact when CompanyIDFK is given, otherwise a team member. Paid-role seat quotas are enforced.
  • list_usersList usersGETLists the users who have roles in the Avaza account. Admins and finance managers see everyone; other users see only their own profile.
  • update_userUpdate userPUTUpdates a user (admin only); only fields named in FieldsToUpdate are written, and Roles replaces the whole role set. A user cannot switch between team member and customer contact, and its company cannot change.

Attachment, 2 operations

  • delete_expense_receiptDelete expense receiptDELETEDiscards a receipt uploaded with upload_expense_receipt that has not been linked to an expense (for example when the user cancels before saving).
  • upload_expense_receiptUpload expense receiptPOSTUploads a file attachment for an expense. Accepts multipart/form-data with the file content. Returns the uploaded file details including ID and URL.

Credit note, 2 operations

  • get_credit_noteGet credit noteGETRetrieves a single credit note by its Transaction ID, including line items and invoice allocations.
  • list_credit_notesList credit notesGETRetrieves a paginated list of customer credit notes, including line items and allocations against invoices.

Invoice template, 2 operations

  • get_invoice_templateGet invoice templateGETRetrieves a single invoice template by its Invoice Template ID.
  • list_invoice_templatesList invoice templatesGETRetrieves the invoice templates in the account with their IDs, names, type and configuration, ordered by Name.

Recurring invoice, 2 operations

  • get_recurring_invoiceGet recurring invoiceGETRetrieves a single recurring invoice profile by its ID, including line items, schedule configuration, and next invoice date.
  • list_recurring_invoicesList recurring invoicesGETLists recurring invoice profiles page by page; get_recurring_invoice returns one with its line items, schedule and next invoice date.

Account, 1 operation

  • get_accountGet accountGETRetrieves configuration details for the authenticated Avaza account, including timesheet settings, currency, branding, and feature flags.

Add booking, 1 operation

  • add_schedule_bookingAdd schedule bookingPOSTCreates a new project work schedule booking for a user over a date range with specified hours per day or total duration.

Add leave, 1 operation

  • add_schedule_leaveAdd schedule leavePOSTCreates a new leave/time-off schedule booking for a user over a date range.

Add line item, 1 operation

  • add_invoice_line_itemsAdd invoice line itemsPOSTAppends line items to an existing invoice WITHOUT modifying or deleting its other line items (unlike update_invoice, which replaces the full line item collection).

Add uninvoiced item, 1 operation

  • add_uninvoiced_items_to_invoiceAdd uninvoiced items to invoicePOSTAppends line items for every eligible uninvoiced timesheet, expense or fixed amount of the invoice's customer matching the filters, grouped as requested, and marks them invoiced. A repeat call adds nothing. The invoice must not be Void.

Approve, 1 operation

  • approve_timesheetsApprove timesheetsPOSTApproves a batch of pending timesheet entries by their TimeSheetEntryIDs. Caller must have the Timesheet Approver role and permission to approve each specific entry.

Archive, 1 operation

  • archive_userArchive userPOSTArchives a user (admin only): removes all role assignments and disables project memberships, freeing paid seats. Archiving an archived user returns it unchanged; you cannot archive yourself.

Currency, 1 operation

  • list_currenciesList currenciesGETRetrieves the list of currencies configured in the Avaza account, including currency codes, names, symbols, and decimal places.

Custom field definition, 1 operation

  • list_custom_field_definitionsList custom field definitionsGETRetrieves the active custom field definitions mapped to an entity type, in display order, including data type, multi-select flag, required flag, visibility.

Deleted, 1 operation

  • list_deleted_timesheetsList deleted timesheetsGETRetrieves deleted (tombstone) timesheet entries for synchronisation purposes. Admin access only. Supports filtering by deletion date, entry date range, and user.

Edit booking, 1 operation

  • update_schedule_bookingUpdate schedule bookingPUTUpdates an existing project work schedule booking.

Edit leave, 1 operation

  • update_schedule_leaveUpdate schedule leavePUTUpdates an existing leave schedule booking.

Expense category, 1 operation

  • list_expense_categoriesList expense categoriesGETRetrieves the expense categories configured in the account, including unit price settings for per-unit expense tracking, sorted by name by default.

Expense summary, 1 operation

  • get_expense_summaryGet expense summaryGETRetrieves aggregated expense statistics for a date range, with optional grouping by up to three dimensions (e.g. Category, Project, User, Month).

History, 1 operation

  • get_expense_historyGet expense historyGETRetrieves the history of an expense, newest first: who created, updated, submitted, approved or rejected it, and the AI receipt reads.

Mark as sent, 1 operation

  • mark_invoice_as_sentMark invoice as sentPOSTFlags a Draft invoice as Sent without emailing it (a status change only). Any other status is refused and nothing changes; a zero-amount invoice becomes Paid instead. SendWebhooks fires the invoice_sent event.

Preview uninvoiced item, 1 operation

  • preview_uninvoiced_itemsPreview uninvoiced itemsPOSTDry run of add_uninvoiced_items_to_invoice: computes the line items it would create for the filters (quantities, blended rates, expense amounts with markup, taxes, source record IDs) without saving or marking anything.

Project tag, 1 operation

  • list_project_tagsList project tagsGETRetrieves all project tags in the account, sorted alphabetically by name (case-insensitive).

Reject, 1 operation

  • reject_timesheetsReject timesheetsPOSTRejects a batch of pending or approved timesheet entries by their TimeSheetEntryIDs. Invoiced or paid entries cannot be rejected.

Remove line item, 1 operation

  • remove_invoice_line_itemsRemove invoice line itemsPOSTDeletes specific line items from an invoice and releases any timesheets, expenses or fixed amounts linked to them back to uninvoiced.

Schedule assignment, 1 operation

  • list_schedule_assignmentsList schedule assignmentsGETLists schedule assignments: the per-day entries of a schedule series (a booking or leave), each linked to its parent series.

Submit, 1 operation

  • submit_expenses_for_approvalSubmit expenses for approvalPOSTSubmits expenses for approval and emails the expense approvers unless SendNotifications is false. Pass the expense IDs to submit; when none are given, every verified expense of the user is submitted.

Task priority, 1 operation

  • list_task_prioritiesList task prioritiesGETRetrieves all task priority definitions configured in the account. Includes priority code, display name, color, and sort order. Results are ordered by DisplayOrder ascending.

Task statu, 1 operation

  • list_task_statusesList task statusesGETRetrieves all task status definitions configured in the account, grouped by task type.

Task type, 1 operation

  • list_task_typesList task typesGETRetrieves all task type definitions (workflow types) configured in the account, including name, icon, and whether it is the default type.

Tax, 1 operation

  • list_taxesList taxesGETRetrieves all tax rates configured in the Avaza account, including tax components for compound taxes.

Timesheet submission, 1 operation

  • submit_timesheetsSubmit timesheetsPOSTSubmits timesheet entries for approval. Either provide a specific day (WholeDayOf) or any day within a week (WholeWeekOf) to submit all draft timesheets in that day or week.

Timesheet summary, 1 operation

  • get_timesheet_summaryGet timesheet summaryGETRetrieves aggregated timesheet statistics for a date range, with optional grouping by up to three dimensions (e.g. Project, User, Category, Task, Month).

Unarchive, 1 operation

  • unarchive_userUnarchive userPOSTUnarchives a user (admin only). Roles and project memberships are not restored and must be re-added. Unarchiving an active user returns it unchanged.

Uninvoiced summary, 1 operation

  • get_uninvoiced_summaryGet uninvoiced summaryGETAggregated "what is ready to bill?" view: uninvoiced billable hours and indicative time value, uninvoiced chargeable expense value, and uninvoiced fixed amount totals.

Showing the first 120 of 123 endpoints. The rest are in the product, searchable from the workflow builder and from chat.

Use Avaza from Claude Code, Cursor or Codex

Connect Avaza in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Avaza operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect Avaza

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Avaza once

    Add your Avaza connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. 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.

Avaza integration FAQ

What can you do with the Avaza integration?

LiveContext exposes 123 operations on Avaza, covering lookup, estimate, expense and task.

Popular integrations

Browse the whole catalog