{"version":1,"pages":[{"id":"f939fe3137444ec1fc4f10dbb224c7f8ba75d6d2","title":"Shortcut Help Center","pathname":"/","siteSpaceId":"sitesp_k5Qzh","description":"Quick answers for setting up Shortcut: quoting, scheduling, and getting paid."},{"id":"b2aadf4cbcb597571ff7bab4a4f5c810ea7527dc","title":"Start Here - Get set up, send a proposal, and get paid","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid","siteSpaceId":"sitesp_k5Qzh","emoji":"1f680","description":"If you complete the first five pages in this section, you’ll be able to send a proposal, schedule work, and collect money—without talking to support.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"1b05ccb38207f70319fc350df3a9b8b5bb5261c9","title":"1) Set up Shortcut for your business","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/1-set-up-shortcut-for-your-business","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"4b76cf2f789332db89333a924d5135266f15628f","title":"2) Create services (so you can quote)","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/2-create-services-so-you-can-quote","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"f1e4d933c9a0110f46998716e3ec04b12cad593d","title":"3) Add a lead and send a proposal","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/3-add-a-lead-and-send-a-proposal","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"62d0e48570b4b150fdc814c603340134fc11f7a7","title":"4) Schedule + assign the job","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/4-schedule-+-assign-the-job","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"a17dc6cf16b940a04a1bbd6b9a5f72ac02488a10","title":"5) Get paid (complete job → invoice → payment)","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/5-get-paid-complete-job-greater-than-invoice-greater-than-payment","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"917eb9ed3ef5f5e334bcb690197b7aadc24838a3","title":"Later (optional): Customize automations","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/later-optional-customize-automations","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"bc1c38ec2c5b6ebacaa0a5b071da5a996ec1fc0c","title":"Later (optional): Lead Capture (website leads)","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/later-optional-intake-form-website-leads","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"f9dc4ffd5092dd4de2fc16d82631dba5a580f74c","title":"Later (optional): Templates","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/later-optional-templates","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"ZZ1i53on7y3Y50l2GdWk","title":"Later (optional): Set up Dispatch","pathname":"/readme/start-here-get-set-up-send-a-proposal-and-get-paid/later-optional-set-up-dispatch","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Start Here - Get set up, send a proposal, and get paid","emoji":"1f680"}]},{"id":"4f266f0e10d8363803f0fecd69207c3e3501fa9b","title":"Dashboard","pathname":"/readme/dashboard","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4c8","description":"The Dashboard is your \"how is my business doing?\" home screen.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"9a245718872750343ecd38e16c784f4259d467d9","title":"Tasks (to-dos)","pathname":"/readme/dashboard/tasks-to-dos","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dashboard","emoji":"1f4c8"}]},{"id":"8eb6cb92f9f917fd290f0640344858228564d3e4","title":"Settings","pathname":"/readme/configuration","siteSpaceId":"sitesp_k5Qzh","emoji":"1f527","description":"Everything you set up once — you, your team, your company, how customers reach and pay you, and how the work runs. Open it from your name at the bottom-left of the sidebar.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"225fe0fbd62947cd1fedbe3f2c9e2efd647a903d","title":"Users and Teams","pathname":"/readme/configuration/workforce-users-+-roles-+-teams","siteSpaceId":"sitesp_k5Qzh","description":"Invite your team, set their role, crew and pay rate, and organize your crews. Users and Teams both live in Settings → Workspace.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"qaQZXQdPrkV8bMDIzmQ9","title":"Plans & billing","pathname":"/readme/configuration/billing-subscription","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"b98788fd01cf58db3b5cbde205667f07716a9392","title":"Company & brand","pathname":"/readme/configuration/company-profile","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"qTeIXTqlZG4nc3bYwmx2","title":"QuickBooks integration","pathname":"/readme/configuration/quickbooks-integration","siteSpaceId":"sitesp_k5Qzh","description":"Connect QuickBooks Online and keep your books in sync automatically.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"6957a21b80fd460cbcc93d3dd21453444e845521","title":"Lead capture (website form)","pathname":"/readme/configuration/intake-form-tracking-+-embed-+-redirect-+-services","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"tMNz9L4eMwOysOmehTq9","title":"Customer payments (Stripe, offline payments, fees)","pathname":"/readme/configuration/finances-settings-stripe-manual-payments-fees","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"024f70285744201ce4c40adc812819b557fc67e0","title":"Services (pricing structures)","pathname":"/readme/configuration/services-pricing-structures","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"52493e11b027c51c1fc86b05bf28cf8066746abf","title":"Templates","pathname":"/readme/configuration/templates","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"747205d027765928c8afe98315174c3031710eda","title":"Scheduling & jobs (capacity + routes)","pathname":"/readme/configuration/settings-capacity-+-route-start-and-end","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"Tq9IZ3dMorKGJnWcx31J","title":"Custom fields","pathname":"/readme/configuration/custom-fields","siteSpaceId":"sitesp_k5Qzh","description":"Track the things your business cares about — gate codes, pets, irrigation zones — on every customer.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Settings","emoji":"1f527"}]},{"id":"a00eb20313b41049a26084249103e0096c06e051","title":"Leads, Prospects, Customers","pathname":"/readme/leads-prospects-customers","siteSpaceId":"sitesp_k5Qzh","emoji":"1f468-1f4bc","description":"One Customers workspace with views for every stage.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"5b1341005af734414e6d4af5bb620a8c154a821e","title":"How to add a lead","pathname":"/readme/leads-prospects-customers/how-to-add-a-lead","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Leads, Prospects, Customers","emoji":"1f468-1f4bc"}]},{"id":"3d687acc5e4a2933ae55f925caeb516a48d14850","title":"Prospect management (approve, remind, void)","pathname":"/readme/leads-prospects-customers/prospect-management-approve-remind-void","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Leads, Prospects, Customers","emoji":"1f468-1f4bc"}]},{"id":"bc329fedf296af4a1eaecb15c519757da4c0b3b4","title":"Customers overview + importing","pathname":"/readme/leads-prospects-customers/customers-overview-+-importing","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Leads, Prospects, Customers","emoji":"1f468-1f4bc"}]},{"id":"EWoJvDLvGdNCPcmPPjkM","title":"Customer tags (create, apply, filter)","pathname":"/readme/leads-prospects-customers/customer-tags","siteSpaceId":"sitesp_k5Qzh","description":"Label customers with your own tags — VIP, gate codes, do-not-text — and filter Customers, Jobs, and Dispatch by them.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Leads, Prospects, Customers","emoji":"1f468-1f4bc"}]},{"id":"1e7eacabaaff5ed3b1f5e793dcef5c494f217936","title":"Proposals","pathname":"/readme/proposals","siteSpaceId":"sitesp_k5Qzh","emoji":"270d","description":"Proposals are how you send estimates to prospective or current customers.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"04cbbb3fde930346be01f1babb66f1df48ede376","title":"How to create and send a proposal","pathname":"/readme/proposals/how-to-create-and-send-a-proposal","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Proposals","emoji":"270d"}]},{"id":"28494e82b7fa551a5a5e7ed99492a272a2a1d1a4","title":"Proposal service options (edit + alternatives)","pathname":"/readme/proposals/proposal-service-options-edit-+-alternatives","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Proposals","emoji":"270d"}]},{"id":"280a68462103573a0784b0d4276d2738ef8ace5a","title":"Jobs & Scheduling","pathname":"/readme/jobs-and-scheduling","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4c5","description":"Jobs are the work you do for customers.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"MVXd04sHBROGS52VwdOJ","title":"Create a job for an existing customer","pathname":"/readme/jobs-and-scheduling/create-a-job-for-an-existing-customer","siteSpaceId":"sitesp_k5Qzh","description":"Add new work for an existing customer straight from their profile.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"0457ad897f3154f51158cd123da08853b9f2de53","title":"Scheduling calendar (multi-service start dates)","pathname":"/readme/jobs-and-scheduling/scheduling-calendar-multi-service-start-dates","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"g1b4TXXwfgxmr5BrbGNf","title":"Scheduling chemical programs (starting rounds & linked programs)","pathname":"/readme/jobs-and-scheduling/scheduling-chemical-programs","siteSpaceId":"sitesp_k5Qzh","description":"Pick the first visit and Shortcut plans the whole season — suggested starting rounds, catch-up, and linked start dates when a customer has multiple programs.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"8RowFNmCZ0Hec8mSCi4p","title":"Calendar","pathname":"/readme/jobs-and-scheduling/calendar","siteSpaceId":"sitesp_k5Qzh","description":"Plan which stops happen on which day, which crew owns them, and in what order.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"9511a955f23d490331e742f3c42d413bc1a12af8","title":"Reschedule a job (just this event vs future events)","pathname":"/readme/jobs-and-scheduling/reschedule-a-job-single-visit-vs-update-future-events","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"752c524b68347ac7a1bc9abe73e9e68e9cb4c4e6","title":"Pause, resume, or cancel a job","pathname":"/readme/jobs-and-scheduling/pause-resume-or-cancel-a-job","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"NgSAAv0JjdYDCvKn8m0L","title":"Adding one-off services to a visit","pathname":"/readme/jobs-and-scheduling/adding-one-off-services-to-a-visit","siteSpaceId":"sitesp_k5Qzh","description":"Add a one-time service charge to a single visit from Dispatch, the customer profile, or the worker app.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"146299587473af9b067c7b382e76125cdafa014d","title":"Mark a job complete (and what happens next)","pathname":"/readme/jobs-and-scheduling/mark-a-job-complete-and-what-happens-next","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"6X5XgFyjVG1FeBdkYwXq","title":"Bulk price changes","pathname":"/readme/jobs-and-scheduling/bulk-price-changes","siteSpaceId":"sitesp_k5Qzh","description":"Raise (or change) prices across many customers at once, and notify everyone properly.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Jobs & Scheduling","emoji":"1f4c5"}]},{"id":"pipQcVC5y9mya2xia4VL","title":"Dispatch","pathname":"/readme/dispatch","siteSpaceId":"sitesp_k5Qzh","emoji":"1f680","description":"Dispatch is where you run the day: put every stop under the right crew, in the right order, keep an eye on the field, and close the day out.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"yVSd3R1BlfM5fWa6X3h7","title":"Assign crews and set the route order","pathname":"/readme/dispatch/assigning-and-ordering-routes","siteSpaceId":"sitesp_k5Qzh","description":"Get every stop under a crew, put the stops in driving order, and make a good order stick for next week.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"LRYtyfP3oLHJrvOlGVkW","title":"Views, filters, and columns","pathname":"/readme/dispatch/views-filters-and-columns","siteSpaceId":"sitesp_k5Qzh","description":"Change the date, narrow the board with filters, pick your columns, and save the setup as a view you can come back to or share.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"y4W6811JvQi2GDzbeqZx","title":"Optimize routes and the Assistant","pathname":"/readme/dispatch/optimize-routes-and-the-assistant","siteSpaceId":"sitesp_k5Qzh","description":"Let Shortcut work out the driving order, and use the Assistant (Cmd+K) to fix a day or rebalance crews.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"BPhDoGsCQtaxXjrMS2CF","title":"Route map","pathname":"/readme/dispatch/route-map","siteSpaceId":"sitesp_k5Qzh","description":"See the day's routes on a map, follow one crew at a time, draw an area to filter the board, and keep the map and the table pointed at the same stop.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"nbrGeDgxS8Po2jOPN4ec","title":"Operational notes","pathname":"/readme/dispatch/operational-notes","siteSpaceId":"sitesp_k5Qzh","description":"Leave instructions on a stop that the crew sees on their phone, with a severity and an expiry so old notes don't pile up.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"eenglpbPgNlyjxi6r582","title":"Crew ownership (recurring jobs)","pathname":"/readme/dispatch/crew-ownership","siteSpaceId":"sitesp_k5Qzh","description":"Give each recurring job a home crew so visits come pre-assigned every time.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"3vql7qwzlRvLI8xaszIm","title":"Split visits and sending more than one crew","pathname":"/readme/dispatch/split-and-shared-visits","siteSpaceId":"sitesp_k5Qzh","description":"Move one service to another crew, or send several crews to the same stop, and still bill the customer once.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"oP37widq47G6wrU1KfyI","title":"Needs attention","pathname":"/readme/dispatch/needs-attention","siteSpaceId":"sitesp_k5Qzh","description":"One tab for everything that needs a decision: skipped and sent-back stops, stops with no crew, double-bookings, overdue chemical rounds, and more.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"4BG615Wnls7V7FIa1YCr","title":"Messaging from Dispatch (SMS + email)","pathname":"/readme/dispatch/messaging-from-dispatch","siteSpaceId":"sitesp_k5Qzh","description":"Text or email the customers on today's board — with a check of exactly who will receive it before anything sends.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"4WK5xSXq7e1vHNKlNsYi","title":"Closing out the day","pathname":"/readme/dispatch/closing-out-the-day","siteSpaceId":"sitesp_k5Qzh","description":"Complete stops from the office, check the money on the Close out tab, and deal with hourly visits that ran past the day.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Dispatch","emoji":"1f680"}]},{"id":"jxDZuq3ltPE4IsYGmSLO","title":"Messaging (shared inbox)","pathname":"/readme/messaging-inbox","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4ac","description":"Text customers from a shared team inbox.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"3cb2f43b0af582eee8807dc66980fcd462bb9c63","title":"Finances (Invoices & payments)","pathname":"/readme/finances-invoices-and-payments","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4b0","description":"","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"163404a818e09b9571890a114eda2b83c3519630","title":"Finances overview (invoice list + filters)","pathname":"/readme/finances-invoices-and-payments/finances-overview-invoice-list-+-filters","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"0dac2c7280f8013f69e34ebce98b4a2b448bfb02","title":"How invoices are created","pathname":"/readme/finances-invoices-and-payments/how-invoices-are-created-job-driven","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"NzzrX0dimr1JHZnAhTfl","title":"Billing modes (when invoices are created)","pathname":"/readme/finances-invoices-and-payments/billing-modes","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"JlBbfmSjgpGYFZrFyWRW","title":"Pre-pay invoicing","pathname":"/readme/finances-invoices-and-payments/pre-pay-invoicing","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"5f0346a8901e8f20c4d56afa5a8b09ec481f1946","title":"Invoice statuses explained (Paid, Unpaid, Overdue, Void)","pathname":"/readme/finances-invoices-and-payments/invoice-statuses-explained-paid-unpaid-overdue","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"0b1yfn4ljXoimxBct7pL","title":"How customers pay an invoice","pathname":"/readme/finances-invoices-and-payments/how-customers-pay-an-invoice","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"c64c3e9fb40a8c7ae00dd4fff8922ca66d7ba640","title":"Mark an invoice as paid (offline payments)","pathname":"/readme/finances-invoices-and-payments/mark-an-invoice-as-paid-manual","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"13959e809d0342b7981b957029bda59bd801aed5","title":"Remind / resend an invoice","pathname":"/readme/finances-invoices-and-payments/remind-resend-an-invoice-after-24-hours","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"qTUmwGBWDERcvuOODCoD","title":"Customer email preferences and invoice delivery","pathname":"/readme/finances-invoices-and-payments/customer-email-preferences","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"60aff663784778370df6f0b40e85503fc24430da","title":"Processing fees (optional)","pathname":"/readme/finances-invoices-and-payments/processing-fees-optional","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"a0i4CsrshzUZGKEjMdkv","title":"Sales tax","pathname":"/readme/finances-invoices-and-payments/sales-tax","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"uQO6k0q4oPXqI8IzEwQ1","title":"Late fees","pathname":"/readme/finances-invoices-and-payments/late-fees","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"ZH3CdLWWjd9laUnAAsiw","title":"Refunds & credit memos","pathname":"/readme/finances-invoices-and-payments/refunds-and-credit-memos","siteSpaceId":"sitesp_k5Qzh","description":"Send money back, record a credit, reissue a QuickBooks invoice, or undo a payment you recorded by hand.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Finances (Invoices & payments)","emoji":"1f4b0"}]},{"id":"32fa50c869d83861d29cabb5413074bda96e3eb3","title":"Automations","pathname":"/readme/automations","siteSpaceId":"sitesp_k5Qzh","emoji":"1f916","description":"Automatic customer messages and follow-up work. Covers campaigns you build, Shortcut's built-in automations, and how to see exactly what each one did.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"oOZRbN3UNoMDPbkX7JGY","title":"Build and publish a campaign","pathname":"/readme/automations/build-and-publish-a-campaign","siteSpaceId":"sitesp_k5Qzh","description":"Create a campaign from a template or from scratch, choose how it starts, add steps, test it, and publish it.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Automations","emoji":"1f916"}]},{"id":"e4aa8d851c658bffb8aceffc69817864a646e0b5","title":"Templates, starts, and steps","pathname":"/readme/automations/automations-list-+-triggers-exact","siteSpaceId":"sitesp_k5Qzh","description":"Every campaign template and what it does, every event a campaign can start from, and the built-in library automations.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Automations","emoji":"1f916"}]},{"id":"qZqs4mOQnFNRrYQ1CXCv","title":"Campaign results, activity, and receipts","pathname":"/readme/automations/campaign-activity-and-receipts","siteSpaceId":"sitesp_k5Qzh","description":"Read a campaign's results, find any customer's run, open the exact message that was sent, and stop, restart, or archive a campaign.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Automations","emoji":"1f916"}]},{"id":"2lhZJxxV8QljCBmh6k3y","title":"Review requests","pathname":"/readme/automations/review-requests","siteSpaceId":"sitesp_k5Qzh","description":"Automatically ask happy customers for Google reviews — and catch unhappy feedback privately.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Automations","emoji":"1f916"}]},{"id":"92fbdc873ff8936f1bb853211c672254c7a296eb","title":"Troubleshooting: an automation didn't fire","pathname":"/readme/automations/troubleshooting-an-automation-didnt-fire","siteSpaceId":"sitesp_k5Qzh","description":"Find out exactly why a campaign or built-in automation didn't message a customer, using health, Activity, run details, and receipts.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Automations","emoji":"1f916"}]},{"id":"k9BXibmLOxIILopokhDm","title":"Chemicals","pathname":"/readme/chemical-tracking","siteSpaceId":"sitesp_k5Qzh","emoji":"1f9ea","description":"Set up chemical tracking, manage programs and products, record field applications, and export compliance history in Shortcut.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"fk6sa0whs2VRhjExx1v1","title":"Products","pathname":"/readme/products","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4e6","description":"Sell materials like mulch by the yard, plants, pavers or a sprinkler head alongside your services, with their own price, cost and tax setting, from estimate to invoice to your margins.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"O7BRiCc4YjAgPaCqaDtF","title":"Snow removal","pathname":"/readme/snow-removal","siteSpaceId":"sitesp_k5Qzh","emoji":"2744","description":"Sell snow services that wait for snow, send out everyone who is due when it falls, offer salting on call, and bill each push by the depth.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"49MJTRPyEsgcHS7CaS6i","title":"Costs & Profitability","pathname":"/readme/costs-and-profitability","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4ca","description":"Log expenses, set labor rates, and see real margins on jobs and customers.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"on5CXMdW6qvDPZkWiyhy","title":"Timesheets & Time Clock","pathname":"/readme/time-clock-and-timesheets","siteSpaceId":"sitesp_k5Qzh","emoji":"23f1","description":"Let your crew clock in and out from their phone, then review and correct the hours on Timesheets.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"dPfX8vyRMMCY1HLM2OPl","title":"Reports","pathname":"/readme/reports","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4ca","description":"Reports answers the recurring questions — where the money came from, who owes you, and the paperwork you have to file.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"O1midVnmrKANVah9heef","title":"Website","pathname":"/readme/website-builder","siteSpaceId":"sitesp_k5Qzh","emoji":"1f310","description":"A hosted marketing website for your business, built from your Shortcut data.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"aa92f17e95f83b73f470c6f859fc5a2780ee7828","title":"Customer portal","pathname":"/readme/customer-portal","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4f1","description":"A branded place for your customers to see published visits, service reports, invoices, and payments. Every customer still gets the invoice payment page, portal or not.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"783VmYOqr2lRJGxBOF30","title":"Set up the portal, invite customers, and publish visits","pathname":"/readme/customer-portal/customer-portal-set-up-invite-and-publish","siteSpaceId":"sitesp_k5Qzh","description":"Set your portal contact details, invite customers, and publish the visits and service reports you want them to see.","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Customer portal","emoji":"1f4f1"}]},{"id":"45bf396c4e642c7e9f6c8da8057fa2cb9517d5d6","title":"Worker app","pathname":"/readme/worker-app","siteSpaceId":"sitesp_k5Qzh","emoji":"1f477","description":"The Worker app is optimized for mobile and built for crews in the field.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"aa59b8061ddb9fd09c133dd27841028dbbaaeb60","title":"Worker app overview","pathname":"/readme/worker-app/worker-app-overview","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Worker app","emoji":"1f477"}]},{"id":"2e7f0d2ad9a41508078d45cc7536da94c7bf09bb","title":"Troubleshooting: worker can't see jobs","pathname":"/readme/worker-app/troubleshooting-worker-cant-see-jobs","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Worker app","emoji":"1f477"}]},{"id":"D0vPDiX0BVBoIEPV1NKB","title":"Mobile app (iPhone + Android)","pathname":"/readme/mobile-app","siteSpaceId":"sitesp_k5Qzh","emoji":"1f4f2","description":"Shortcut Field is the Shortcut app for iPhone and Android: the same account and the same screens as the web, plus push notifications, GPS check-ins, camera photos, and offline mode for crews.","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"UXfccEnXyIS4lyTdxLqV","title":"Your account","pathname":"/readme/your-account","siteSpaceId":"sitesp_k5Qzh","emoji":"1f64b","description":"","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"0005e5029a8f00d84f78c4ec58f76d7e8d561a4d","title":"Troubleshooting","pathname":"/readme/troubleshooting","siteSpaceId":"sitesp_k5Qzh","emoji":"2753","description":"","breadcrumbs":[{"label":"Shortcut Help Center"}]},{"id":"0c5dd0515d2940e5db7ef678bbb2d9eeaf01931f","title":"Troubleshooting hub (top issues)","pathname":"/readme/troubleshooting/troubleshooting-hub-top-issues","siteSpaceId":"sitesp_k5Qzh","description":"","breadcrumbs":[{"label":"Shortcut Help Center"},{"label":"Troubleshooting","emoji":"2753"}]},{"id":"KE7lzlHDBqWt4TJp8HCX","title":"Shortcut Developers","pathname":"/developers","siteSpaceId":"sitesp_oaPeh","description":"Build on Shortcut with the REST API, webhooks, and an MCP server for AI agents, all on one token and scope model."},{"id":"wvxAMYnzEUJkGCEpmju0","title":"Quickstart","pathname":"/developers/quickstart","siteSpaceId":"sitesp_oaPeh","description":"Create an API token, check it, create a lead, and see the lead in Shortcut, in about five minutes."},{"id":"rwm43EHTZzUkRPEnqARO","title":"Workspaces and tokens","pathname":"/developers/concepts/workspaces-and-tokens","siteSpaceId":"sitesp_oaPeh","description":"How a Shortcut workspace, its API tokens, and the people who create them fit together.","breadcrumbs":[{"label":"Concepts"}]},{"id":"pjE0lnhmwfUq1wdNjF2V","title":"Glossary","pathname":"/developers/concepts/glossary","siteSpaceId":"sitesp_oaPeh","description":"The objects in the Shortcut API, what each one is in the app, and how ids work.","breadcrumbs":[{"label":"Concepts"}]},{"id":"qU2QWCmazeYbIHBzruVg","title":"Scopes","pathname":"/developers/concepts/scopes","siteSpaceId":"sitesp_oaPeh","description":"Every Shortcut API scope, the presets in Settings, and what the complete, send, and trigger scopes do.","breadcrumbs":[{"label":"Concepts"}]},{"id":"rVLuaLZ0VINdcdDp315c","title":"Conventions","pathname":"/developers/concepts/conventions","siteSpaceId":"sitesp_oaPeh","description":"How every Shortcut API request and response is shaped - authentication, JSON, envelopes, pagination, dates, money, and versioning.","breadcrumbs":[{"label":"Concepts"}]},{"id":"nPotjAF2ecdTpKwqIbJD","title":"Sync","pathname":"/developers/concepts/sync","siteSpaceId":"sitesp_oaPeh","description":"Keep another system in step with Shortcut using updatedSince and createdSince, with a watermark and a five-minute overlap.","breadcrumbs":[{"label":"Concepts"}]},{"id":"JSXFjd3QLCivhOZAiLd3","title":"Idempotency, retries, and rate limits","pathname":"/developers/concepts/idempotency-and-retries","siteSpaceId":"sitesp_oaPeh","description":"Retry any write safely with Idempotency-Key or the MCP requestKey, stay inside the rate limits, and trace a request with its request id.","breadcrumbs":[{"label":"Concepts"}]},{"id":"Z0KSNv0Ebw2D7zdVftYM","title":"Errors","pathname":"/developers/concepts/errors","siteSpaceId":"sitesp_oaPeh","description":"Every Shortcut API error type and code, what causes it, and how to fix it.","breadcrumbs":[{"label":"Concepts"}]},{"id":"bbEoT7Zcn2K7FpTvgJFC","title":"API reference","pathname":"/developers/api-reference/reference","siteSpaceId":"sitesp_oaPeh","description":"The Shortcut REST API - base URL, authentication, and every object it returns. Endpoints are rendered from the OpenAPI description.","breadcrumbs":[{"label":"API reference"}]},{"id":"7Bw5uwDtw0D7SEFqjX1r","title":"Objects","pathname":"/developers/api-reference/reference/objects","siteSpaceId":"sitesp_oaPeh","description":"Every object the Shortcut API returns, each defined once with its fields, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"ro4YaszffgjT85rYrP4P","title":"The token object","pathname":"/developers/api-reference/reference/objects/token","siteSpaceId":"sitesp_oaPeh","description":"The token object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"z2KvDMTyp3xNEdf7RukQ","title":"The customer object","pathname":"/developers/api-reference/reference/objects/customer","siteSpaceId":"sitesp_oaPeh","description":"The customer object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"m0wVDuNwUAkIanBX5fzZ","title":"The property object","pathname":"/developers/api-reference/reference/objects/property","siteSpaceId":"sitesp_oaPeh","description":"The property object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"Mq6UarGz5TQpGs2G9xo5","title":"The lead object","pathname":"/developers/api-reference/reference/objects/lead","siteSpaceId":"sitesp_oaPeh","description":"The lead object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"XlNsqdLlNwHSvs4MiAz0","title":"The estimate object","pathname":"/developers/api-reference/reference/objects/estimate","siteSpaceId":"sitesp_oaPeh","description":"The estimate object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"jUydaI0QZPUN3omCasa7","title":"The estimate reminder object","pathname":"/developers/api-reference/reference/objects/estimate-reminder","siteSpaceId":"sitesp_oaPeh","description":"The estimate reminder object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"UixsDNXaHF7IbNlTB1kw","title":"The job object","pathname":"/developers/api-reference/reference/objects/job","siteSpaceId":"sitesp_oaPeh","description":"The job object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"6VlFIdzcYm4hrGw0r509","title":"The visit object","pathname":"/developers/api-reference/reference/objects/visit","siteSpaceId":"sitesp_oaPeh","description":"The visit object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"By4vxEaGuGd3x4ILfT7V","title":"The visit completion object","pathname":"/developers/api-reference/reference/objects/visit-completion","siteSpaceId":"sitesp_oaPeh","description":"The visit completion object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"iACX77T2wYRRvHMwzbn1","title":"The invoice object","pathname":"/developers/api-reference/reference/objects/invoice","siteSpaceId":"sitesp_oaPeh","description":"The invoice object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"2w6c3R5J3SL3MwAetTG9","title":"The invoice delivery object","pathname":"/developers/api-reference/reference/objects/invoice-delivery","siteSpaceId":"sitesp_oaPeh","description":"The invoice delivery object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"GNXQjqnepztTIf8gKQIL","title":"The payment object","pathname":"/developers/api-reference/reference/objects/payment","siteSpaceId":"sitesp_oaPeh","description":"The payment object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"G2gY6zKdo2onJjCZz0P2","title":"The payment reversal object","pathname":"/developers/api-reference/reference/objects/payment-reversal","siteSpaceId":"sitesp_oaPeh","description":"The payment reversal object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"o9n7Wd1ZHl0GgVkMECna","title":"The service object","pathname":"/developers/api-reference/reference/objects/service","siteSpaceId":"sitesp_oaPeh","description":"The service object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"PqEguKmpkbc2Ia7uqrNF","title":"The product object","pathname":"/developers/api-reference/reference/objects/product","siteSpaceId":"sitesp_oaPeh","description":"The product object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"ij0NYKhOamnbtubXEW9Q","title":"The tag object","pathname":"/developers/api-reference/reference/objects/tag","siteSpaceId":"sitesp_oaPeh","description":"The tag object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"6sstX95JnKZDeg6MHvUf","title":"The custom field object","pathname":"/developers/api-reference/reference/objects/custom-field","siteSpaceId":"sitesp_oaPeh","description":"The custom field object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"WK3CcC8LQjB5qLSX7Jvg","title":"The team object","pathname":"/developers/api-reference/reference/objects/team","siteSpaceId":"sitesp_oaPeh","description":"The team object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"RNIpxXd9mmJL2dRoaZGt","title":"The user object","pathname":"/developers/api-reference/reference/objects/user","siteSpaceId":"sitesp_oaPeh","description":"The user object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"jgwcvsw07PM3GS2IuizW","title":"The webhook object","pathname":"/developers/api-reference/reference/objects/webhook","siteSpaceId":"sitesp_oaPeh","description":"The webhook object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"ogcicsWEfqc6TirFiuWz","title":"The webhook delivery object","pathname":"/developers/api-reference/reference/objects/webhook-delivery","siteSpaceId":"sitesp_oaPeh","description":"The webhook delivery object in the Shortcut API - every field, an example, and the endpoints that return it.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"},{"label":"Objects"}]},{"id":"00c25749a9a6f34781588fd32ad718cfd03a8add","title":"Meta","pathname":"/developers/api-reference/reference/meta","siteSpaceId":"sitesp_oaPeh","icon":"key","description":"The token making the request and its workspace.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"2460672ff315598f6bbb02c4232de240c7bca46f","title":"Customers","pathname":"/developers/api-reference/reference/customers","siteSpaceId":"sitesp_oaPeh","icon":"users","description":"The people and businesses the workspace serves.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"87c58b2ecefa5e568679acafa19088852e39771f","title":"Properties","pathname":"/developers/api-reference/reference/properties","siteSpaceId":"sitesp_oaPeh","icon":"house","description":"Service addresses that belong to customers.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"53c34699a69e25be8c75dd99b2bf33eb4fef8f3c","title":"Leads","pathname":"/developers/api-reference/reference/leads","siteSpaceId":"sitesp_oaPeh","icon":"inbox","description":"Requests for service, from your website, ads, or another system.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"b98e01330db0e34ccec594975f27b784065df6a3","title":"Estimates","pathname":"/developers/api-reference/reference/estimates","siteSpaceId":"sitesp_oaPeh","icon":"file-signature","description":"Prices offered to a lead or customer.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"d03310553770913b8a0845e5b7533c319aac2f07","title":"Jobs","pathname":"/developers/api-reference/reference/jobs","siteSpaceId":"sitesp_oaPeh","icon":"briefcase","description":"The recurring or one-time work you sold.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"c60a1a85dd842b5b9d6212d53a0f16b72e88f697","title":"Visits","pathname":"/developers/api-reference/reference/visits","siteSpaceId":"sitesp_oaPeh","icon":"calendar-check","description":"One stop on the schedule: a job's work on one date.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"00297354e083e48400f1e04394eca740c4dca56a","title":"Invoices","pathname":"/developers/api-reference/reference/invoices","siteSpaceId":"sitesp_oaPeh","icon":"file-invoice-dollar","description":"What customers owe, and its delivery.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"75bdb83e48120f453e24d1552c0c839071f1ec39","title":"Payments","pathname":"/developers/api-reference/reference/payments","siteSpaceId":"sitesp_oaPeh","icon":"credit-card","description":"Payments against invoices.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"5cda7aae6b7666e1bf6799b832f2670c2f0151ea","title":"Services","pathname":"/developers/api-reference/reference/services","siteSpaceId":"sitesp_oaPeh","icon":"list-check","description":"The service catalog jobs and estimates are made from.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"bd5534a78b8f34baa632af430f6f9c778ee347c3","title":"Products","pathname":"/developers/api-reference/reference/products","siteSpaceId":"sitesp_oaPeh","icon":"box","description":"Products sold alongside services.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"a5282f6a686624618583a7201cd9d689954bc4b4","title":"Tags","pathname":"/developers/api-reference/reference/tags","siteSpaceId":"sitesp_oaPeh","icon":"tag","description":"Labels attached to customers and leads.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"0efaba7d35082eb3068728c42e792884da2d890f","title":"Custom fields","pathname":"/developers/api-reference/reference/custom-fields","siteSpaceId":"sitesp_oaPeh","icon":"table-list","description":"Extra fields on every customer's profile.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"d43f9ed7afe65052756338b662b11506fce9156c","title":"Teams","pathname":"/developers/api-reference/reference/teams","siteSpaceId":"sitesp_oaPeh","icon":"people-group","description":"Crews: the people who work together in the field.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"368f136c29c716b7709b6b67b0797f5b0c3a6c8e","title":"Users","pathname":"/developers/api-reference/reference/users","siteSpaceId":"sitesp_oaPeh","icon":"user","description":"Staff: company admins and employees.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"5827dc8fbadacf579dca1050ab4922e7c774e9b7","title":"Webhook subscriptions","pathname":"/developers/api-reference/reference/webhook-subscriptions","siteSpaceId":"sitesp_oaPeh","icon":"bolt","description":"Signed events sent to your HTTPS endpoint.","breadcrumbs":[{"label":"API reference"},{"label":"API reference"}]},{"id":"N8WgE5bcLcJx0zMa60dY","title":"MCP overview","pathname":"/developers/mcp/overview","siteSpaceId":"sitesp_oaPeh","description":"What the Shortcut MCP server is, how a token shapes what an agent can do, and the protocol details for building your own client.","breadcrumbs":[{"label":"MCP"}]},{"id":"1w1TNSvsOXdV71zVofvb","title":"Connect Claude","pathname":"/developers/mcp/connect-claude","siteSpaceId":"sitesp_oaPeh","description":"Connect Claude.ai, Cowork, Claude Desktop, Claude Code, or the Claude API to your Shortcut workspace by signing in, or with an API token.","breadcrumbs":[{"label":"MCP"}]},{"id":"63vhMOeBuZMh0fOJOTXu","title":"Connect Cursor and other clients","pathname":"/developers/mcp/connect-cursor-and-others","siteSpaceId":"sitesp_oaPeh","description":"Connect Cursor, VS Code, Windsurf, and your own agents to the Shortcut MCP server with an API token.","breadcrumbs":[{"label":"MCP"}]},{"id":"spfzkqLxflHuM6V9bhzn","title":"Connect ChatGPT","pathname":"/developers/mcp/connect-chatgpt","siteSpaceId":"sitesp_oaPeh","description":"Connect ChatGPT to your Shortcut workspace by signing in to Shortcut from ChatGPT.","breadcrumbs":[{"label":"MCP"}]},{"id":"thPxMObQOwYvGMxeRFAS","title":"MCP tools","pathname":"/developers/mcp/tools","siteSpaceId":"sitesp_oaPeh","description":"Every tool the Shortcut MCP server offers, with the scopes each needs, what it changes, and its arguments.","breadcrumbs":[{"label":"MCP"}]},{"id":"xMQhMTStRQHdZQ56uPd5","title":"Recipes","pathname":"/developers/mcp/recipes","siteSpaceId":"sitesp_oaPeh","description":"Prompts that work well with the Shortcut MCP server, from a read-only first session to an agent that takes in leads.","breadcrumbs":[{"label":"MCP"}]},{"id":"ZGLHLyDgrHrSEDVTzmka","title":"Webhooks","pathname":"/developers/webhooks/overview","siteSpaceId":"sitesp_oaPeh","description":"Get a signed HTTPS request the moment a customer, lead, estimate, job, visit, invoice, or payment changes in Shortcut, instead of polling.","breadcrumbs":[{"label":"Webhooks"}]},{"id":"LoWMYsphyP5VK1gUjMZ5","title":"Events","pathname":"/developers/webhooks/events","siteSpaceId":"sitesp_oaPeh","description":"Every Shortcut webhook event type, the scope it needs, exactly when it fires, and example payloads for each family.","breadcrumbs":[{"label":"Webhooks"}]},{"id":"KVdLk5fUnxdam9Qzpcyf","title":"Verify signatures","pathname":"/developers/webhooks/verify-signatures","siteSpaceId":"sitesp_oaPeh","description":"Check the Shortcut-Signature header on every webhook request, with complete examples in Node, Python, Ruby, PHP, and Go.","breadcrumbs":[{"label":"Webhooks"}]},{"id":"QXDBa1kzLeqWs7m7ykvg","title":"Retries and monitoring","pathname":"/developers/webhooks/retries-and-monitoring","siteSpaceId":"sitesp_oaPeh","description":"What Shortcut counts as delivered, when it retries, when it turns a webhook off, and how to see and resend every delivery.","breadcrumbs":[{"label":"Webhooks"}]},{"id":"cMOBdtAsqIq86VjigbZC","title":"Local development","pathname":"/developers/webhooks/local-development","siteSpaceId":"sitesp_oaPeh","description":"Receive Shortcut webhook events on your own computer while you build, through an HTTPS tunnel, and test them with test events and real changes.","breadcrumbs":[{"label":"Webhooks"}]},{"id":"DPG0lady0szWFJIogDoc","title":"Push website leads","pathname":"/developers/guides/push-website-leads","siteSpaceId":"sitesp_oaPeh","description":"Send every request from your own website's contact form to Shortcut as a lead, safely retried and never duplicated.","breadcrumbs":[{"label":"Guides"}]},{"id":"3e7Dqd4EZIFgzQqMOHET","title":"Daily schedule bot","pathname":"/developers/guides/daily-schedule-bot","siteSpaceId":"sitesp_oaPeh","description":"Post each crew's route for the day to Slack every morning with a short script and a read-only token.","breadcrumbs":[{"label":"Guides"}]},{"id":"DxFtmEsQORZS1Dm3mZjm","title":"Sync customers from your CRM","pathname":"/developers/guides/sync-customers-from-your-crm","siteSpaceId":"sitesp_oaPeh","description":"Keep customers in step between your CRM and Shortcut, keyed by your CRM's own ids, in both directions.","breadcrumbs":[{"label":"Guides"}]},{"id":"8IqXBImEkxX5rqW0lYYA","title":"Export invoices and payments to accounting","pathname":"/developers/guides/export-invoices-and-payments-to-accounting","siteSpaceId":"sitesp_oaPeh","description":"Copy Shortcut invoices, their lines, and payments into an accounting system, and keep balances current.","breadcrumbs":[{"label":"Guides"}]},{"id":"l0oVeXwH0lGmQ4sI1uQV","title":"Changelog","pathname":"/developers/resources/changelog","siteSpaceId":"sitesp_oaPeh","description":"New endpoints, fields, tools, and changes to the Shortcut API and MCP server.","breadcrumbs":[{"label":"Resources"}]}]}