sn# Customer Service Back

Overview

The Customer Service manages customer entities in the system. Customers represent individual or corporate clients and are backed by the unified EntityModel.

Each customer includes:

Soft delete is supported — deleted customers have IsDeleted = true and a DeletedAt timestamp rather than being physically removed.

All operations are tenant-aware.


Endpoints

Back to Entities

GET

/api/v1/Customers/{id}

Returns a customer by its ID.

Route parameters:

Behavior:

Response:

Authorization:


GET

/api/v1/Customers/code/{code}

Returns a customer by its code.

Route parameters:

Behavior:

Response:

Authorization:


GET

/api/v1/Customers/email/{email}

Returns customers by email.

Route parameters:

Behavior:

Response:

Authorization:


GET

/api/v1/Customers

Returns a paginated, filterable list of customers.

Query parameters (pagination):

Query parameters (filters):

Response:

Authorization:


GET

/api/v1/Customers/{id}/files

Returns a paginated list of file attachments linked to a customer.

Route parameters:

Query parameters: see FileFilterRequest (standard pagination + search)

Response:

Authorization:


POST

/api/v1/Customers

Creates a new customer.

Request body (EntityModel):

Behavior:

Response:

Authorization:


POST

/api/v1/Customers/{id}/files/assign

Assigns one or more existing files to a customer.

Route parameters:

Request body (FileIdsRequest):

Response:

Authorization:


PUT

/api/v1/Customers/{id}

Updates an existing customer. All EntityModel fields can be provided; Id is taken from the route.

Route parameters:

Behavior:

Response:

Authorization:


DELETE

/api/v1/Customers/{id}

Soft-deletes a customer by ID.

Route parameters:

Behavior:

Response:

Authorization:


DELETE

/api/v1/Customers/{id}/files/remove

Removes one or more file associations from a customer (does not delete the file itself).

Route parameters:

Request body (FileIdsRequest):

Response:

Authorization:


Notes