bexio MCP by usefulapi

Read bexio contacts, invoices, quotes, bills, projects and journal; log time, draft invoices.

¿Debería usar esto?

Calidad y seguridad

B
Calidad de la descripción
92%
Integridad del esquema
89%
Calidad de los nombres
80%
Riesgo de envenenamiento
80%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (8)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'bexio_list_bills' description contains placeholder texten bexio_list_bills
  • LOWTool 'bexio_list_users' description lacks action verben bexio_list_users
  • LOWTool 'bexio_get_quote' description lacks action verben bexio_get_quote
  • LOWTool 'bexio_get_order' description lacks action verben bexio_get_order
  • LOWTool 'bexio_list_taxes' description lacks action verben bexio_list_taxes
  • LOWTool 'bexio_list_bills' description lacks action verben bexio_list_bills
  • INFOTool description contains placeholder or incomplete texten bexio_list_bills

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~8,140Tokens (definiciones de herramientas)
~2.6 KBTamaño de respuesta típico
Impacto significativo en la atención (6.36% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "bexio": {
      "url": "https://bexio.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://bexio.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (28)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢bexio_get_company_profile

The bexio company's profile: name, address, legal form, VAT (MWST) and UID numbers, contact details. Each bexio account has one profile.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_get_current_user

The signed-in bexio user (id, name, email, superadmin/accountant flags). Its id is the default user_id of new records.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_users(limit, offset)

The company's bexio users (id, name, email). Use an id as user_id or owner of contacts, documents and timesheets.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_contacts(name, first_name, email, nr, city, ...)

List or search contacts (customers, suppliers, persons, companies). Without filters it pages through all contacts; with filters it uses bexio's contact search (all filters must match). name_1 is the company name or a person's last name, name_2 a person's first name.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "description": "name_1 (company name or last name) contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "first_name": {
      "description": "name_2 (a person's first name or a company's name addition) contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "email": {
      "description": "Main email contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "nr": {
      "description": "Contact number equals this.",
      "type": "string",
      "minLength": 1,
      "maxLength": 50
    },
    "city": {
      "description": "City contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "postcode": {
      "description": "Postcode equals this.",
      "type": "string",
      "minLength": 1,
      "maxLength": 20
    },
    "contact_type": {
      "description": "Only companies or only persons.",
      "type": "string",
      "enum": [
        "company",
        "person"
      ]
    },
    "updated_since": {
      "description": "Changed on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "archived": {
      "description": "true = archived contacts only (default: active contacts).",
      "type": "boolean"
    },
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "nr",
        "name_1",
        "updated_at"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_get_contact(contact_id, archived)

One contact with its address, emails, phones, language, groups and remarks.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The contact id (from bexio_list_contacts)."
    },
    "archived": {
      "description": "true when the contact is archived.",
      "type": "boolean"
    }
  },
  "required": [
    "contact_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_invoices(status, contact_id, user_id, document_nr, title, ...)

List or search sales invoices (number, contact, totals, open amount, dates, status). Statuses: draft, pending (issued, open), paid, partial (partially paid), canceled, unpaid (overdue reminder state). Without filters it pages through all invoices; with filters all must match.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Only invoices with one of these statuses.",
      "minItems": 1,
      "maxItems": 6,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "draft",
          "pending",
          "paid",
          "partial",
          "canceled",
          "unpaid"
        ]
      }
    },
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only documents for this contact (from bexio_list_contacts)."
    },
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only documents owned by this bexio user (from bexio_list_users)."
    },
    "document_nr": {
      "description": "Document number contains this text (e.g. RE-00012).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "title": {
      "description": "Title contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "valid_from_after": {
      "description": "Document date (is_valid_from) on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "valid_from_before": {
      "description": "Document date (is_valid_from) on or before this date, yyyy-mm-dd.",
      "type": "string"
    },
    "updated_since": {
      "description": "Changed on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "total",
        "total_net",
        "total_gross",
        "updated_at"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_get_invoice(invoice_id)

One invoice with its positions (line items), taxes, totals, received payments and remaining amount.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "invoice_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The invoice id (from bexio_list_invoices)."
    }
  },
  "required": [
    "invoice_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_invoice_payments(invoice_id, limit, offset)

The payments recorded on one invoice (date, amount, bank account, cash discount).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "invoice_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The invoice id (from bexio_list_invoices)."
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "required": [
    "invoice_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_quotes(status, contact_id, user_id, document_nr, title, ...)

List or search quotes (Offerten): number, contact, totals, validity, status (draft, pending, confirmed, declined). With filters all must match.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Only quotes with one of these statuses.",
      "minItems": 1,
      "maxItems": 4,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "draft",
          "pending",
          "confirmed",
          "declined"
        ]
      }
    },
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only documents for this contact (from bexio_list_contacts)."
    },
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only documents owned by this bexio user (from bexio_list_users)."
    },
    "document_nr": {
      "description": "Document number contains this text (e.g. RE-00012).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "title": {
      "description": "Title contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "valid_from_after": {
      "description": "Document date (is_valid_from) on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "valid_from_before": {
      "description": "Document date (is_valid_from) on or before this date, yyyy-mm-dd.",
      "type": "string"
    },
    "updated_since": {
      "description": "Changed on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "total",
        "total_net",
        "total_gross",
        "updated_at"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_get_quote(quote_id)

One quote with its positions, taxes and totals.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "quote_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The quote id (from bexio_list_quotes)."
    }
  },
  "required": [
    "quote_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_orders(status, contact_id, user_id, document_nr, title, ...)

List or search sales orders (Aufträge): number, contact, totals, recurring flag, status (pending, done, partial, canceled). With filters all must match.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Only orders with one of these statuses.",
      "minItems": 1,
      "maxItems": 4,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "pending",
          "done",
          "partial",
          "canceled"
        ]
      }
    },
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only documents for this contact (from bexio_list_contacts)."
    },
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only documents owned by this bexio user (from bexio_list_users)."
    },
    "document_nr": {
      "description": "Document number contains this text (e.g. RE-00012).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "title": {
      "description": "Title contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "valid_from_after": {
      "description": "Document date (is_valid_from) on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "valid_from_before": {
      "description": "Document date (is_valid_from) on or before this date, yyyy-mm-dd.",
      "type": "string"
    },
    "updated_since": {
      "description": "Changed on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "total",
        "total_net",
        "total_gross",
        "updated_at"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_get_order(order_id)

One sales order with its positions, taxes and totals.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The order id (from bexio_list_orders)."
    }
  },
  "required": [
    "order_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_articles(name, code, order_by, descending, limit, ...)

List or search items / products (Artikel): code, name, sale and purchase price, tax, unit, stock levels. Use an id as article_id in a draft invoice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Item name (intern_name) contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "code": {
      "description": "Item code (intern_code) contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "intern_name"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_projects(name, contact_id, state_id, order_by, descending, ...)

List or search projects: number, name, contact, state, type, dates, budget. With filters all must match.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Project name contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only projects of this contact."
    },
    "state_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only projects in this state (pr_state_id as returned on a project)."
    },
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "name"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_get_project(project_id)

