Data Model
Understanding how entities relate to each other is crucial for effective API integration. The diagram below illustrates these relationships and can help you:
- Identify which entities you need to work with for your use case
- Understand data dependencies (e.g., a Case requires a Customer and can contain multiple Invoices)
- Navigate ownership hierarchies (e.g., Creditors belonging to either Partners or Accounts)
- Plan your integration workflow
Entity Relations Diagram
Note Partner entity is only accessable for partners
API User Note An API user is a standard User that authenticates using a public_key and is a member of the api_user access group, which grants API-specific permissions. For direct API integrations, the Account uses such a user. For partner-led integrations, the Partner uses such a user; accounts under that partner typically do not have their own API user.
Relationship Types
The diagram uses standard ER notation to show relationships between entities:
Cardinality
The relationships use crow's foot notation to show cardinality:
||--||: Exactly one to exactly one||--|{: Exactly one to zero or many||--o|: Exactly one to zero or one}|--|{: Zero or many to zero or many
For example:
ACCOUNT ||--|{ CREDITOR : owns- Each Account must own one or more Creditors
- Each Creditor must belong to exactly one Account
Access Group
Access Groups define permissions and data access scopes for users within an Account. Each Account can define multiple Access Groups, and users can be members of multiple Access Groups. The api_user access group is a special group that grants API-specific permissions for programmatic access.
Key relationships:
ACCOUNT ||--|{ ACCESSGROUP : defines- Each Account defines its own Access GroupsACCESSGROUP }|--|{ USER : members- Users can belong to multiple Access Groups
For API integration details, see the Account creation endpoint, Access Group listing, and User creation.
User
Users represent individuals or system accounts that can access the platform. A User includes authentication data, email information, and data access permissions. For API access, users authenticate using a public_key and must be members of the api_user access group to gain API-specific permissions.
