{"name":"AskPay API","version":"1","rest":{"base":"https://api.askpay.co/v1","alias":"https://askpay.co/api/v1","direct":"https://us-central1-askpay.cloudfunctions.net/api/v1","docs":"https://api.askpay.co/docs","method":"POST /<operation> with a JSON body; GET is allowed for read-only operations (query string = fields)","auth":"Authorization: Bearer <api key from הגדרות → API ו-Claude>"},"mcp":{"url":"https://mcp.askpay.co","direct":"https://us-central1-askpay.cloudfunctions.net/mcp","transport":"streamable-http","auth":"Authorization: Bearer <api key>"},"openapi":"https://api.askpay.co/openapi.json","docs":"https://api.askpay.co/docs","groups":{"account":"Account and business profile (הגדרות)","payments":"Payments to suppliers (תשלום לספקים)","incoming":"Payments to receive (תשלומים לקבל)","suppliers":"Suppliers and freelancers (ספקים ופרילנסרים)","invoices":"Invoices, pay marks, categories, mails (חשבוניות)","folders":"Invoice folders and folder rules (תיקיות חשבוניות)","software":"Card-paid tools and services (תוכנות)","statements":"Monthly statements from Stripe, Mercury, Wise, BlueSnap, Upwork (דפי פירוט)","gmail":"Gmail mailboxes and invoice imports","automations":"Automations (אוטומציות)","employees":"Employees and Slack (עובדים)","team":"Team users and invites (משתמשים)","documents":"AI-filled supplier onboarding forms and signatures (חתימות מסמכים)","accountant":"Accountant folders and ZIP packages (מסמכים לרואה חשבון)","activity":"Activity log (יומן פעילות)"},"operations":[{"name":"whoami","group":"account","title":"Who am I","description":"The business and user this API key acts as, plus the key name and role. Call this first.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"getBusiness","group":"account","title":"Get business profile","description":"The full business profile: names, company id, address, notification settings, public listing, price list, document (bank) details, connected integrations, enabled apps, and the caller role.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"updateBusiness","group":"account","title":"Update business profile","description":"Update profile fields. Send only the fields to change, with the same names getBusiness returns (name, nameEn, businessName, businessNameEn, companyId, businessType, street, city, zip, notifyUploadWhatsApp, notifyUploadEmail, notifyLateInvoiceWhatsApp, notifyLateInvoiceEmail, publicListing, publicListingBy, priceList, docBankName, docBankCode, docBankBranch, docBankAccount, docBankBeneficiary, docCustomFields, myName, myNameEn).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"name":{"type":"string","description":"owner name"},"nameEn":{"type":"string","description":"owner name in English"},"businessName":{"type":"string","description":"official business name (as it appears on invoices)"},"businessNameEn":{"type":"string","description":"business name in English"},"companyId":{"type":"string","description":"ח.פ / עוסק מורשה number"},"businessType":{"type":"string","enum":["","patur","murshe","company"],"description":"עוסק פטור / עוסק מורשה / חברה"},"street":{"type":"string","description":"street and number"},"city":{"type":"string","description":"city"},"zip":{"type":"string","description":"postal code"},"notifyUploadWhatsApp":{"type":"boolean","description":"WhatsApp when a supplier finished and the payment is ready"},"notifyUploadEmail":{"type":"boolean","description":"email when a supplier finished and the payment is ready"},"notifyLateInvoiceWhatsApp":{"type":"boolean","description":"WhatsApp when an invoice is added to a paid payment"},"notifyLateInvoiceEmail":{"type":"boolean","description":"email when an invoice is added to a paid payment"},"publicListing":{"type":"boolean","description":"show the business in the public directory"},"publicListingBy":{"type":"string","enum":["name","phone","both"],"description":"what visitors can find the business by"},"priceList":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"service or product"},"amountAgorot":{"type":"integer","description":"amount in agorot (integer; 1 ILS = 100 agorot; also used for USD/EUR cents)"}},"required":["title","amountAgorot"]},"description":"the price list"},"docBankName":{"type":"string","description":"bank name for AI-filled forms"},"docBankCode":{"type":"string","description":"bank code"},"docBankBranch":{"type":"string","description":"branch"},"docBankAccount":{"type":"string","description":"account number"},"docBankBeneficiary":{"type":"string","description":"beneficiary name"},"docCustomFields":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":""},"value":{"type":"string","description":""}},"required":["label","value"]},"description":"extra label/value pairs for AI-filled forms"}}}},{"name":"setBusinessApp","group":"account","title":"Enable or disable an app","description":"חנות אפליקציות: switch one optional screen on or off. payments needs invoices. Admins only.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"app":{"type":"string","enum":["incoming","invoices","payments","software","statements","employees","documents","accountant"],"description":"the app"},"enabled":{"type":"boolean","description":"true = on"}},"required":["app","enabled"]}},{"name":"getMyPublicLink","group":"account","title":"Get the permanent request link","description":"The business standing link (askpay.co/link/<slug>): anyone opening it files a payment request themselves.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"checkPublicSlug","group":"account","title":"Check a slug","description":"Is this slug free for the permanent link?","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"slug":{"type":"string","description":"lowercase Latin letters, digits, hyphens"}},"required":["slug"]}},{"name":"setMyPublicLink","group":"account","title":"Rename the permanent link","description":"Set the slug of the permanent link (askpay.co/link/<slug>).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"slug":{"type":"string","description":"the new slug"}},"required":["slug"]}},{"name":"saveBusinessIntegration","group":"account","title":"Connect or disconnect an invoicing provider","description":"Store the API credentials of an invoicing provider (greeninvoice, icount, sumit, rivhit, ezcount…) or disconnect it with action \"disconnect\". Credentials are write-only. Admins only.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"provider":{"type":"string","description":"provider id"},"apiKey":{"type":"string","description":"the provider API key"},"apiSecret":{"type":"string","description":"the provider API secret, when it has one"},"note":{"type":"string","description":"free note"},"action":{"type":"string","enum":["disconnect"],"description":"send \"disconnect\" to remove the connection"}},"required":["provider"]}},{"name":"itaConnectStart","group":"account","title":"Start Tax Authority consent","description":"Returns the רשות המסים login URL the user must open in a browser to grant the 90-day consent used for allocation-number checks.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"itaDisconnect","group":"account","title":"Disconnect Tax Authority","description":"Forget the רשות המסים consent tokens.","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{}}},{"name":"itaVerifyAllocation","group":"account","title":"Verify an allocation number","description":"Check a payment invoice מספר הקצאה against the Tax Authority; the verdict (match / amount_mismatch / not_found) is stored on the payment.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"paymentId":{"type":"string","description":"payment id"}},"required":["paymentId"]}},{"name":"paymentsList","group":"payments","title":"List payments to suppliers","description":"Payments this business created (תשלום לספקים), newest first. Statuses: sent (link created, awaiting bank details), awaiting_invoice, ready (ready to pay), paid, canceled. Each row carries the supplier, amount, status, invoice summary and the supplier link.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"status":{"type":"string","enum":["sent","awaiting_invoice","ready","paid","canceled"],"description":"only this status"},"supplierKey":{"type":"string","description":"only this supplier (phone E.164 or email)"},"q":{"type":"string","description":"free text over supplier name, description, invoice number"},"limit":{"type":"integer","description":"rows per page (default 50, max 200)"},"offset":{"type":"integer","description":"rows to skip (default 0)"}}}},{"name":"paymentGet","group":"payments","title":"Get a payment","description":"One payment with everything on it: supplier payout details, invoice(s) with download URLs, proof of payment, ITA verdict, timestamps.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"paymentId":{"type":"string","description":"payment id"}},"required":["paymentId"]}},{"name":"createPayment","group":"payments","title":"Create a payment to a supplier","description":"Open a payment request and send the supplier a link (WhatsApp when a phone is given, email when an email is given). The supplier enters bank details and attaches the invoice; the payment turns \"ready\" for the business to pay. channel \"link\" = deliver nothing, the business passes the link itself. invoiceDocId = open the payment from an uploaded invoice (the document is copied onto the payment).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"amountAgorot":{"type":"integer","description":"amount in agorot (integer; 1 ILS = 100 agorot; also used for USD/EUR cents)"},"openAmount":{"type":"boolean","description":"true = the supplier fills in the amount (send amountAgorot 0)"},"currency":{"type":"string","enum":["ILS","USD","EUR"],"description":"currency (default ILS)"},"vatIncluded":{"type":"boolean","description":"the amount includes VAT"},"invoiceRequired":{"type":"boolean","description":"the supplier must attach an invoice before the payment turns ready (default false)"},"payMethods":{"type":"array","items":{"type":"string","enum":["bank","bit"],"description":""},"description":"payout methods the supplier may pick; omit or send both = free choice"},"description":{"type":"string","description":"what the payment is for (shown to the supplier)"},"supplierName":{"type":"string","description":"supplier name"},"supplierPhone":{"type":"string","description":"supplier phone (Israeli or E.164); phone or email is required"},"supplierEmail":{"type":"string","description":"supplier email; phone or email is required"},"channel":{"type":"string","enum":["link"],"description":"\"link\" = do not send anything"},"invoiceDocId":{"type":"string","description":"an uploaded invoice document id to attach (from invoicesList)"}},"required":["amountAgorot","vatIncluded","description","supplierName"]}},{"name":"updatePaymentSettings","group":"payments","title":"Update a payment","description":"Change a payment after sending: the invoice requirement, allowed payout methods, amount / VAT / description while unpaid, and the supplier identity, contact or channel while the supplier has not filled bank details yet.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"paymentId":{"type":"string","description":"payment id"},"invoiceRequired":{"type":"boolean","description":""},"payMethods":{"type":"array","items":{"type":"string","enum":["bank","bit"],"description":""},"description":"payout methods the supplier may pick; omit or send both = free choice"},"amountAgorot":{"type":"integer","description":"amount in agorot (integer; 1 ILS = 100 agorot; also used for USD/EUR cents)"},"currency":{"type":"string","enum":["ILS","USD","EUR"],"description":"currency (default ILS)"},"vatIncluded":{"type":"boolean","description":""},"description":{"type":"string","description":""},"supplierName":{"type":"string","description":""},"supplierPhone":{"type":"string","description":"\"\" clears the phone"},"supplierEmail":{"type":"string","description":"\"\" clears the email"},"channel":{"type":"string","enum":["wa","em","link"],"description":"wa = WhatsApp, em = email, link = self-sent"}},"required":["paymentId"]}},{"name":"resendPayment","group":"payments","title":"Resend the payment link","description":"Send the supplier link again over WhatsApp or email (the payment must carry that contact).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"paymentId":{"type":"string","description":"payment id"},"channel":{"type":"string","enum":["wa","em"],"description":"wa = WhatsApp, em = email"}},"required":["paymentId","channel"]}},{"name":"cancelPayment","group":"payments","title":"Cancel a payment","description":"Cancel a payment request. The supplier link shows it was canceled.","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"paymentId":{"type":"string","description":"payment id"}},"required":["paymentId"]}},{"name":"markPaid","group":"payments","title":"Mark a payment as paid","description":"The business paid the supplier: status becomes \"paid\" and the supplier is told. Optionally attach a proof (bank screenshot / PDF, max 5MB).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"paymentId":{"type":"string","description":"payment id"},"proof":{"type":"object","properties":{"fileName":{"type":"string","description":"file name with extension"},"mimeType":{"type":"string","description":"MIME type, e.g. application/pdf, image/jpeg, image/png"},"dataBase64":{"type":"string","description":"file body, base64 (no data: prefix)"}},"required":["fileName","mimeType","dataBase64"],"description":"optional proof of payment"}},"required":["paymentId"]}},{"name":"revertPaid","group":"payments","title":"Undo mark paid","description":"Move a paid payment back to sent / awaiting_invoice / ready.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"paymentId":{"type":"string","description":"payment id"},"status":{"type":"string","enum":["sent","awaiting_invoice","ready"],"description":"the status to return to"}},"required":["paymentId","status"]}},{"name":"listIncomingPayments","group":"incoming","title":"List payments to receive","description":"תשלומים לקבל: payments other businesses addressed to this account (by its verified phone / email), with their invoices and proofs.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"suppliersList","group":"suppliers","title":"List suppliers","description":"Every supplier and freelancer the business works with: derived from payments plus suppliers created by hand. supplierKey = phone (E.164) or email; it is the id for getSupplierContact / saveSupplierContact / invoice assignment.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"getSupplierContact","group":"suppliers","title":"Get a supplier card","description":"The business private card of a supplier: contact person, company, address, emails, its own record of the supplier bank details, notes, plus what the supplier set on their side (read-only).","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"supplierKey":{"type":"string","description":"phone E.164 or email"}},"required":["supplierKey"]}},{"name":"saveSupplierContact","group":"suppliers","title":"Save a supplier card","description":"Update the business private card of a supplier. Send only the fields to change.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"supplierKey":{"type":"string","description":"phone E.164 or email"},"kind":{"type":"string","enum":["supplier","freelancer"],"description":"tag"},"fullName":{"type":"string","description":"contact person"},"companyName":{"type":"string","description":""},"companyId":{"type":"string","description":"ח.פ / עוסק מורשה"},"address":{"type":"string","description":"street and number"},"addressCity":{"type":"string","description":""},"addressZip":{"type":"string","description":""},"phone2":{"type":"string","description":"second phone"},"personalEmail":{"type":"string","description":""},"companyEmail":{"type":"string","description":""},"bankCode":{"type":"string","description":""},"bankBranch":{"type":"string","description":""},"bankAccount":{"type":"string","description":""},"bankBeneficiary":{"type":"string","description":""},"bitPhone":{"type":"string","description":""},"notes":{"type":"string","description":""}},"required":["supplierKey"]}},{"name":"createSupplier","group":"suppliers","title":"Create a supplier","description":"Add a supplier before any payment exists. Phone or email is required and becomes the supplierKey.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"name":{"type":"string","description":"supplier name"},"phone":{"type":"string","description":"phone"},"email":{"type":"string","description":"email"},"kind":{"type":"string","enum":["supplier","freelancer"],"description":"default supplier"}},"required":["name"]}},{"name":"listManualSuppliers","group":"suppliers","title":"List hand-created suppliers","description":"Suppliers created by hand (no payment yet) and the keys of every supplier tagged as a freelancer.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"supplierSuggestionsList","group":"suppliers","title":"List supplier suggestions","description":"Issuers the AI found on uploaded invoices that are not suppliers yet (the \"הצעות\" strip on the suppliers screen).","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"supplierSuggestionsCreate","group":"suppliers","title":"Accept supplier suggestions","description":"Turn suggestions into suppliers. A suggestion without phone/email needs `contact` for it, else it is returned in needsContact.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","description":""},"description":"suggestion ids"},"contact":{"type":"object","properties":{},"description":"map of suggestion id → { phone?, email? }"},"kind":{"type":"string","enum":["supplier","freelancer"],"description":"default supplier"}},"required":["ids"]}},{"name":"supplierSuggestionsDismiss","group":"suppliers","title":"Dismiss supplier suggestions","description":"Hide suggestions.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","description":""},"description":"suggestion ids"}},"required":["ids"]}},{"name":"supplierSuggestionToSoftware","group":"suppliers","title":"Suggestion is a software","description":"\"זו תוכנה\": move a supplier suggestion with its invoices to the תוכנות screen.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"suggestion id"}},"required":["id"]}},{"name":"invoicesList","group":"invoices","title":"List invoices","description":"Invoice documents of the חשבוניות screen (uploaded by hand or imported from Gmail), newest first, with what the AI read (issuer, number, date, total, currency, pay method, card ending), folder, category and pay mark. Filters combine.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"folderId":{"type":"string","description":"only this invoice folder"},"category":{"type":"string","description":"only this category id (\"\" = uncategorized)"},"supplierKey":{"type":"string","description":"only this supplier"},"payMark":{"type":"string","enum":["unpaid","paid_card","paid_paypal","paid_transfer","paid_other","not_payable",""],"description":"how the invoice was paid; \"\" = let the AI decide"},"source":{"type":"string","enum":["gmail","upload"],"description":"where it came from"},"q":{"type":"string","description":"free text over file name, issuer, invoice number, note, mail subject"},"from":{"type":"string","description":"invoice date from, YYYY-MM-DD"},"to":{"type":"string","description":"invoice date to, YYYY-MM-DD"},"limit":{"type":"integer","description":"rows per page (default 50, max 200)"},"offset":{"type":"integer","description":"rows to skip (default 0)"}}}},{"name":"invoiceGet","group":"invoices","title":"Get an invoice","description":"One invoice document in full: the AI reading with line items and bank details, duplicates found, Gmail origin, folder, category, pay mark, download URL.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"docId":{"type":"string","description":"invoice document id"}},"required":["docId"]}},{"name":"uploadInvoiceDoc","group":"invoices","title":"Upload an invoice","description":"Store an invoice / receipt file (PDF or image). The AI reads it, checks for duplicates (skipped=true when it is already in the system; send skipDuplicates=false to store anyway), assigns the supplier when not given, and files it into a folder.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"fileName":{"type":"string","description":"file name with extension"},"mimeType":{"type":"string","description":"MIME type, e.g. application/pdf, image/jpeg, image/png"},"dataBase64":{"type":"string","description":"file body, base64 (no data: prefix)"},"supplierKey":{"type":"string","description":"assign to this supplier"},"supplierName":{"type":"string","description":"free-text supplier name when there is no key"},"note":{"type":"string","description":""},"skipDuplicates":{"type":"boolean","description":"default true"},"folderId":{"type":"string","description":"force a folder (\"\" = by rule)"}},"required":["fileName","mimeType","dataBase64"]}},{"name":"analyzeInvoice","group":"invoices","title":"Re-read an invoice with AI","description":"Run (or rerun) the AI reading on a business upload (docId) or a supplier attachment (paymentId, plus fileId for an extra document).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"docId":{"type":"string","description":"invoice document id"},"paymentId":{"type":"string","description":"payment id"},"fileId":{"type":"string","description":"extra document file id"}}}},{"name":"updateInvoiceDoc","group":"invoices","title":"Update an invoice","description":"Re-assign the supplier (\"\" clears), edit the note, or override the pay mark.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"docId":{"type":"string","description":"invoice document id"},"supplierKey":{"type":"string","description":""},"supplierName":{"type":"string","description":""},"note":{"type":"string","description":""},"payMark":{"type":"string","enum":["unpaid","paid_card","paid_paypal","paid_transfer","paid_other","not_payable",""],"description":"how the invoice was paid; \"\" = let the AI decide"}},"required":["docId"]}},{"name":"deleteInvoiceDoc","group":"invoices","title":"Delete an invoice","description":"Remove an uploaded invoice document and its file.","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"docId":{"type":"string","description":"invoice document id"}},"required":["docId"]}},{"name":"invoiceBulkPayRule","group":"invoices","title":"Mark invoices paid by card / not by card","description":"Bulk \"שולם באשראי\" / \"לא באשראי\". With remember=true the rule is saved per issuer so their next invoices are marked automatically.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"docIds":{"type":"array","items":{"type":"string","description":""},"description":"invoice document ids"},"rule":{"type":"string","enum":["card","not_card"],"description":""},"remember":{"type":"boolean","description":"save as a rule per issuer"}},"required":["docIds","rule","remember"]}},{"name":"vendorPayRuleSet","group":"invoices","title":"Set an issuer pay rule","description":"Set or forget (\"\" = forget) the \"paid by card\" rule of one issuer. key = the issuer vendorKey (vat:/email:/phone:/name:…) from vendorRulesList or an invoice.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"key":{"type":"string","description":"vendorKey"},"rule":{"type":"string","enum":["card","not_card",""],"description":""},"name":{"type":"string","description":"display name"}},"required":["key","rule"]}},{"name":"vendorRulesList","group":"invoices","title":"List issuer rules","description":"The per-issuer rules: pay rules (paid by card / not) and category rules.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"categoriesList","group":"invoices","title":"List expense categories","description":"The fixed expense categories (סיווג הוצאות) with ids and Hebrew labels.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"invoiceSetCategory","group":"invoices","title":"Set invoice categories","description":"Classify documents (\"\" = no category). With remember=true the category becomes the rule for each distinct issuer.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"docIds":{"type":"array","items":{"type":"string","description":""},"description":"invoice document ids"},"category":{"type":"string","description":"category id from categoriesList, or \"\""},"remember":{"type":"boolean","description":"save as a rule per issuer"}},"required":["docIds","category","remember"]}},{"name":"vendorCategoryRuleSet","group":"invoices","title":"Set an issuer category rule","description":"Set or forget (\"\" = forget) the category rule of one issuer.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"key":{"type":"string","description":"vendorKey"},"category":{"type":"string","description":"category id or \"\""},"name":{"type":"string","description":"display name"}},"required":["key","category"]}},{"name":"categorySync","group":"invoices","title":"Classify uncategorized invoices","description":"Classify every AI-read invoice without a category (rules first, then the AI). Call again while remaining > 0.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"mailsList","group":"invoices","title":"List scanned mails","description":"Every Gmail message a scan looked at (the מיילים view): sender, subject, date, result (imported / no_invoice / duplicate / error) and how many invoices came out.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"result":{"type":"string","enum":["processing","imported","no_invoice","duplicate","error"],"description":"only this result"},"accountId":{"type":"string","description":"only this mailbox"},"q":{"type":"string","description":"free text over sender and subject"},"limit":{"type":"integer","description":"rows per page (default 50, max 200)"},"offset":{"type":"integer","description":"rows to skip (default 0)"}}}},{"name":"gmailMailGet","group":"invoices","title":"Get a mail","description":"Headers, body (HTML) and attachment names of one scanned mail.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"seenId":{"type":"string","description":"mail id from mailsList"}},"required":["seenId"]}},{"name":"gmailMailAsInvoice","group":"invoices","title":"This mail is an invoice","description":"A mail nothing came out of: print its body to PDF, read it with the AI and file it like an attachment. rememberSender adds a folder rule for the sender.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"seenId":{"type":"string","description":"mail id from mailsList"},"rememberSender":{"type":"boolean","description":""}},"required":["seenId","rememberSender"]}},{"name":"gmailMailsBackfill","group":"invoices","title":"Backfill mail details","description":"Fill sender / subject / date on scanned mails that were stored before the מיילים view existed (40 per call; loop while remaining > 0).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"foldersList","group":"folders","title":"List invoice folders","description":"The invoice folder tree: general (כללי), petty (קופה קטנה), one per card ending, and custom folders; parentId nests them.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"folderCreate","group":"folders","title":"Create a folder","description":"Add a custom invoice folder, optionally under a parent.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"name":{"type":"string","description":"folder name"},"parentId":{"type":"string","description":"parent folder id (\"\" = top level)"}},"required":["name"]}},{"name":"folderRename","group":"folders","title":"Rename a folder","description":"Rename a folder","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"folder id"},"name":{"type":"string","description":"new name"}},"required":["id","name"]}},{"name":"folderMove","group":"folders","title":"Move a folder","description":"Re-parent a folder with everything below it (\"\" = top level).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"folder id"},"parentId":{"type":"string","description":"new parent id or \"\""}},"required":["id","parentId"]}},{"name":"folderDelete","group":"folders","title":"Delete a folder","description":"Delete a folder and every folder below it; their invoices move to moveTo (default כללי).","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"id":{"type":"string","description":"folder id"},"moveTo":{"type":"string","description":"folder id to receive the invoices"}},"required":["id"]}},{"name":"invoiceSetFolder","group":"folders","title":"Move an invoice to a folder","description":"Move one invoice by hand: a business upload (docId) or a supplier attachment (paymentId + fileId).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"folderId":{"type":"string","description":"target folder id"},"docId":{"type":"string","description":"invoice document id"},"paymentId":{"type":"string","description":"payment id"},"fileId":{"type":"string","description":"file id of the attachment"}},"required":["folderId"]}},{"name":"folderSync","group":"folders","title":"File unfoldered invoices","description":"Ensure the built-in folders exist and file a batch of unfoldered invoices by rule. Loop while remaining > 0.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"folderRulesList","group":"folders","title":"List folder rules","description":"The Gmail-filter style rules that file new invoices into folders, in priority order.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"folderRuleSave","group":"folders","title":"Create or update a folder rule","description":"Create (no id) or edit a rule. folderId \"\" is allowed only with bodyInvoice=true (a rule that only turns mail bodies into invoices). applyExisting also files what is already there.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"rule id to edit; omit to create"},"when":{"type":"object","properties":{"from":{"type":"string","description":"piece of the From header: an address, a domain or a name; \"\" = any"},"subject":{"type":"string","description":"piece of the subject; \"\" = any"},"words":{"type":"string","description":"every word (or \"quoted phrase\") must appear in the invoice text; \"\" = any"},"notWords":{"type":"string","description":"none of these words may appear; \"\" = any"},"supplier":{"type":"string","description":"piece of the issuer name, ח.פ or email as the AI read them; \"\" = any"},"amountOp":{"type":"string","enum":["","gt","lt"],"description":"compare the total: gt / lt / \"\" = no amount condition"},"amount":{"type":"number","description":"the amount for amountOp (major units, e.g. 500 = 500 ILS)"},"currency":{"type":"string","description":"ILS / USD / EUR; \"\" = any"},"docType":{"type":"string","description":"tax_invoice / tax_invoice_receipt / receipt / proforma / credit_note / other; \"\" = any"},"payMethod":{"type":"string","description":"card / paypal / bank_transfer / cash / check / other; \"\" = any"},"category":{"type":"string","description":"category id (see categoriesList); \"\" = any"},"accountId":{"type":"string","description":"Gmail mailbox id; \"\" = any"},"source":{"type":"string","enum":["","gmail","upload","supplier"],"description":"where the invoice came from; \"\" = any"}},"description":"conditions, Gmail-filter style; every set condition must hold. Send \"\" for conditions you do not use."},"folderId":{"type":"string","description":"target folder id"},"bodyInvoice":{"type":"boolean","description":"mail body is the receipt: print it to PDF and read it"},"enabled":{"type":"boolean","description":"default true"},"applyExisting":{"type":"boolean","description":"also file existing rule-placed invoices"}},"required":["when","folderId"]}},{"name":"folderRuleApply","group":"folders","title":"Apply a folder rule","description":"File the rule-placed invoices by this one rule.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"rule id"}},"required":["id"]}},{"name":"folderRuleDelete","group":"folders","title":"Delete a folder rule","description":"Delete a folder rule","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"id":{"type":"string","description":"rule id"}},"required":["id"]}},{"name":"folderRuleReorder","group":"folders","title":"Reorder folder rules","description":"Every rule id in the new order, first = highest priority.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","description":""},"description":"all rule ids"}},"required":["ids"]}},{"name":"softwareList","group":"software","title":"List software","description":"Card-paid tools and services (תוכנות) with cadence and hidden flag.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"softwareSync","group":"software","title":"Detect software from invoices","description":"Classify invoice issuers into software vs suppliers (AI). force=true re-runs even when nothing changed.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"force":{"type":"boolean","description":""}}}},{"name":"softwareUpdate","group":"software","title":"Update a software","description":"Update a software","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"software id"},"name":{"type":"string","description":""},"hidden":{"type":"boolean","description":""},"cadence":{"type":"string","enum":["auto","monthly","yearly"],"description":""}},"required":["id"]}},{"name":"softwareToSupplier","group":"software","title":"Software is a supplier","description":"\"זה ספק\": the tool becomes an open supplier suggestion with its invoices.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"software id"}},"required":["id"]}},{"name":"statementsList","group":"statements","title":"List statements","description":"דפי פירוט: every stored monthly statement (Stripe, Mercury, Wise, BlueSnap, Upwork) with its official files and download URLs, plus per-month send state.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"statementDelete","group":"statements","title":"Delete a statement","description":"Delete a statement","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"id":{"type":"string","description":"statement id"}},"required":["id"]}},{"name":"statementsSend","group":"statements","title":"Email a month package","description":"Mail the month package to the automation recipients, or to the given addresses.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"},"recipients":{"type":"array","items":{"type":"string","description":"email"},"description":"override recipients"}},"required":["month"]}},{"name":"statementsZip","group":"statements","title":"ZIP a month","description":"Build the ZIP of a month (every account, or one) and return its download URL.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"},"accountId":{"type":"string","description":"one statement account"}},"required":["month"]}},{"name":"stripeConnect","group":"statements","title":"Connect Stripe","description":"Connect a Stripe account with a restricted API key. Returns the months to pull.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"apiKey":{"type":"string","description":"Stripe restricted key (rk_…)"}},"required":["apiKey"]}},{"name":"stripeListAccounts","group":"statements","title":"List Stripe accounts","description":"List Stripe accounts","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"stripeDisconnect","group":"statements","title":"Disconnect Stripe","description":"Disconnect Stripe","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""}},"required":["accountId"]}},{"name":"stripeSync","group":"statements","title":"Pull a Stripe month","description":"Build (or rebuild) one month statement: balance summary, itemized activity, itemized payouts.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""},"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"}},"required":["accountId","month"]}},{"name":"mercuryConnect","group":"statements","title":"Connect Mercury","description":"Connect with a read-only Mercury token; every bank account becomes a row.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"token":{"type":"string","description":"Mercury API token"}},"required":["token"]}},{"name":"mercuryListAccounts","group":"statements","title":"List Mercury accounts","description":"List Mercury accounts","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"mercuryDisconnect","group":"statements","title":"Disconnect Mercury","description":"Disconnect Mercury","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""}},"required":["accountId"]}},{"name":"mercurySync","group":"statements","title":"Pull a Mercury month","description":"Fetch the bank statement PDF of one month.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""},"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"}},"required":["accountId","month"]}},{"name":"wiseConnect","group":"statements","title":"Connect Wise","description":"Connect with a personal API token; every balance (currency) becomes a row.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"token":{"type":"string","description":"Wise personal token"},"sandbox":{"type":"boolean","description":"default false"}},"required":["token"]}},{"name":"wiseListAccounts","group":"statements","title":"List Wise balances","description":"List Wise balances","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"wiseDisconnect","group":"statements","title":"Disconnect Wise","description":"Disconnect Wise","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""}},"required":["accountId"]}},{"name":"wiseSync","group":"statements","title":"Pull a Wise month","description":"Fetch the balance statement (PDF + CSV) and transfer receipts of one month.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""},"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"}},"required":["accountId","month"]}},{"name":"bluesnapConnect","group":"statements","title":"Connect BlueSnap","description":"Connect with the API user credentials.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"username":{"type":"string","description":"API user"},"password":{"type":"string","description":"API password"},"sandbox":{"type":"boolean","description":""}},"required":["username","password","sandbox"]}},{"name":"bluesnapListAccounts","group":"statements","title":"List BlueSnap merchants","description":"List BlueSnap merchants","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"bluesnapDisconnect","group":"statements","title":"Disconnect BlueSnap","description":"Disconnect BlueSnap","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""}},"required":["accountId"]}},{"name":"bluesnapSync","group":"statements","title":"Pull a BlueSnap month","description":"Fetch the payout reports of one month.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""},"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"}},"required":["accountId","month"]}},{"name":"upworkConnectStart","group":"statements","title":"Start Upwork consent","description":"Returns the Upwork OAuth URL the user must open in a browser.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"origin":{"type":"string","description":"site origin the browser returns to after consent (default https://askpay.co)"}}}},{"name":"upworkListAccounts","group":"statements","title":"List Upwork organizations","description":"configured=false means the server has no Upwork API key yet.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"upworkDisconnect","group":"statements","title":"Disconnect Upwork","description":"Disconnect Upwork","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""}},"required":["accountId"]}},{"name":"upworkSync","group":"statements","title":"Pull an Upwork month","description":"Fetch the month transactions as rows and one CSV.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""},"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"}},"required":["accountId","month"]}},{"name":"upworkTransactions","group":"statements","title":"List Upwork transactions","description":"The stored transactions of one month.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""},"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"}},"required":["accountId","month"]}},{"name":"gmailConnectStart","group":"gmail","title":"Start Gmail consent","description":"Returns the Google consent URL the user must open in a browser to connect a mailbox.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"origin":{"type":"string","description":"site origin the browser returns to after consent (default https://askpay.co)"}}}},{"name":"gmailListAccounts","group":"gmail","title":"List Gmail mailboxes","description":"Connected mailboxes with status and how many automations use each.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"gmailDisconnect","group":"gmail","title":"Disconnect a mailbox","description":"Remove the mailbox and the automations built on it.","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""}},"required":["accountId"]}},{"name":"gmailListLabels","group":"gmail","title":"List Gmail labels","description":"List Gmail labels","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""}},"required":["accountId"]}},{"name":"gmailImportCount","group":"gmail","title":"Count mails to import","description":"How many mails an import since a date would look at (nothing is read yet).","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"accountId":{"type":"string","description":""},"since":{"type":"integer","description":"unix millis"},"labelId":{"type":"string","description":"only this label"}},"required":["accountId","since"]}},{"name":"gmailImportStart","group":"gmail","title":"Import invoices from Gmail","description":"Scan the mailbox since a date, read attachments with the AI and store the invoices. Runs to completion (up to 9 minutes). importId is generated when omitted; progress is on the returned import.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"importId":{"type":"string","description":"20 lowercase letters/digits; omit to generate"},"accountId":{"type":"string","description":""},"since":{"type":"integer","description":"unix millis"},"labelId":{"type":"string","description":"only this label"}},"required":["accountId","since"]}},{"name":"gmailImportCancel","group":"gmail","title":"Cancel an import","description":"Flag a running import to stop before its next mail.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"importId":{"type":"string","description":""}},"required":["importId"]}},{"name":"automationList","group":"automations","title":"List automations","description":"Gmail invoice automations and the system statements automation, with last run results.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"automationCreate","group":"automations","title":"Create a Gmail automation","description":"Watch a mailbox (optionally one label) and import every invoice that arrives.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"type":{"type":"string","enum":["gmail_invoices"],"description":""},"name":{"type":"string","description":""},"config":{"type":"object","properties":{"accountId":{"type":"string","description":"mailbox id"},"labelId":{"type":"string","description":"label id or null"},"labelName":{"type":"string","description":"label name"}},"required":["accountId"]}},"required":["type","config"]}},{"name":"automationUpdate","group":"automations","title":"Update an automation","description":"Pause/resume, rename, or (statements automation) change recipients / onlyWhenComplete.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":""},"enabled":{"type":"boolean","description":""},"name":{"type":"string","description":""},"config":{"type":"object","properties":{"recipients":{"type":"array","items":{"type":"string","description":"email"},"description":""},"onlyWhenComplete":{"type":"boolean","description":""}}}},"required":["id"]}},{"name":"automationDelete","group":"automations","title":"Delete an automation","description":"System automations cannot be deleted, only paused.","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"id":{"type":"string","description":""}},"required":["id"]}},{"name":"automationRunNow","group":"automations","title":"Run the statements automation now","description":"Pull the closed month for every statement account and, when configured, mail the package.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":"automation id"},"month":{"type":"string","description":"month as YYYY-MM (a closed month)","pattern":"^\\d{4}-\\d{2}$"}},"required":["id"]}},{"name":"automationRuns","group":"automations","title":"List automation runs","description":"The last 30 runs of an automation, newest first.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":""}},"required":["id"]}},{"name":"employeesList","group":"employees","title":"List employees","description":"עובדים: name, email, phone, title, status, source (manual / slack).","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"employeeCreate","group":"employees","title":"Create an employee","description":"Create an employee","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"name":{"type":"string","description":""},"email":{"type":"string","description":""},"phone":{"type":"string","description":""},"title":{"type":"string","description":"job title"},"status":{"type":"string","enum":["active","inactive"],"description":""}},"required":["name"]}},{"name":"employeeUpdate","group":"employees","title":"Update an employee","description":"Send every field (the record is replaced).","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":""},"name":{"type":"string","description":""},"email":{"type":"string","description":""},"phone":{"type":"string","description":""},"title":{"type":"string","description":""},"status":{"type":"string","enum":["active","inactive"],"description":""}},"required":["id","name"]}},{"name":"employeeDelete","group":"employees","title":"Delete an employee","description":"Delete an employee","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"id":{"type":"string","description":""}},"required":["id"]}},{"name":"slackConnectStart","group":"employees","title":"Start Slack consent","description":"Returns the Slack OAuth URL the user must open in a browser.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"origin":{"type":"string","description":"site origin the browser returns to after consent (default https://askpay.co)"},"returnView":{"type":"string","enum":["employees","integrations"],"description":"dashboard screen to return to"}}}},{"name":"slackStatus","group":"employees","title":"Slack status","description":"Slack status","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"slackDisconnect","group":"employees","title":"Disconnect Slack","description":"Disconnect Slack","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{}}},{"name":"slackListUsers","group":"employees","title":"List Slack users","description":"Workspace members, flagged when already imported.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"slackImportUsers","group":"employees","title":"Import Slack users as employees","description":"Import Slack users as employees","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","description":"Slack user id"},"description":""}},"required":["ids"]}},{"name":"listTeam","group":"team","title":"List team users","description":"Members with roles and pending invites.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"inviteMember","group":"team","title":"Invite a user","description":"Email an invite link (7 days). Admins only.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"email":{"type":"string","description":""},"role":{"type":"string","enum":["admin","user"],"description":""}},"required":["email","role"]}},{"name":"updateMemberRole","group":"team","title":"Change a user role","description":"Admins only.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"email":{"type":"string","description":""},"role":{"type":"string","enum":["admin","user"],"description":""}},"required":["email","role"]}},{"name":"removeMember","group":"team","title":"Remove a user","description":"Immediate lockout. Admins only.","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"email":{"type":"string","description":""}},"required":["email"]}},{"name":"revokeInvite","group":"team","title":"Revoke an invite","description":"Revoke an invite","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"inviteId":{"type":"string","description":""}},"required":["inviteId"]}},{"name":"resendInvite","group":"team","title":"Resend an invite","description":"The old link is revoked and a fresh 7-day link is emailed.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"inviteId":{"type":"string","description":""}},"required":["inviteId"]}},{"name":"listSignupDocs","group":"documents","title":"List filled documents","description":"Supplier onboarding forms uploaded for AI filling, with download ids.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"analyzeSignupDoc","group":"documents","title":"Analyze a form","description":"Upload a PDF/DOCX form; the AI finds the blanks and suggests values from the business profile. Pass docId alone to re-analyze a stored one.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"fileName":{"type":"string","description":""},"mimeType":{"type":"string","description":""},"dataBase64":{"type":"string","description":""},"docId":{"type":"string","description":"re-analyze this stored document"}}}},{"name":"generateSignupDoc","group":"documents","title":"Fill a form","description":"Write the reviewed values (plus signature / stamp / initials) into the document and return the filled file id.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"docId":{"type":"string","description":""},"fields":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":""},"value":{"type":"string","description":""},"kind":{"type":"string","enum":["text","date","signature","stamp","checkbox"],"description":""},"page":{"type":"integer","description":"PDF page, 0-based"},"box":{"type":"array","items":{"type":"number","description":""},"description":"[ymin,xmin,ymax,xmax] 0-1000"}},"required":["label","value","kind"]},"description":"the fields from analyzeSignupDoc with final values"},"withSignature":{"type":"boolean","description":""},"withStamp":{"type":"boolean","description":""},"withInitials":{"type":"boolean","description":"PDF only"}},"required":["docId","fields","withSignature","withStamp"]}},{"name":"getSignupDocFields","group":"documents","title":"Get stored form fields","description":"Get stored form fields","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"docId":{"type":"string","description":""}},"required":["docId"]}},{"name":"deleteSignupDoc","group":"documents","title":"Delete a document","description":"Delete a document","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"docId":{"type":"string","description":""}},"required":["docId"]}},{"name":"accountantFoldersList","group":"accountant","title":"List accountant folders","description":"The smart folder tree for the accountant; each folder has a source rule (invoices / statements / proofs / signed) or none.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"accFolderCreate","group":"accountant","title":"Create an accountant folder","description":"Create an accountant folder","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"name":{"type":"string","description":""},"parentId":{"type":"string","description":"\"\" = top level"},"source":{"type":"object","properties":{"kind":{"type":"string","enum":["invoices","statements","proofs","signed"],"description":"what the folder collects"},"folderIds":{"type":"array","items":{"type":"string","description":""},"description":"invoices: only these invoice folders (empty = all)"},"payMethods":{"type":"array","items":{"type":"string","enum":["card","paypal","bank_transfer","cash","check","other","unknown"],"description":""},"description":"invoices: only these pay methods (empty = all)"},"accountIds":{"type":"array","items":{"type":"string","description":""},"description":"statements: only these statement accounts (empty = all)"}},"required":["kind"],"description":"the source rule of an accountant folder; null = a plain folder"}},"required":["name"]}},{"name":"accFolderRename","group":"accountant","title":"Rename an accountant folder","description":"Rename an accountant folder","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":""},"name":{"type":"string","description":""}},"required":["id","name"]}},{"name":"accFolderSetSource","group":"accountant","title":"Set a folder source","description":"Send source null for a plain folder.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":""},"source":{"type":"object","properties":{"kind":{"type":"string","enum":["invoices","statements","proofs","signed"],"description":"what the folder collects"},"folderIds":{"type":"array","items":{"type":"string","description":""},"description":"invoices: only these invoice folders (empty = all)"},"payMethods":{"type":"array","items":{"type":"string","enum":["card","paypal","bank_transfer","cash","check","other","unknown"],"description":""},"description":"invoices: only these pay methods (empty = all)"},"accountIds":{"type":"array","items":{"type":"string","description":""},"description":"statements: only these statement accounts (empty = all)"}},"required":["kind"],"description":"the source rule of an accountant folder; null = a plain folder"}},"required":["id"]}},{"name":"accFolderMove","group":"accountant","title":"Move an accountant folder","description":"Move an accountant folder","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"id":{"type":"string","description":""},"parentId":{"type":"string","description":"\"\" = top level"}},"required":["id","parentId"]}},{"name":"accFolderDelete","group":"accountant","title":"Delete an accountant folder","description":"Removes the folder and everything below it (files are never stored there, nothing else is lost).","readOnly":false,"dangerous":true,"input":{"type":"object","properties":{"id":{"type":"string","description":""}},"required":["id"]}},{"name":"accFolderTemplate","group":"accountant","title":"Build the recommended tree","description":"Create the recommended folders from what the business has; adds only what is missing.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{}}},{"name":"accZip","group":"accountant","title":"ZIP for the accountant","description":"The whole tree (or one folder down) as one ZIP, optionally limited to a range of months. Returns a download URL.","readOnly":false,"dangerous":false,"input":{"type":"object","properties":{"folderId":{"type":"string","description":"one folder; omit for the whole tree"},"from":{"type":"string","description":"YYYY-MM"},"to":{"type":"string","description":"YYYY-MM"}}}},{"name":"listActivity","group":"activity","title":"List activity","description":"יומן פעילות, newest first, 60 per page; pass before = the `at` of the last row to page on.","readOnly":true,"dangerous":false,"input":{"type":"object","properties":{"before":{"type":"integer","description":"unix millis of the last row seen"}}}}]}