Exact Online CRM API
The CRM API from Exact Online — 4 operation(s) for crm.
The CRM API from Exact Online — 4 operation(s) for crm.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/exact-online-crm-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Exact Online REST / OData CRM API
description: Partial OpenAPI for the Exact Online REST/OData API (v1). Endpoints are drawn from the official documentation at https://start.exactonline.nl/docs/HlpRestAPIResources.aspx covering CRM, Sales, Purchase, Financial, Logistics, and System resources. The full API exposes hundreds of OData entity sets; this spec covers the most commonly used entities. Authentication is OAuth 2.0 with regional auth endpoints.
version: 1.0.0
contact:
name: API Evangelist
email: kin@apievangelist.com
license:
name: Proprietary
servers:
- url: https://start.exactonline.nl/api/v1
description: Netherlands
- url: https://start.exactonline.co.uk/api/v1
description: United Kingdom
- url: https://start.exactonline.be/api/v1
description: Belgium
- url: https://start.exactonline.de/api/v1
description: Germany
- url: https://start.exactonline.com/api/v1
description: International
security:
- oauth2: []
tags:
- name: CRM
paths:
/{division}/crm/Accounts:
parameters:
- name: division
in: path
required: true
schema:
type: integer
get:
summary: List CRM accounts
operationId: listAccounts
tags:
- CRM
parameters:
- name: $select
in: query
schema:
type: string
- name: $filter
in: query
schema:
type: string
- name: $top
in: query
schema:
type: integer
- name: $skip
in: query
schema:
type: integer
responses:
'200':
description: List of accounts
post:
summary: Create CRM account
operationId: createAccount
tags:
- CRM
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
responses:
'201':
description: Account created
/{division}/crm/Accounts({id}):
parameters:
- name: division
in: path
required: true
schema:
type: integer
- name: id
in: path
required: true
schema:
type: string
format: uuid
get:
summary: Get CRM account
operationId: getAccount
tags:
- CRM
responses:
'200':
description: Account
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
put:
summary: Update CRM account
operationId: updateAccount
tags:
- CRM
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
responses:
'204':
description: Updated
delete:
summary: Delete CRM account
operationId: deleteAccount
tags:
- CRM
responses:
'204':
description: Deleted
/{division}/crm/Contacts:
parameters:
- name: division
in: path
required: true
schema:
type: integer
get:
summary: List contacts
operationId: listContacts
tags:
- CRM
responses:
'200':
description: Contacts
post:
summary: Create contact
operationId: createContact
tags:
- CRM
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
responses:
'201':
description: Created
/{division}/crm/Contacts({id}):
parameters:
- name: division
in: path
required: true
schema:
type: integer
- name: id
in: path
required: true
schema:
type: string
format: uuid
get:
summary: Get contact
operationId: getContact
tags:
- CRM
responses:
'200':
description: Contact
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
put:
summary: Update contact
operationId: updateContact
tags:
- CRM
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
responses:
'204':
description: Updated
delete:
summary: Delete contact
operationId: deleteContact
tags:
- CRM
responses:
'204':
description: Deleted
components:
schemas:
Account:
type: object
properties:
ID:
type: string
format: uuid
Code:
type: string
Name:
type: string
Email:
type: string
Phone:
type: string
Status:
type: string
Type:
type: string
enum:
- C
- S
- R
Contact:
type: object
properties:
ID:
type: string
format: uuid
Account:
type: string
format: uuid
FirstName:
type: string
LastName:
type: string
Email:
type: string
Phone:
type: string
securitySchemes:
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://start.exactonline.nl/api/oauth2/auth
tokenUrl: https://start.exactonline.nl/api/oauth2/token
scopes: {}