# MijnKlantportaal Developer Documentation ## Docs - [Introduction](https://docs.developers.mijnklantportaal.nl/index.md): Welcome to the MijnKlantportaal Developer Documentation. - [Authentication](https://docs.developers.mijnklantportaal.nl/getting-started/authentication.md) - [Rate limiting](https://docs.developers.mijnklantportaal.nl/getting-started/rate-limiting.md) - [MCP server](https://docs.developers.mijnklantportaal.nl/ai/mcp.md) - [Scopes](https://docs.developers.mijnklantportaal.nl/oauth/scopes.md) - [Authorize](https://docs.developers.mijnklantportaal.nl/oauth/endpoints/authorize.md): Ask the user permission to access their portal - [Generate tokens](https://docs.developers.mijnklantportaal.nl/oauth/endpoints/generate-tokens.md): Generate Access and Refresh Tokens from your Authentication Code - [Refresh token](https://docs.developers.mijnklantportaal.nl/oauth/endpoints/refresh-token.md): Refresh an Access Token with the Refresh Token - [Forms](https://docs.developers.mijnklantportaal.nl/cms/forms.md): This page gives instruction for working with Forms and your server. It's also possible to receive the entered data per email or saved it right into MijnKlantportaal, which does not require technical skills. - [Dynamic HTML](https://docs.developers.mijnklantportaal.nl/cms/pages-dynamic-html.md) - [List Agreements](https://docs.developers.mijnklantportaal.nl/api-reference/agreements-api/list-agreements.md): Getting all agreements as paginated response - [Create agreement](https://docs.developers.mijnklantportaal.nl/api-reference/agreements-api/create-agreement.md): Creating a new agreement. **Note**: This endpoint accepts only `multipart/form-data`. - [Get Agreement](https://docs.developers.mijnklantportaal.nl/api-reference/agreements-api/get-agreement.md): Get an Agreement by ID - [Delete Agreement](https://docs.developers.mijnklantportaal.nl/api-reference/agreements-api/delete-agreement.md): Delete an Agreement by ID - [Download Legal Statement for Agreement](https://docs.developers.mijnklantportaal.nl/api-reference/agreements-api/download-legal-statement-for-agreement.md): Receive a URL to download the legal statement. Please note that you can only request the document when the agreement is fully signed. The URL is valid for 5 minutes. - [Download Agreement document](https://docs.developers.mijnklantportaal.nl/api-reference/agreements-api/download-agreement-document.md): Receive a URL to download the document. Please note that the URL is valid for 5 minutes. - [List Appointments](https://docs.developers.mijnklantportaal.nl/api-reference/appointments-api/list-appointments.md): Getting a NON-PAGINATED list of all the appointments in the given period. The result includes all appointments, also canceled and pending once. - [Schedule Appointment](https://docs.developers.mijnklantportaal.nl/api-reference/appointments-api/schedule-appointment.md): Schedule a new appointment - [Get Appointment](https://docs.developers.mijnklantportaal.nl/api-reference/appointments-api/get-appointment.md): Get an appointment by an ID - [Cancel appointment](https://docs.developers.mijnklantportaal.nl/api-reference/appointments-api/cancel-appointment.md): Cancel an existing appointment - [Change appointment status](https://docs.developers.mijnklantportaal.nl/api-reference/appointments-api/change-appointment-status.md): Confirm or cancel a pending appointment - [List Customers](https://docs.developers.mijnklantportaal.nl/api-reference/customers-api/list-customers.md): Getting all your customers in your portal as paginated response - [Create Customer](https://docs.developers.mijnklantportaal.nl/api-reference/customers-api/create-customer.md): Adding a new customer to your portal - [Get Customer](https://docs.developers.mijnklantportaal.nl/api-reference/customers-api/get-customer.md): Get a customer by an ID - [Delete customer](https://docs.developers.mijnklantportaal.nl/api-reference/customers-api/delete-customer.md): Delete the customer for the given ID - [Edit Customer](https://docs.developers.mijnklantportaal.nl/api-reference/customers-api/edit-customer.md): Make changes to an existing customer.\ \ Allthough all body fields are optional, at least one should be provided. - [Link Customer](https://docs.developers.mijnklantportaal.nl/api-reference/customers-api/link-customer.md): Link a customer to a customer in a bookkeeping integration - [Unlink Customer](https://docs.developers.mijnklantportaal.nl/api-reference/customers-api/unlink-customer.md): Unlink a customer from a bookkeeping integration - [List Customer Groups](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/list-customer-groups.md): Getting all the customer groups as paginated response - [Create Customer Group](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/create-customer-group.md): Create a new Customer Group - [Get Customer Group](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/get-customer-group.md): Get a specific Customer Group - [Delete customer group](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/delete-customer-group.md): Delete the customer group for the given ID - [Edit Customer Group](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/edit-customer-group.md): Make changes to an existing customer group - [List Customers in Customer Group](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/list-customers-in-customer-group.md): Get all the customers in a specific Customer Group. Please note this is a NON-PAGINATED list - [Add Customers to Customer Group](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/add-customers-to-customer-group.md): Add one or multiple customers to the Customer Group. Please note that unknown or wrong Customer IDs are ignored, no error is returned. - [Remove Customers from the Customer Group](https://docs.developers.mijnklantportaal.nl/api-reference/customer-groups-api/remove-customers-from-the-customer-group.md): Remove one or multiple customers from the Customer Group. Please note that unknown or wrong Customer IDs are ignored, no error is returned. - [List Customer Invoices](https://docs.developers.mijnklantportaal.nl/api-reference/customer-invoices-api/list-customer-invoices.md): Getting all your customer invoices in your portal as paginated response - [Create Customer Invoice](https://docs.developers.mijnklantportaal.nl/api-reference/customer-invoices-api/create-customer-invoice.md): Add a new Customer Invoice to your portal.\ \ **Important!** Note that this request is not JSON, but a `multipart/form-data` post. - [Create manual Customer Invoice](https://docs.developers.mijnklantportaal.nl/api-reference/customer-invoices-api/create-manual-customer-invoice.md): Create a Customer Invoice from the ground up by providing product/service lines - [Get Customer Invoice](https://docs.developers.mijnklantportaal.nl/api-reference/customer-invoices-api/get-customer-invoice.md): Get a Customer Invoice by ID - [Delete Customer Invoice](https://docs.developers.mijnklantportaal.nl/api-reference/customer-invoices-api/delete-customer-invoice.md): Remove a Customer Invoice from your portal. Be aware that deleting an invoice will not effect your license limits - [Mark Customer Invoice paid](https://docs.developers.mijnklantportaal.nl/api-reference/customer-invoices-api/mark-customer-invoice-paid.md): Set the Customer Invoice as paid. This will, if connected, also update the integration - [Get Customer Invoice as PDF](https://docs.developers.mijnklantportaal.nl/api-reference/customer-invoices-api/get-customer-invoice-as-pdf.md): Receive a URL to get the invoice as PDF. Please note that the URL is valid for 5 minutes. - [List Customer Offers](https://docs.developers.mijnklantportaal.nl/api-reference/customer-offers-api/list-customer-offers.md): Getting all your customer offers in your portal as paginated response - [Create Customer Offer](https://docs.developers.mijnklantportaal.nl/api-reference/customer-offers-api/create-customer-offer.md): Add a new Customer Offer to your portal.\ \ **Important!** Note that this request is not JSON, but a `multipart/form-data` post. - [Create manual Customer Offer](https://docs.developers.mijnklantportaal.nl/api-reference/customer-offers-api/create-manual-customer-offer.md): Create a Customer Offer from the ground up by providing product/service lines - [Get Customer Offer](https://docs.developers.mijnklantportaal.nl/api-reference/customer-offers-api/get-customer-offer.md): Get a Customer Offer by ID - [Delete Customer Offer](https://docs.developers.mijnklantportaal.nl/api-reference/customer-offers-api/delete-customer-offer.md): Remove a Customer Offer from your portal. Be aware that deleting an offer will not effect your license limits - [Mark Customer Offer accepted or rejected](https://docs.developers.mijnklantportaal.nl/api-reference/customer-offers-api/mark-customer-offer-accepted-or-rejected.md): Set the Customer Offer as accepted or rejected. This will, if connected, also update the integration - [Get Customer Offer as PDF](https://docs.developers.mijnklantportaal.nl/api-reference/customer-offers-api/get-customer-offer-as-pdf.md): Receive a URL to get the offer as PDF. Please note that the URL is valid for 5 minutes. - [List Customer Subscriptions](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscriptions-api/list-customer-subscriptions.md): Getting all your customer subscriptions in your portal as paginated response - [Create Customer Subscription](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscriptions-api/create-customer-subscription.md): Add a new Customer Subscription. - [Get Customer Subscription](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscriptions-api/get-customer-subscription.md): Get a Customer Subscription by ID - [Delete Customer Subscription](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscriptions-api/delete-customer-subscription.md): Remove a Customer Subscription from your portal. - [Change Customer Subscription](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscriptions-api/change-customer-subscription.md): Change a Customer Subscription by ID - [List Customer Subscription packages](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscription-packages-api/list-customer-subscription-packages.md): Getting all customer subscription packages as paginated response - [Create Customer Subscription Package](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscription-packages-api/create-customer-subscription-package.md): Add a new Customer Subscription package. - [Get Customer Subscription Package](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscription-packages-api/get-customer-subscription-package.md): Get a Customer Subscription Package by ID - [Delete Customer Subscription Package](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscription-packages-api/delete-customer-subscription-package.md): Delete a Customer Subscription Package by ID - [Change Customer Subscription Package](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscription-packages-api/change-customer-subscription-package.md): Change a Customer Subscription Package by ID - [Sign-up a customer for a Customer Subscription Package](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscription-packages-api/sign-up-a-customer-for-a-customer-subscription-package.md): Sign-up for a customer for a Customer Subscription Package by ID. - [Sign-up a non-customer for a Customer Subscription Package](https://docs.developers.mijnklantportaal.nl/api-reference/customer-subscription-packages-api/sign-up-a-non-customer-for-a-customer-subscription-package.md): Sign-up for a non-customer for a Customer Subscription Package by ID. A payment link will be generated. - [List Files and Directories](https://docs.developers.mijnklantportaal.nl/api-reference/files-api/list-files-and-directories.md): Getting all your files and directories in the given directory - [Uploading a file or creating a directory](https://docs.developers.mijnklantportaal.nl/api-reference/files-api/uploading-a-file-or-creating-a-directory.md): Upload a file or create a directory to provide one of the body params. You can not provide both at the same time. **Note**: If you upload a file, use the `multipart/form-data` post. For creating a directory, use the regular `application/json` post. - [Get File or Directory](https://docs.developers.mijnklantportaal.nl/api-reference/files-api/get-file-or-directory.md): Get a specific file or directory based on ID - [Delete File or Directory](https://docs.developers.mijnklantportaal.nl/api-reference/files-api/delete-file-or-directory.md): Delete a file or directory by the ID - [Download file](https://docs.developers.mijnklantportaal.nl/api-reference/files-api/download-file.md): Receive a URL to download a file. Please note that the URL is valid for 5 minutes. Note: only files can be downloaded! - [List File Requests](https://docs.developers.mijnklantportaal.nl/api-reference/file-request-api/list-file-requests.md): Getting all your File Request entities as paginated response - [Create File Request](https://docs.developers.mijnklantportaal.nl/api-reference/file-request-api/create-file-request.md): Create a File Request to a customer or with a public link - [Get File Request](https://docs.developers.mijnklantportaal.nl/api-reference/file-request-api/get-file-request.md): Get a specific File Request - [Delete File Request](https://docs.developers.mijnklantportaal.nl/api-reference/file-request-api/delete-file-request.md): Deletes a File Request, and the request only. Uploaded files from this request will **not** be deleted - [List File Shares](https://docs.developers.mijnklantportaal.nl/api-reference/file-share-api/list-file-shares.md): Getting all your File Share entities as paginated response - [Create File Share](https://docs.developers.mijnklantportaal.nl/api-reference/file-share-api/create-file-share.md): Share Directories and Files with a Customer or via a public link - [Get File Share](https://docs.developers.mijnklantportaal.nl/api-reference/file-share-api/get-file-share.md): Get the File Share for the given ID - [Delete File Share](https://docs.developers.mijnklantportaal.nl/api-reference/file-share-api/delete-file-share.md): Remove a File Share and so stop sharing the content - [List MijnKlantportaal invoices](https://docs.developers.mijnklantportaal.nl/api-reference/invoices-api/list-mijnklantportaal-invoices.md): Getting all the invoices sent by MijnKlantportaal for license fees and other costs - [Get MijnKlantportaal Invoice](https://docs.developers.mijnklantportaal.nl/api-reference/invoices-api/get-mijnklantportaal-invoice.md): Get a specific MijnKlantportaal invoice - [Get PDF for MijnKlantportaal Invoice](https://docs.developers.mijnklantportaal.nl/api-reference/invoices-api/get-pdf-for-mijnklantportaal-invoice.md): Get the PDF file for a specific MijnKlantportaal invoice - [Get information from token](https://docs.developers.mijnklantportaal.nl/api-reference/me-api/get-information-from-token.md): Getting all information about the used token and the connected user, installation and license details - [List Payment Links](https://docs.developers.mijnklantportaal.nl/api-reference/payment-links-api/list-payment-links.md): Getting all your payment links as paginated response - [Create Payment Link](https://docs.developers.mijnklantportaal.nl/api-reference/payment-links-api/create-payment-link.md): Add a new Payment Link. - [Get Payment Link](https://docs.developers.mijnklantportaal.nl/api-reference/payment-links-api/get-payment-link.md): Get a Payment Link by ID - [Close Payment Link](https://docs.developers.mijnklantportaal.nl/api-reference/payment-links-api/close-payment-link.md): Close the Payment Link so it can not be used anymore. Useful for reusable links. - [List Payment Link Payments](https://docs.developers.mijnklantportaal.nl/api-reference/payment-links-api/list-payment-link-payments.md) - [List Punch Cards](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/list-punch-cards.md): Getting all punch cards as paginated response - [Create Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/create-punch-card.md): Create a new Punch Card. - [Get Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/get-punch-card.md): Get a Punch Card by ID - [Delete Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/delete-punch-card.md): Deletes the Punch Card and all sold cards related to it. - [Edit Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/edit-punch-card.md): Edit a Punch Card by ID - [List issued cards for Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/list-issued-cards-for-punch-card.md): Getting all issued cards for a specific punch card as paginated response - [Issue new Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/issue-new-punch-card.md): Issue a new Punch Card to a customer. - [Get an issued Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/get-an-issued-punch-card.md): Get an issued Punch Card by it's ID and those of the card itself - [Stamp an issued Punch Card](https://docs.developers.mijnklantportaal.nl/api-reference/punch-cards-api/stamp-an-issued-punch-card.md): Add a stamp to an issued Punch Card by it's ID and those of the card itself - [List ticket records](https://docs.developers.mijnklantportaal.nl/api-reference/tickets-api/list-ticket-records.md): Paginated response with all tickets created by customers - [Get Ticket record](https://docs.developers.mijnklantportaal.nl/api-reference/tickets-api/get-ticket-record.md): Get a ticket with the messages belonging to it - [Add message to the ticket](https://docs.developers.mijnklantportaal.nl/api-reference/tickets-api/add-message-to-the-ticket.md): Add a new message as reply to the ticket. Please note that replying to a closed ticket will reopen it. You can not add a message to a ticket created from live chat via the API - [Close the ticket](https://docs.developers.mijnklantportaal.nl/api-reference/tickets-api/close-the-ticket.md): Mark the ticket as closed - [Upload attachment to Ticket message](https://docs.developers.mijnklantportaal.nl/api-reference/tickets-api/upload-attachment-to-ticket-message.md): Add an attachment to an already posted Ticket message. Adding an attachment is only possible in the first 5 minutes after creating the message. Chat conversations do not support attachments. - [Download Ticket message attachment](https://docs.developers.mijnklantportaal.nl/api-reference/tickets-api/download-ticket-message-attachment.md): Receive a URL to download the attachment. Please note that the URL is valid for 5 minutes. - [List Webhook records](https://docs.developers.mijnklantportaal.nl/api-reference/webhooks-api/list-webhook-records.md): Paginated response with all the active webhooks on your account - [Create Webhook record](https://docs.developers.mijnklantportaal.nl/api-reference/webhooks-api/create-webhook-record.md) - [Get Webhook record](https://docs.developers.mijnklantportaal.nl/api-reference/webhooks-api/get-webhook-record.md) - [Remove Webhook record](https://docs.developers.mijnklantportaal.nl/api-reference/webhooks-api/remove-webhook-record.md) ## OpenAPI Specs - [openapi](https://docs.developers.mijnklantportaal.nl/openapi.yaml) ## Optional - [Changelog](https://mijnklantportaal.canny.io/changelog) - [System status](https://status.mijnklantportaal.nl) - [Feature requests](https://mijnklantportaal.canny.io/feature-requests)