Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted just now
teppi

Server definition

Hash
sha256:785bbd4265123accceefd3174c82897e5d24a25811f155df29e429b85d828c28
What it is
What a remote MCP server returned when asked what it offers: 9 tools

The blob, as servednamed by its sha256

{ "instructions": "# Aggregate billing operations with InvoiceVista\n\nUse the InvoiceVista MCP connector only after the user connects InvoiceVista\nand authorizes the intended organization. If OAuth fails, ask them to connect\nInvoiceVista. Never request, embed, repeat or infer an API key, password, OAuth\ntoken, payment credential, bank detail, processor id or webhook secret.\n\n## Read-only boundary\n\nEvery tool is read-only, idempotent, tenant-scoped and closed-world. The\nconnector cannot create, edit, delete, send, charge, retry, refund, settle,\ntransfer or otherwise move money. It cannot contact customers or give an\nindividualized financial decision. Direct the authorized operator to\nInvoiceVista's first-party controls for changes and to a qualified professional\nfor advice.\n\n## Identifier and tenant handling\n\nOnly owned business ids are public chaining identifiers. Resolve one with\n`list_businesses`, then reuse that exact id for summaries, catalog and plan.\nNever guess an id or treat an opaque id as authority; the InvoiceVista API\nrechecks OAuth product, scope, live user membership and organization on every\nrequest. A cross-tenant id returns not found or an authorization error.\n\nProduct rows and subscription results deliberately have no persisted record\nids because none is needed for another connector tool.\n\n## Available tools\n\n| Tool | Use it when someone asks… |\n| ---------------------------- | ---------------------------------------------------------------------------------------- |\n| `list_businesses` | which businesses they invoice from; also resolves the business ID every other tool needs |\n| `get_business` | about one business's currency, country, language or timezone |\n| `get_revenue_summary` | how much was invoiced or paid in a period (at most 366 UTC days, drafts skipped) |\n| `get_receivables_summary` | what customers owe, what is overdue and how old unpaid invoices are |\n| `get_quote_pipeline_summary` | how many quotes were sent, their value and how many were accepted (at most 366 days) |\n| `list_products` | what the business sells and at what price |\n| `get_subscription` | which InvoiceVista plan the business is on and its limits |\n| `show_business_overview` | for a one-card overview of one business |\n\n`list_businesses` and `list_products` accept at most 100 rows and return an\nopaque cursor. Do not claim completeness when `hasMore` is true.\n`show_business_overview` caps customer/invoice/payment/quote counts at 100 and\nthe product preview at 12; report each lower-bound flag. Aggregate summary\nsources cap at 500 _after_ tenant and requested-date filtering; report\n`*IsLowerBound` and `amountMissingCount` rather than treating a partial total as\ncomplete.\n\n## Customer and financial-data boundary\n\nSafe outputs can contain:\n\n- owned business id/name, currency, country, locale and timezone;\n- aggregate customer/invoice/payment/quote/product counts and status counts;\n- bounded UTC date range and as-of calendar day;\n- signed aggregate invoice, payment, quote, outstanding and overdue amounts;\n- aggregate age buckets, source/missing/lower-bound flags and optional rates;\n- product catalog name, price and tax; and\n- subscription plan name/status/frequency and quota limits.\n\nThe connector never exposes:\n\n- customer names/ids, email, phone, address, tax/government identifiers or\n profiles;\n- individual invoice/payment/quote ids, numbers, status, exact date/time,\n value, customer linkage or document body;\n- notes, line item names/descriptions, arbitrary search or metadata;\n- cardholder, bank account, processor/customer, settlement, credential,\n webhook, error/debug or secret data; or\n- any money-transfer, charge, refund, retry, settlement, record write or\n financial-advice capability.\n\nDo not ask users to paste excluded data into chat or infer a customer from an\naggregate. Offer a safe aggregate/catalog/plan read or the first-party\nInvoiceVista dashboard.\n\n## Revenue workflow\n\n1. Use `list_businesses` unless the exact owned business id is already known.\n2. Call `get_business` for currency/timezone context.\n3. Call `get_revenue_summary` with explicit inclusive `YYYY-MM-DD` UTC dates\n when the user names a period; the maximum is 366 days. With no range, it\n defaults to the 90 days ending today.\n4. Distinguish non-draft invoice production from recorded payments. Do not\n call either recognized revenue or independent bank settlement. Payment\n totals include every payment recorded in the range, whatever its status.\n5. Collection rate is null when source rows are truncated, numeric values are\n missing or invoice production is zero. Never calculate a definitive rate\n from incomplete aggregates.\n6. Signed negative values may represent adjustments/refunds. Describe the\n recorded aggregate; do not infer cause or provide advice.\n\nThe revenue summary MCP App renders the same aggregate output and invoice\nstatus mix; it receives no individual records.\n\n## Receivables workflow\n\n1. Call `get_receivables_summary` for open/overdue counts, signed amounts and\n age buckets as of the returned UTC day.\n2. Report `sourceInvoiceCountIsLowerBound` before discussing completeness.\n3. Explain `partiallyPaidCountExcludedFromAmount`: InvoiceVista does not store\n remaining balance, so including the full invoice would overstate debt.\n The overdue count covers invoices whose status is `OVERDUE`; a pending\n invoice past its due date shows up in the age buckets only.\n4. Use age buckets only as aggregate operational groupings. No customer or\n individual invoice can be resolved.\n5. Do not recommend collection action against a person, extend/deny credit or\n initiate a charge.\n\n## Quote, catalog and plan workflow\n\nUse `get_quote_pipeline_summary` with an explicit bounded period. Draft quotes\nare omitted. Acceptance rate uses approved versus rejected decisions and is\nnull when the source is truncated or no decision exists. Do not describe\npending value as guaranteed revenue.\n\nUse `list_products` only after resolving a business. Catalog names are\noperator-provided product labels, not line descriptions from a customer\ndocument. Prices/tax are configuration and need not equal a final charge;\n`tax` is the product's stored tax value and is null when none was set.\n\nUse `get_subscription` for InvoiceVista plan capacity. A business with no\nactive/past-due persisted plan receives documented Free defaults. It never\nreturns subscription, processor product/price or payment-method ids.\n\n## Aggregate overview\n\n`show_business_overview` is the broad first safe check. It displays business\nconfiguration, aggregate counts/status counts and product preview. It does not\ndisplay individual financial dates, amounts or identifiers. Follow with the\nspecific aggregate summary rather than trying to reconstruct records from\ncounts.\n\n## Safe fallbacks\n\n- Customer or individual document request: say the connector intentionally has\n no such tool; offer aggregate status/value counts or the first-party app.\n- Card/bank/processor/credential request: do not call a tool; explain those\n fields never enter connector output.\n- Charge/refund/retry/settle/transfer/write request: explain all tools are\n read-only; do not pretend a read changed state.\n- Financial advice or customer targeting: do not use aggregates to recommend\n an individualized decision; offer factual aggregate reporting only.\n- Unrelated task: do not invoke InvoiceVista.\n\n## Interactive workspace\n\nWhen the user wants to open InvoiceVista Invoice Maker or browse visually, call `open_invoicevista` with no arguments. It opens a read-only sidebar of up to 100 businesses with explicit truncation. Select a business for its aggregate overview, revenue, receivables and quote pipeline. Existing individual customer and document restrictions still apply.\n", "tools": [ { "description": "Use this when someone asks about one business's invoicing setup, such as its currency, country, language or timezone. Returns the business's name, currency, country code, language and timezone, or not-found. Not for revenue or unpaid invoices.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "businessId": { "description": "Business id: 24 lowercase hexadecimal characters", "pattern": "^[0-9a-f]{24}$", "type": "string" } }, "required": [ "businessId" ], "type": "object" }, "name": "get_business", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "business": { "anyOf": [ { "additionalProperties": false, "properties": { "countryCode": { "anyOf": [ { "pattern": "^[A-Z]{2}$", "type": "string" }, { "type": "null" } ] }, "currency": { "anyOf": [ { "pattern": "^[A-Z]{3}$", "type": "string" }, { "type": "null" } ], "description": "ISO 4217 alpha-3 business currency, or null when unset" }, "id": { "pattern": "^[0-9a-f]{24}$", "type": "string" }, "locale": { "anyOf": [ { "maxLength": 35, "type": "string" }, { "type": "null" } ] }, "name": { "maxLength": 200, "type": "string" }, "timezone": { "anyOf": [ { "maxLength": 64, "type": "string" }, { "type": "null" } ] } }, "required": [ "id", "name", "currency", "countryCode", "locale", "timezone" ], "type": "object" }, { "type": "null" } ], "description": "Null when not found. Contact, legal-entity, address, banking and integration fields are omitted." }, "status": { "enum": [ "found", "not-found" ], "type": "string" } }, "required": [ "status", "business" ], "type": "object" } }, { "description": "Use this when someone asks how many quotes or estimates they sent, what they were worth, or how many were accepted or rejected. Returns quote count, total value, counts by status and an acceptance rate; defaults to the last 90 days, at most 366, skipping drafts and counting at most 500 quotes. Not for a single quote.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "businessId": { "description": "Business id: 24 lowercase hexadecimal characters", "pattern": "^[0-9a-f]{24}$", "type": "string" }, "endDate": { "description": "Last UTC day to include, YYYY-MM-DD, at most 366 days after startDate; defaults to today", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "startDate": { "description": "First UTC day to include, YYYY-MM-DD; defaults to 89 days before endDate (a 90-day window)", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } }, "required": [ "businessId" ], "type": "object" }, "name": "get_quote_pipeline_summary", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "acceptanceRatePercent": { "anyOf": [ { "minimum": 0, "type": "number" }, { "type": "null" } ], "description": "Approved quotes as a percentage of approved plus rejected; null when the count is a lower bound or none was decided" }, "amountMissingCount": { "minimum": 0, "type": "integer" }, "currency": { "anyOf": [ { "pattern": "^[A-Z]{3}$", "type": "string" }, { "type": "null" } ], "description": "ISO 4217 alpha-3 business currency, or null when unset" }, "quoteCount": { "minimum": 0, "type": "integer" }, "quoteCountIsLowerBound": { "type": "boolean" }, "quotedAmount": { "type": "number" }, "range": { "additionalProperties": false, "properties": { "endDate": { "$ref": "#/properties/range/properties/startDate" }, "startDate": { "description": "UTC calendar date in YYYY-MM-DD format", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } }, "required": [ "startDate", "endDate" ], "type": "object" }, "statusBreakdown": { "description": "Non-draft quotes issued in the range, per status, with count and amount. Quote and customer identifiers, contacts, tax ids, addresses, notes, line descriptions and free text are never returned.", "items": { "additionalProperties": false, "properties": { "amount": { "type": "number" }, "amountMissingCount": { "minimum": 0, "type": "integer" }, "count": { "minimum": 0, "type": "integer" }, "status": { "enum": [ "DRAFT", "PENDING", "REJECTED", "APPROVED", "UNKNOWN", "OTHER" ], "type": "string" } }, "required": [ "status", "count", "amount", "amountMissingCount" ], "type": "object" }, "maxItems": 6, "type": "array" } }, "required": [ "range", "currency", "quoteCount", "quoteCountIsLowerBound", "quotedAmount", "amountMissingCount", "acceptanceRatePercent", "statusBreakdown" ], "type": "object" } }, { "description": "Use this when someone asks how much customers owe, what is unpaid or overdue, or how old unpaid invoices are. Returns open invoice count and amount, the invoices marked overdue, and age buckets by days past due, from the newest 500 invoices; partially paid ones are counted but left out of amounts. Not for chasing or charging a customer.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "businessId": { "description": "Business id: 24 lowercase hexadecimal characters", "pattern": "^[0-9a-f]{24}$", "type": "string" } }, "required": [ "businessId" ], "type": "object" }, "name": "get_receivables_summary", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "aging": { "description": "Fully owed open invoices by days past their due date (issue date when none) as of asOfDate. Invoice and customer identifiers, exact dates, contacts, tax ids, addresses, notes, line text, bank or card data, processor data and payment actions are never returned.", "items": { "additionalProperties": false, "properties": { "amount": { "type": "number" }, "amountMissingCount": { "minimum": 0, "type": "integer" }, "bucket": { "enum": [ "not-due", "0-30", "31-60", "61-90", "90+" ], "type": "string" }, "count": { "minimum": 0, "type": "integer" } }, "required": [ "bucket", "count", "amount", "amountMissingCount" ], "type": "object" }, "maxItems": 5, "type": "array" }, "amountMissingCount": { "minimum": 0, "type": "integer" }, "asOfDate": { "description": "UTC calendar date in YYYY-MM-DD format", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "currency": { "anyOf": [ { "pattern": "^[A-Z]{3}$", "type": "string" }, { "type": "null" } ], "description": "ISO 4217 alpha-3 business currency, or null when unset" }, "openInvoiceCount": { "minimum": 0, "type": "integer" }, "outstandingAmount": { "type": "number" }, "overdueAmount": { "type": "number" }, "overdueInvoiceCount": { "description": "Fully owed invoices whose status is OVERDUE; a PENDING invoice past its due date is counted only in aging", "minimum": 0, "type": "integer" }, "partiallyPaidCountExcludedFromAmount": { "description": "Open partially paid invoices left out of every amount because their remaining balance is not stored", "minimum": 0, "type": "integer" }, "sourceInvoiceCount": { "minimum": 0, "type": "integer" }, "sourceInvoiceCountIsLowerBound": { "type": "boolean" } }, "required": [ "asOfDate", "currency", "sourceInvoiceCount", "sourceInvoiceCountIsLowerBound", "openInvoiceCount", "outstandingAmount", "amountMissingCount", "partiallyPaidCountExcludedFromAmount", "overdueInvoiceCount", "overdueAmount", "aging" ], "type": "object" } }, { "description": "Use this when someone asks how much they invoiced or were paid in a period, like last month. Returns invoice and payment counts and totals in the business currency, invoices by status and a collection rate; defaults to the last 90 days, at most 366, skipping drafts and counting at most 500 documents. Not for a single invoice or customer.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "businessId": { "description": "Business id: 24 lowercase hexadecimal characters", "pattern": "^[0-9a-f]{24}$", "type": "string" }, "endDate": { "description": "Last UTC day to include, YYYY-MM-DD, at most 366 days after startDate; defaults to today", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "startDate": { "description": "First UTC day to include, YYYY-MM-DD; defaults to 89 days before endDate (a 90-day window)", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } }, "required": [ "businessId" ], "type": "object" }, "name": "get_revenue_summary", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "collectedAmount": { "description": "Sum of the payments recorded in the range, whatever their status; not proof of bank settlement", "type": "number" }, "collectionRatePercent": { "description": "collectedAmount as a percentage of invoicedAmount; null when a total is incomplete or nothing was invoiced", "type": [ "number", "null" ] }, "currency": { "anyOf": [ { "pattern": "^[A-Z]{3}$", "type": "string" }, { "type": "null" } ], "description": "ISO 4217 alpha-3 business currency, or null when unset" }, "invoiceAmountMissingCount": { "minimum": 0, "type": "integer" }, "invoiceCount": { "minimum": 0, "type": "integer" }, "invoiceCountIsLowerBound": { "type": "boolean" }, "invoiceStatusBreakdown": { "description": "Non-draft invoices issued in the range, per status, with count and amount. Aggregates only: invoice, payment, customer, line-item, processor, card, bank, note and identifier data are never returned.", "items": { "additionalProperties": false, "properties": { "amount": { "type": "number" }, "amountMissingCount": { "minimum": 0, "type": "integer" }, "count": { "minimum": 0, "type": "integer" }, "status": { "enum": [ "DRAFT", "PENDING", "PARTIALLY_PAID", "PAID", "OVERDUE", "REFUNDED", "UNCOLLECTIBLE", "UNKNOWN", "OTHER" ], "type": "string" } }, "required": [ "status", "count", "amount", "amountMissingCount" ], "type": "object" }, "maxItems": 9, "type": "array" }, "invoicedAmount": { "type": "number" }, "paymentAmountMissingCount": { "minimum": 0, "type": "integer" }, "paymentCount": { "minimum": 0, "type": "integer" }, "paymentCountIsLowerBound": { "type": "boolean" }, "range": { "additionalProperties": false, "properties": { "endDate": { "$ref": "#/properties/range/properties/startDate" }, "startDate": { "description": "UTC calendar date in YYYY-MM-DD format", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } }, "required": [ "startDate", "endDate" ], "type": "object" } }, "required": [ "range", "currency", "invoiceCount", "invoiceCountIsLowerBound", "invoicedAmount", "invoiceAmountMissingCount", "invoiceStatusBreakdown", "paymentCount", "paymentCountIsLowerBound", "collectedAmount", "paymentAmountMissingCount", "collectionRatePercent" ], "type": "object" } }, { "description": "Use this when someone asks which InvoiceVista plan a business is on, or how many customers, invoices or users it allows. Returns the active or past-due plan's name, status, billing frequency and limits, or the Free plan's defaults when there is none. Not for customer invoices or payments.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "businessId": { "description": "Business id: 24 lowercase hexadecimal characters", "pattern": "^[0-9a-f]{24}$", "type": "string" } }, "required": [ "businessId" ], "type": "object" }, "name": "get_subscription", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "status": { "enum": [ "found", "not-found" ], "type": "string" }, "subscription": { "anyOf": [ { "additionalProperties": false, "properties": { "billingFrequency": { "anyOf": [ { "enum": [ "MONTHLY", "YEARLY" ], "type": "string" }, { "type": "null" } ] }, "maxNumberOfCustomers": { "type": [ "number", "null" ] }, "maxNumberOfInvoices": { "type": [ "number", "null" ] }, "maxNumberOfUsers": { "type": [ "number", "null" ] }, "productName": { "anyOf": [ { "maxLength": 200, "type": "string" }, { "type": "null" } ] }, "status": { "anyOf": [ { "enum": [ "ACTIVE", "PAST_DUE", "CANCELED" ], "type": "string" }, { "type": "null" } ] } }, "required": [ "status", "productName", "billingFrequency", "maxNumberOfCustomers", "maxNumberOfInvoices", "maxNumberOfUsers" ], "type": "object" }, { "type": "null" } ], "description": "Plan entitlements; limits are caps, not usage. Payment-processor identifiers and credentials are never returned." } }, "required": [ "status", "subscription" ], "type": "object" } }, { "description": "Use this when someone asks which businesses they invoice from in InvoiceVista, or a business's id is needed. Returns each business's id, name, currency, country, language and timezone, 25 per page by default (no addresses or bank details). Not for listing customers.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "cursor": { "description": "The nextCursor of the previous page of this listing; absent for the first page", "maxLength": 4096, "type": "string" }, "limit": { "description": "Businesses per page, from 1 to 100; defaults to 25", "exclusiveMinimum": 0, "maximum": 100, "type": "integer" } }, "type": "object" }, "name": "list_businesses", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "hasMore": { "type": "boolean" }, "items": { "description": "Businesses in the signed-in organization. Addresses, contact details, payment settings and secrets are omitted.", "items": { "additionalProperties": false, "properties": { "countryCode": { "anyOf": [ { "pattern": "^[A-Z]{2}$", "type": "string" }, { "type": "null" } ] }, "currency": { "anyOf": [ { "pattern": "^[A-Z]{3}$", "type": "string" }, { "type": "null" } ], "description": "ISO 4217 alpha-3 business currency, or null when unset" }, "id": { "pattern": "^[0-9a-f]{24}$", "type": "string" }, "locale": { "anyOf": [ { "maxLength": 35, "type": "string" }, { "type": "null" } ] }, "name": { "maxLength": 200, "type": "string" }, "timezone": { "anyOf": [ { "maxLength": 64, "type": "string" }, { "type": "null" } ] } }, "required": [ "id", "name", "currency", "countryCode", "locale", "timezone" ], "type": "object" }, "maxItems": 100, "type": "array" }, "nextCursor": { "description": "Cursor for the next page; absent on the last page", "maxLength": 4096, "type": "string" } }, "required": [ "items", "hasMore" ], "type": "object" } }, { "description": "Use this when someone asks what products or services a business sells or what it charges for them. Returns each catalog item's name, price and stored tax value, most recently edited first, 25 per page by default. Not for what a customer was invoiced.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "businessId": { "description": "Business id: 24 lowercase hexadecimal characters", "pattern": "^[0-9a-f]{24}$", "type": "string" }, "cursor": { "description": "The nextCursor of the previous page of this listing; absent for the first page", "maxLength": 4096, "type": "string" }, "limit": { "description": "Products per page, from 1 to 100; defaults to 25", "exclusiveMinimum": 0, "maximum": 100, "type": "integer" } }, "required": [ "businessId" ], "type": "object" }, "name": "list_products", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "hasMore": { "type": "boolean" }, "items": { "description": "Catalog items, most recently edited first. price is in the business currency; tax is the product's stored tax value, null when unset. Record identifiers, line-item text and customer data are excluded.", "items": { "additionalProperties": false, "properties": { "name": { "maxLength": 200, "type": "string" }, "price": { "type": [ "number", "null" ] }, "tax": { "type": [ "number", "null" ] } }, "required": [ "name", "price", "tax" ], "type": "object" }, "maxItems": 100, "type": "array" }, "nextCursor": { "description": "Cursor for the next page; absent on the last page", "maxLength": 4096, "type": "string" } }, "required": [ "items", "hasMore" ], "type": "object" } }, { "description": "Open InvoiceVista Invoice Maker to browse your businesses, aggregate billing overview, revenue, receivables and quote pipeline interactively. Starts with up to 100 businesses. Read-only; no customer or individual financial records and no invoice creation or payment actions.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "open_invoicevista", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { "items": { "items": { "additionalProperties": false, "properties": { "defaultLocale": { "anyOf": [ { "maxLength": 32, "type": "string" }, { "type": "null" } ] }, "id": { "anyOf": [ { "maxLength": 200, "type": "string" }, { "type": "null" } ] }, "locales": { "items": { "maxLength": 32, "type": "string" }, "maxItems": 100, "type": "array" }, "logoUrl": { "anyOf": [ { "maxLength": 2048, "type": "string" }, { "type": "null" } ] }, "name": { "maxLength": 200, "type": "string" }, "subtitle": { "maxLength": 300, "type": "string" } }, "required": [ "id", "name", "subtitle", "logoUrl", "defaultLocale", "locales" ], "type": "object" }, "maxItems": 100, "type": "array" }, "truncated": { "type": "boolean" } }, "required": [ "items", "truncated" ], "type": "object" } }, { "description": "Use this when someone wants a quick overview or dashboard of one business in InvoiceVista. Returns an overview card with the business details, counts of customers, invoices, payments and quotes with status mixes (each capped at 100), and up to 12 catalog products (no customer or invoice details). Not for revenue over a period.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "businessId": { "description": "Business id: 24 lowercase hexadecimal characters", "pattern": "^[0-9a-f]{24}$", "type": "string" } }, "required": [ "businessId" ], "type": "object" }, "name": "show_business_overview", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { "business": { "anyOf": [ { "additionalProperties": false, "properties": { "countryCode": { "anyOf": [ { "pattern": "^[A-Z]{2}$", "type": "string" }, { "type": "null" } ] }, "currency": { "anyOf": [ { "pattern": "^[A-Z]{3}$", "type": "string" }, { "type": "null" } ] }, "defaultLocale": { "anyOf": [ { "maxLength": 35, "type": "string" }, { "type": "null" } ] }, "id": { "pattern": "^[0-9a-f]{24}$", "type": "string" }, "name": { "maxLength": 200, "type": "string" }, "timezone": { "anyOf": [ { "maxLength": 64, "type": "string" }, { "type": "null" } ] } }, "required": [ "id", "name", "currency", "countryCode", "defaultLocale", "timezone" ], "type": "object" }, { "type": "null" } ], "description": "Null when not found. Individual customer or financial records, identifiers, numbers, exact dates or amounts, contacts, tax ids, addresses, notes, line descriptions, PCI or bank data, processor data, credentials and payment actions are never returned." }, "customerCount": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "customerCountIsLowerBound": { "type": "boolean" }, "invoiceCount": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "invoiceCountIsLowerBound": { "type": "boolean" }, "invoiceStatusBreakdown": { "items": { "additionalProperties": false, "properties": { "count": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "status": { "enum": [ "DRAFT", "PENDING", "PARTIALLY_PAID", "PAID", "OVERDUE", "REFUNDED", "UNCOLLECTIBLE", "OTHER" ], "type": "string" } }, "required": [ "status", "count" ], "type": "object" }, "maxItems": 8, "type": "array" }, "paymentCount": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "paymentCountIsLowerBound": { "type": "boolean" }, "productCount": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "productCountIsLowerBound": { "type": "boolean" }, "products": { "items": { "additionalProperties": false, "properties": { "name": { "maxLength": 200, "type": "string" }, "price": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "tax": { "anyOf": [ { "type": "number" }, { "type": "null" } ] } }, "required": [ "name", "price", "tax" ], "type": "object" }, "maxItems": 12, "type": "array" }, "quoteCount": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "quoteCountIsLowerBound": { "type": "boolean" }, "quoteStatusBreakdown": { "items": { "additionalProperties": false, "properties": { "count": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "status": { "enum": [ "DRAFT", "PENDING", "REJECTED", "APPROVED", "OTHER" ], "type": "string" } }, "required": [ "status", "count" ], "type": "object" }, "maxItems": 5, "type": "array" } }, "required": [ "business", "customerCount", "customerCountIsLowerBound", "invoiceCount", "invoiceCountIsLowerBound", "invoiceStatusBreakdown", "paymentCount", "paymentCountIsLowerBound", "quoteCount", "quoteCountIsLowerBound", "quoteStatusBreakdown", "productCount", "productCountIsLowerBound", "products" ], "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:785bbd4265123accceefd3174c82897e5d24a25811f155df29e429b85d828c28 | sha256sum