For Agents
Run service-business operations in MOCO - track time, manage projects, send invoices, and update deals - across 142 endpoints under api/v1.
Use for: I need to start a MOCO timer on a project, Stop a running MOCO timer and capture the duration, Create a MOCO invoice for a completed project, Record a payment against a MOCO invoice
Not supported: Does not handle payment card processing, payroll, or general ledger accounting - use for MOCO time tracking, invoicing, deals, and CRM only.
MOCO is a business operating system for service companies - agencies, consultancies, and freelancers - covering time tracking, projects, invoices, deals, and CRM in a single tool. The MOCO API exposes 142 endpoints under https://{subdomain}.mocoapp.com/api/v1 covering activities, comments, companies, contacts, deals, invoices, invoice payments, and the rest of the MOCO data model. Authentication uses a personal API token sent in the Authorization header.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the MOCO API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fmocoapp.com%2Fmocoapp" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fmocoapp.com%2Fmocoapp" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with MOCO API.
Track time on projects through /activities, including start_timer, stop_timer, and bulk activity entry
Send and reconcile invoices via /invoices and record payments through /invoice_payments
Manage company and contact records under /companies and /contacts
Move opportunities through pipeline stages with /deals and /deal_categories
Comment on records through /comments and /comments/bulk for asynchronous collaboration
GET STARTED
Disregard or bulk-update activities to correct timesheets at month end
Patterns agents use MOCO API for, with concrete tasks.
★ Automated time tracking for consultants
Consultancies log billable time in MOCO by calling /activities/{id}/start_timer when work begins and /activities/{id}/stop_timer when it ends, or by submitting batched entries through /activities/bulk for retroactive logging. Combined with /activities/disregard for cleaning up duplicate rows, this gives a complete time-tracking surface that maps directly onto invoiceable work.
Call /activities/{id}/start_timer when the user joins a project meeting, then /activities/{id}/stop_timer when they leave, and confirm the duration was logged.
Invoice issuance and payment reconciliation
Service businesses generate invoices from booked activities via /invoices, then capture payments through /invoice_payments to keep the receivables ledger current. The pairing means the same MOCO project can flow from time-tracked work into a sent invoice and a recorded payment without leaving the platform.
POST a new invoice to /invoices for project ID 123 covering this month's activities, then record the matching payment on /invoice_payments when the customer pays.
Deal pipeline reporting
Agency leadership uses /deals and /deal_categories to inspect the sales pipeline, group opportunities by stage, and forecast bookings. Combined with /companies and /contacts, the deal endpoints let an external dashboard render the same pipeline view that account managers see inside MOCO.
GET /deals filtered by category and status='open', sum the deal values per pipeline stage, and return a forecast table.
Agent integration via Jentic
An AI assistant for an agency can search Jentic for 'create a MOCO invoice', load the /invoices schema, and execute the call without exposing the personal API token. The agent can then chain into /invoice_payments and /comments to close out the billing cycle in one workflow.
Search Jentic for 'create a MOCO invoice', load the /invoices schema, and execute it with the project ID, line items, and recipient company.
142 endpoints — moco is a business operating system for service companies - agencies, consultancies, and freelancers - covering time tracking, projects, invoices, deals, and crm in a single tool.
METHOD
PATH
DESCRIPTION
/activities/{id}/start_timer
Start a timer on an activity
/activities/{id}/stop_timer
Stop a running activity timer
/activities/bulk
Bulk-create activities
/activities/disregard
Mark activities as disregarded
/companies
List MOCO companies
/comments
List comments across MOCO records
/comments/bulk
Bulk-create comments
/activities/{id}/start_timer
Start a timer on an activity
/activities/{id}/stop_timer
Stop a running activity timer
/activities/bulk
Bulk-create activities
/activities/disregard
Mark activities as disregarded
/companies
List MOCO companies
/comments
List comments across MOCO records
/comments/bulk
Bulk-create comments
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the MOCO API by hand means handling its Authorization-header token auth, resolving your account subdomain into the host, and coding timer, invoice, and CRM calls yourself. Through Jentic you install once, import the MOCO API from the API Directory, store the token once, and your agent calls it.
Permission scoping
MOCO puts the activity id in the URL path (/activities/{id}/start_timer), so a rule can pin your agent to one activity's timers: it can start and stop that activity's timer. You choose the operations it may call, so bulk activity changes and disregard are not included unless you add them.
Credential isolation
Your MOCO token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'start a MOCO time-tracking timer' or 'list companies', and Jentic returns the matching MOCO operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using MOCO API through Jentic.
What authentication does the MOCO API use?
MOCO uses a personal API token sent in the Authorization header on each request to https://{subdomain}.mocoapp.com/api/v1. Through Jentic the token and the per-tenant subdomain live in your Jentic One instance and are injected automatically; the agent never sees the raw token.
Can I start and stop time tracking timers via the API?
Yes. POST to /activities/{id}/start_timer to start the timer on an activity and /activities/{id}/stop_timer to stop it. For backdated entries use /activities/bulk and clean up duplicates with /activities/disregard.
What are the rate limits for the MOCO API?
MOCO does not declare rate limits in the OpenAPI specification. Treat HTTP 429 responses as the back-off signal and consult the MOCO API documentation at hundertzehn.github.io/mocoapp-api-docs for current per-tenant guidance.
How do I issue a MOCO invoice through Jentic?
Run pip install jentic, search Jentic for 'create a MOCO invoice', load the /invoices schema, and execute it with the project ID and line items. Jentic injects the personal API token from the vault.
Can I bulk-create activities and comments?
Yes. /activities/bulk accepts an array of activity entries and /comments/bulk accepts an array of comments, both in a single request. These are the recommended endpoints for migrations and backfills.
Is the MOCO API free to use?
MOCO is a paid SaaS for service companies; API access is bundled with a MOCO subscription. There is no public free tier. Get started with Jentic One, the self-hosted execution layer.
Can I limit what my agent is allowed to do with the MOCO API?
Yes. Because you run Jentic One yourself, your own rules decide which MOCO operations and which stored token the agent may use. MOCO puts the activity id in the URL path, as in /activities/{id}/start_timer and /activities/{id}/stop_timer, so a rule can pin the agent to starting and stopping one activity's timer while leaving bulk activity creation via /activities/bulk and /activities/disregard out of scope unless you explicitly allow them. The same control lets you decide whether the agent can reach invoice, deal, or CRM operations such as /invoices, /invoice_payments, and /companies.