Inbecto API
Connect your website, accounting package or your own software to your Inbecto workspace. Read records, add new ones and change them. Records cannot be deleted through the API.
Keys
A company admin makes a key in Inbecto, under Setup, API. A key acts for that one company. Send it with every call, and keep it on your server, never in a web page.
Authorization: Bearer inb_...
Calls
- GET /api/v1
- The kinds of record, their fields and what can be added
- GET /api/v1/{kind}
- A page of records. ?q= searches, ?field=value filters, ?limit= (up to 50) and ?offset= page through
- GET /api/v1/{kind}/{id}
- One record
- POST /api/v1/{kind}
- Adds a record from a JSON object of fields
- PATCH /api/v1/{kind}/{id}
- Changes the fields sent
Add a lead from a website form:
curl -X POST https://inbecto.com/api/v1/leads \
-H "Authorization: Bearer inb_..." \
-H "Content-Type: application/json" \
-d '{"name":"Asha","phone":"98100 00000","requirement":"Modular kitchen","source":"Website"}'Answers are JSON: a list comes as { data, total, next_offset }, one record as { data }, and a problem as { error } with the status 400 (what was sent is not right), 401 (no key, or a key switched off), 403 (the package does not include the API), 404 (no such record) or 429 (more than 120 calls in a minute).
Events sent to you
Under Setup, Automation, any rule can send its event to a web address of yours. Each event is a POST of JSON with the header X-Inbecto-Token, which you check against the token shown with the rule.
{
"event": "LEAD_NEW",
"title": "New lead: Asha",
"record": { "type": "lead", "id": "…", "name": "Asha", "phone": "98100 00000" },
"at": "2026-10-11T10:30:00+05:30"
}Kinds of record
Customers customers
People and companies the business sells to.
- Fields
- id, name, company_name, phone, alt_phone, whatsapp, email, billing_address, site_address, city, state, pin, gstin, notes, created_at
- Can be added
- name, company_name, phone, alt_phone, whatsapp, email, billing_address, site_address, city, state, pin, gstin, notes
- Can be changed
- name, company_name, phone, alt_phone, whatsapp, email, billing_address, site_address, city, state, pin, gstin, notes
- Needed to add
- name
Leads leads
Enquiries not yet won. stage is one of NEW, CONTACTED, SITE_VISIT, PROPOSAL, NEGOTIATION, WON, LOST. budget is in rupees.
- Fields
- id, name, phone, email, requirement, budget, site_address, city, source, stage, follow_up_date, notes, lost_reason, customer_id, created_at
- Can be added
- name, phone, email, requirement, budget, site_address, city, source, stage, follow_up_date, notes
- Can be changed
- name, phone, email, requirement, budget, site_address, city, source, stage, follow_up_date, notes, lost_reason
- Needed to add
- name
Quotations quotations
Quotations sent to customers. status is one of DRAFT, SENT, VIEWED, ACCEPTED, REJECTED, EXPIRED. Amounts are in rupees. Make one with create_quotation; change one in the app.
- Fields
- id, number, doc_date, valid_until, status, customer_id, project_id, customer_name, customer_phone, site_address, subtotal, discount, tax_amount, grand_total, notes, accepted_at, accepted_by_name, created_at
- Can be added
- No, these are made in the app
- Can be changed
- No
Estimates estimates
Costed estimates worked out before a quotation: total_cost is what the job should cost, total_selling what it would be sold for, in rupees. Read only.
- Fields
- id, number, title, estimate_date, status, customer_id, project_id, customer_name, site_address, total_cost, total_selling, tax_amount, grand_total, notes, created_at
- Can be added
- No, these are made in the app
- Can be changed
- No
Invoices invoices
Bills raised on customers. balance_due is what is still owed, in rupees; an invoice is overdue when balance_due is above 0 and due_date has passed. Raise one with create_invoice; record money received by adding a payment.
- Fields
- id, number, doc_date, due_date, status, customer_id, project_id, quotation_id, customer_name, customer_phone, subtotal, discount, tax_amount, grand_total, amount_paid, balance_due, payment_terms, notes, created_at
- Can be added
- No, these are made in the app
- Can be changed
- No
Payments received payments
A record of money the business has already received against an invoice. method is one of CASH, UPI, BANK, CHEQUE, CARD, OTHER. Adding one lowers the invoice's balance by itself; it is bookkeeping only and moves no money.
- Fields
- id, invoice_id, customer_id, project_id, amount, paid_on, method, reference, notes, created_at
- Can be added
- invoice_id, amount, paid_on, method, reference, notes
- Can be changed
- No
- Needed to add
- invoice_id, amount
Expenses expenses
Money spent, optionally against a project. status is one of DRAFT, SUBMITTED, APPROVED, REJECTED, REIMBURSED.
- Fields
- id, project_id, title, category, amount, spent_on, vendor_name, description, status, created_at
- Can be added
- project_id, title, category, amount, spent_on, vendor_name, description
- Can be changed
- project_id, title, category, amount, spent_on, vendor_name, description
- Needed to add
- title, amount
Projects projects
Jobs in hand. stage is one of PLANNING, DESIGN, PROCUREMENT, EXECUTION, INSPECTION, HANDOVER, COMPLETED, ON_HOLD, CANCELLED. New projects are started in the app.
- Fields
- id, code, name, description, stage, customer_id, site_address, city, start_date, target_date, completed_date, budget, contract_value, notes, created_at
- Can be added
- No, these are made in the app
- Can be changed
- name, description, stage, site_address, city, start_date, target_date, completed_date, notes
Tasks tasks
Things to do on a project. status is one of TODO, IN_PROGRESS, BLOCKED, DONE, CANCELLED.
- Fields
- id, project_id, title, description, status, priority, assigned_to, due_date, completed_at, created_at
- Can be added
- project_id, title, description, status, priority, due_date
- Can be changed
- title, description, status, priority, due_date
- Needed to add
- project_id, title
Site visits site_visits
Visits to a customer's site, planned or done.
- Fields
- id, customer_id, project_id, lead_id, visit_date, visit_time, location, purpose, status, notes, follow_up_date, created_at
- Can be added
- customer_id, project_id, lead_id, visit_date, visit_time, location, purpose, status, notes, follow_up_date
- Can be changed
- visit_date, visit_time, location, purpose, status, notes, follow_up_date
- Needed to add
- visit_date
Vendors vendors
Suppliers and subcontractors.
- Fields
- id, name, kind, contact_name, phone, email, gstin, address, city, state, payment_terms, rating, notes, is_active
- Can be added
- name, kind, contact_name, phone, email, gstin, address, city, state, payment_terms, notes
- Can be changed
- name, kind, contact_name, phone, email, gstin, address, city, state, payment_terms, notes, is_active
- Needed to add
- name
Purchase orders purchase_orders
Orders placed on vendors. Read only.
- Fields
- id, number, order_date, expected_date, status, vendor_id, vendor_name, project_id, subtotal, tax_amount, grand_total, amount_paid, notes
- Can be added
- No, these are made in the app
- Can be changed
- No
Products and rates products
What the business sells: the Product Master and Price Master. rate is in rupees per unit. calc_method says how a product is priced: sqft or sqm (by area, from width and height), rft or rm (by running length), cuft or cum (by volume), piece, unit, room, or fixed (one price for the job).
- Fields
- id, name, description, category, subcategory, calc_method, unit, rate, tax_rate, hsn_code, sku, default_description, is_enabled
- Can be added
- name, description, category, subcategory, calc_method, unit, rate, tax_rate, hsn_code, sku, default_description
- Can be changed
- name, description, category, subcategory, calc_method, unit, rate, tax_rate, hsn_code, sku, default_description, is_enabled
- Needed to add
- name
Service tickets service_tickets
After-sales complaints and service calls. status is one of OPEN, ASSIGNED, IN_PROGRESS, ON_HOLD, RESOLVED, CLOSED, CANCELLED; priority is LOW, MEDIUM, HIGH or URGENT. New tickets are raised in the app.
- Fields
- id, number, title, category, description, priority, status, customer_id, project_id, reported_on, due_date, resolved_on, resolution
- Can be added
- No, these are made in the app
- Can be changed
- priority, status, due_date, resolved_on, resolution
Warranties warranties
What is under warranty, for whom and until when. Read only.
- Fields
- id, item, scope, project_id, customer_id, vendor_id, start_date, duration_months, end_date, status
- Can be added
- No, these are made in the app
- Can be changed
- No