X-ERP Help

03. API permissions and a dedicated integration user

Separate integration from human accounts and assign only the API operations that the data flow actually needs.

A good integration account communicates its purpose through its name and role - and can be blocked without locking someone out of X-ERP.

The interface as a product

X-ERP separates API rights by controllers and operations such as read, create, modify and delete. This separation limits error impact and makes a 403 response an important piece of security evidence.

This makes the connection robust

  1. Create a separate account for each integration and environment.
  2. Assign a unique role based on controller and required CRUD operation.
  3. Revoke UI, administration and deletion rights if they are not necessary.
  4. Store and rotate the password in the Secret Store.
  5. Test allowed and explicitly prohibited calls.
  6. Document ownership, purpose, expiration date and emergency hold.

Prove production readiness

  • 403 appears on a deliberately forbidden test.
  • Account is not assigned to a natural person.
  • Test and production use separate secrets.
  • Blocking the account stops the data flow in a controlled manner.

Mistakes that only become expensive during operation

  • Personal admin access is stored in a service.
  • Multiple integrations share an account and are indistinguishable.
  • Rights grow over years because old operations are never revoked.

This is what you take with you

The integration has a narrow, verifiable identity with a clear cut-off point.

Further information / source

Related topics

  1. For integration specialists – connect APIs and external systems › 02. Login and session cookie
  2. For integration specialists – connect APIs and external systems › 04. Endpoints, data contracts and answers
  3. For integration specialists – connecting APIs and external systems › 10. Testing, acceptance and production operations

Frequently asked questions

**What does HTTP 403 mean?**

The meeting is known, but the specific operation is not permitted. Check role and API permission - not password.

**Do reading and changing require the same right?**

No. The API permissions can release operations separately; Only assign the scope that is actually required.