One project with its contact, state, type, dates, invoicing and budget settings.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The project id (from bexio_list_projects)."
    }
  },
  "required": [
    "project_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_timesheets(user_id, contact_id, project_id, business_activity_id, status_id, ...)

List or search time tracking entries: date, duration, text, user, contact, project, business activity, billable flag. With filters all must match.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only entries of this bexio user."
    },
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only entries for this contact."
    },
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only entries on this project."
    },
    "business_activity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only entries of this business activity (client_service_id, from bexio_list_business_activities)."
    },
    "status_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only entries with this timesheet status id."
    },
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "date"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_business_activities(order_by, descending, limit, offset)

Business activities (Tätigkeiten) for time tracking: id, name, billable default, hourly rate. A timesheet needs one.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_by": {
      "description": "Sort field (default id).",
      "type": "string",
      "enum": [
        "id",
        "name"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_accounts(limit, offset)

The chart of accounts: account number, name, type (1 earning, 2 expenditure, 3 active/asset, 4 passive/liability, 5 complete/closing), default tax, active/locked flags.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_journal(from, to, account_uuid, limit, offset)

Accounting journal bookings: date, debit and credit account ids, description, amount, currency, base-currency amount, and the source document (ref_class, ref_id).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "from": {
      "description": "Bookings on or after this date, yyyy-mm-dd.",
      "type": "string"
    },
    "to": {
      "description": "Bookings up to this date, yyyy-mm-dd.",
      "type": "string"
    },
    "account_uuid": {
      "description": "Only bookings on this account (its uuid from bexio_list_accounts).",
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_taxes(scope, types, date, limit, offset)

VAT (MWST) tax codes: id, code, rate, type (sales_tax, pre_tax, ...), validity. For a draft invoice use an active sales tax (types sales_tax, scope active).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "scope": {
      "description": "Only active or inactive taxes.",
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "types": {
      "description": "Only sales taxes or input (pre) taxes.",
      "type": "string",
      "enum": [
        "sales_tax",
        "pre_tax"
      ]
    },
    "date": {
      "description": "Only taxes active on this date, yyyy-mm-dd.",
      "type": "string"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_bank_accounts(limit, offset)

The company's bank accounts shown in bexio banking: name, bank, IBAN / QR-IBAN, currency, linked ledger account, QR-invoice mode.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_currencies(with_exchange_rate, date, limit, offset)

Currencies set up in bexio (id, code such as CHF or EUR, rounding), optionally with the exchange rate valid on a date. Use an id as currency_id.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "with_exchange_rate": {
      "description": "Embed each currency's exchange rate.",
      "type": "boolean"
    },
    "date": {
      "description": "Validity date of the embedded exchange rate, yyyy-mm-dd.",
      "type": "string"
    },
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_business_years(limit, offset)

Accounting business (fiscal) years: start, end, status (open, locked, closed).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Results per page, 1-2000 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    },
    "offset": {
      "description": "Records to skip (default 0). Use next_offset from the previous reply.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢bexio_list_bills(status, search, vendor, supplier_id, bill_date_from, ...)

Supplier bills (Kreditoren / purchase bills): document number, vendor, title, status, gross/net, pending amount, bill and due date, overdue flag. status: DRAFTS, TODO (booked, not fully paid), PAID, OVERDUE.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Bill status filter.",
      "type": "string",
      "enum": [
        "DRAFTS",
        "TODO",
        "PAID",
        "OVERDUE"
      ]
    },
    "search": {
      "description": "Free-text search over vendor, vendor reference, currency, document number and title (3-255 characters).",
      "type": "string",
      "minLength": 3,
      "maxLength": 255
    },
    "vendor": {
      "description": "Vendor name contains this text.",
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "supplier_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Only bills of this supplier contact."
    },
    "bill_date_from": {
      "description": "Bill date on or after, yyyy-mm-dd.",
      "type": "string"
    },
    "bill_date_to": {
      "description": "Bill date on or before, yyyy-mm-dd.",
      "type": "string"
    },
    "due_date_from": {
      "description": "Due date on or after, yyyy-mm-dd.",
      "type": "string"
    },
    "due_date_to": {
      "description": "Due date on or before, yyyy-mm-dd.",
      "type": "string"
    },
    "sort": {
      "description": "Sort field.",
      "type": "string",
      "enum": [
        "document_no",
        "bill_date",
        "due_date",
        "vendor",
        "gross",
        "pending_amount",
        "created_at"
      ]
    },
    "descending": {
      "description": "Sort descending (default ascending).",
      "type": "boolean"
    },
    "page": {
      "description": "Page number, 1-based (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "limit": {
      "description": "Bills per page, 1-500 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴bexio_create_contact(contact_type, name, first_name, street_name, house_number, ...)

WRITE: create a new contact (company or person) in bexio. Nothing existing is changed. For a person, name is the last name and first_name the first name. Owner and responsible user default to the signed-in user.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "contact_type": {
      "type": "string",
      "enum": [
        "company",
        "person"
      ],
      "description": "company or person."
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255,
      "description": "Company name, or a person's last name (name_1)."
    },
    "first_name": {
      "description": "A person's first name, or a company's name addition (name_2).",
      "type": "string",
      "maxLength": 255
    },
    "street_name": {
      "description": "Street name.",
      "type": "string",
      "maxLength": 255
    },
    "house_number": {
      "description": "House number.",
      "type": "string",
      "maxLength": 50
    },
    "address_addition": {
      "description": "Address addition (c/o, P.O. box).",
      "type": "string",
      "maxLength": 255
    },
    "postcode": {
      "description": "Postcode.",
      "type": "string",
      "maxLength": 20
    },
    "city": {
      "description": "City.",
      "type": "string",
      "maxLength": 255
    },
    "country_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "bexio country id (1 = Switzerland in a default bexio setup)."
    },
    "email": {
      "description": "Main email.",
      "type": "string",
      "maxLength": 255,
      "format": "email",
      "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    },
    "phone": {
      "description": "Landline phone.",
      "type": "string",
      "maxLength": 50
    },
    "mobile": {
      "description": "Mobile phone.",
      "type": "string",
      "maxLength": 50
    },
    "website": {
      "description": "Website URL.",
      "type": "string",
      "maxLength": 255
    },
    "remarks": {
      "description": "Internal remarks.",
      "type": "string",
      "maxLength": 10000
    },
    "language_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "bexio language id of the contact's correspondence language."
    },
    "contact_group_ids": {
      "description": "Contact group ids.",
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "integer",
        "exclusiveMinimum": 0,
        "maximum": 2147483647,
        "description": "A contact group id."
      }
    },
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Responsible bexio user (default: the signed-in user)."
    },
    "owner_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Owner bexio user (default: the responsible user)."
    }
  },
  "required": [
    "contact_type",
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴bexio_create_note(subject, info, contact_id, project_id, event_start, ...)

WRITE: add a note (call log, meeting minutes, follow-up) to a contact and/or project in bexio. Nothing existing is changed.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "subject": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255,
      "description": "Note subject."
    },
    "info": {
      "description": "Note text.",
      "type": "string",
      "maxLength": 20000
    },
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Attach to this contact."
    },
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Attach to this project."
    },
    "event_start": {
      "description": "When it happened, local time yyyy-mm-dd HH:MM[:SS] (default: now, UTC).",
      "type": "string"
    },
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Author bexio user (default: the signed-in user)."
    }
  },
  "required": [
    "subject"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴bexio_create_timesheet(business_activity_id, date, duration, start, end, ...)

WRITE: log time in bexio: either date + duration (HH:MM), or start + end. Needs a business activity (bexio_list_business_activities). Nothing existing is changed.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "business_activity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The business activity (client_service_id) from bexio_list_business_activities."
    },
    "date": {
      "description": "Work date, yyyy-mm-dd (with duration).",
      "type": "string"
    },
    "duration": {
      "description": "Time worked as HH:MM, e.g. 01:30 (with date).",
      "type": "string",
      "pattern": "^\\d{1,3}:[0-5]\\d$"
    },
    "start": {
      "description": "Start, local time yyyy-mm-dd HH:MM[:SS] (with end).",
      "type": "string"
    },
    "end": {
      "description": "End, local time yyyy-mm-dd HH:MM[:SS] (with start).",
      "type": "string"
    },
    "text": {
      "description": "What was done.",
      "type": "string",
      "maxLength": 10000
    },
    "billable": {
      "description": "Billable to the client (default true).",
      "type": "boolean"
    },
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The client contact."
    },
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The project."
    },
    "status_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Timesheet status id (bexio's default when omitted)."
    },
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Whose time (default: the signed-in user)."
    }
  },
  "required": [
    "business_activity_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴bexio_create_draft_invoice(contact_id, positions, title, document_nr, contact_sub_id, ...)

WRITE: create a DRAFT invoice in bexio for a contact, with custom, item (article) and text lines. It is never issued, sent or booked: the user reviews and issues it in bexio. Taxes must be active sales taxes (bexio_list_taxes with types sales_tax, scope active).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "contact_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "The customer contact (from bexio_list_contacts)."
    },
    "positions": {
      "minItems": 1,
      "maxItems": 150,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "custom",
              "article",
              "text"
            ],
            "description": "custom = a free line (text, amount, unit_price, tax_id); article = an existing item (article_id, amount, tax_id); text = a text-only line."
          },
          "text": {
            "description": "Line text (required for custom and text lines; for article lines the item's text is used when omitted).",
            "type": "string",
            "maxLength": 10000
          },
          "amount": {
            "description": "Quantity (max. 6 decimals). Required for custom and article lines.",
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000000000
          },
          "unit_price": {
            "description": "Price per unit (max. 6 decimals). Required for custom lines; article lines default to the item's price.",
            "type": "number",
            "minimum": -1000000000,
            "maximum": 1000000000
          },
          "tax_id": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 2147483647,
            "description": "An ACTIVE sales tax (bexio_list_taxes with types sales_tax, scope active). Required for custom and article lines."
          },
          "article_id": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 2147483647,
            "description": "The item (from bexio_list_articles). Required for article lines only."
          },
          "account_id": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 2147483647,
            "description": "Revenue account (from bexio_list_accounts); bexio's default when omitted."
          },
          "unit_id": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 2147483647,
            "description": "Unit id (bexio's units, e.g. hours); none when omitted."
          },
          "discount_in_percent": {
            "description": "Line discount in percent.",
            "type": "number",
            "minimum": 0,
            "maximum": 100
          }
        },
        "required": [
          "type"
        ]
      },
      "description": "1-150 invoice lines."
    },
    "title": {
      "description": "Invoice title.",
      "type": "string",
      "maxLength": 255
    },
    "document_nr": {
      "description": "Invoice number. Only when automatic numbering is OFF in bexio's settings (then it is required); leave empty with automatic numbering.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "contact_sub_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "A contact person of the customer."
    },
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Link to this project."
    },
    "valid_from": {
      "description": "Invoice date, yyyy-mm-dd (default today).",
      "type": "string"
    },
    "valid_to": {
      "description": "Due date, yyyy-mm-dd (default from the payment terms).",
      "type": "string"
    },
    "tax_mode": {
      "description": "net = unit prices are net and VAT is added (default); gross = unit prices include VAT; exempt = the invoice is exempt from VAT.",
      "type": "string",
      "enum": [
        "net",
        "gross",
        "exempt"
      ]
    },
    "currency_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Currency (from bexio_list_currencies); company default when omitted."
    },
    "bank_account_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Bank account for the payment slip (from bexio_list_bank_accounts); default when omitted."
    },
    "language_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Document language id; the contact's language when omitted."
    },
    "payment_type_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Payment type id; default when omitted."
    },
    "header": {
      "description": "Text above the lines.",
      "type": "string",
      "maxLength": 10000
    },
    "footer": {
      "description": "Text below the lines.",
      "type": "string",
      "maxLength": 10000
    },
    "reference": {
      "description": "Customer reference shown on the invoice.",
      "type": "string",
      "maxLength": 255
    },
    "api_reference": {
      "description": "Your own external reference (only visible through the API).",
      "type": "string",
      "maxLength": 255
    },
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 2147483647,
      "description": "Responsible bexio user (default: the signed-in user)."
    }
  },
  "required": [
    "contact_id",
    "positions"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada28 herramientas