Welcome to the EVC-net Customer API! This API provides access to retrieve customers from the EVC-net platform. With seamless integration capabilities, developers can efficiently access and manage customer data programmatically. This documentation serves as a comprehensive guide to help you navigate the functionalities and endpoints available through this API.
Acceptance Endpoint: https://evc-a.evc-net.com/
Production Endpoint: https://evc-net.com/
Authentication
To access the API endpoints, authentication via API keys is required. Please refer to the authentication section for details on how to authenticate your requests.
Rate Limits
Requests to the API are subject to rate limits to ensure system stability and reliability. Details on rate limits can be found in the Rate Limiting section.
Getting Started
Begin exploring the API functionalities by reviewing the available endpoints and their respective parameters. Detailed explanations and usage examples are provided for each endpoint to facilitate integration into your application.
We’re excited to see how you leverage the EVC-net Customer API to streamline customer retrieval within your application. If you have any questions or need assistance, please refer to the contact support@lastmilesolutions.com.
Let’s get started!
Authentication
Accessing the EVC-net API endpoints requires authentication using an API token generated for a system user account. Follow these steps to generate an authentication token:
Creating a System User Account
- Contact Last Mile Solutions: LMS will create a System User Account dedicated to the customer API access.
- Generate Authentication Token: Under the newly created system user account we will generate an authentication token. This token will serve as the key for API authentication.
Authentication Format
To authenticate your requests to the EVC-net API, use the following format in the HTTP header:
Authorization: token {authentication_token}
- Replace {authentication_token} with the authentication token generated for the system user account.
- Include this header in your API requests to authenticate and gain access to the endpoints.
Example:
- GET /api/rest/customer HTTP/1.1
- Host: evc-a.evc-net.com
- Authorization: token your_authentication_token_here
Security Note
Keep your authentication token secure and avoid sharing it in publicly accessible areas. Treat the token as sensitive information to prevent unauthorized access to your account and data.
Interface & Endpoint
Example endpoint structure:
- /api/rest/customer
- /api/rest/customer/{CustomerId}
Method | Description |
---|---|
GET | n/a |
POST | Create a new customer |
PUT | Update a customer / attach a card to a customer using {customerId} |
PATCH | n/a |
Example headers structure (identical for both):
Key | Value |
---|---|
accept | application/json |
X-Request-ID | (int) Generated ID example, 12345 |
x-api-version | 1.1.1 |
Authorization | Token { authentication_token } |
Example creating a customer – POST to URL: https://evc-net.com/api/rest/customer
{
"object_id": "TestObjectID123",
"first_name": "TestJohn",
"last_name": "TestDoe",
"street": "TestStreet",
"street_number": "456",
"street_number_ext": "B",
"zip_code": "12345",
"country_code": "XX",
"city": "TestCity",
"phone": "+31987654321",
"mobile": "+31098765432",
"email": "testemail@example.com",
"bic": "TestBICXX",
"invoice_name": "TestInvoiceName123",
"invoice_street": "TestInvoiceStreet",
"invoice_street_number": "789",
"invoice_street_number_ext": "C",
"invoice_zip_code": "54321",
"invoice_city": "TestInvoiceCity",
"invoice_country_code": "YY",
"invoice_email": "invoice@example.com",
"time_zone": "Test/TimeZone",
"preferred_language": "en",
"info": "Test Extra Info",
"receive_newsletters": "false",
"password": "TestP@ssword!",
"state": "TEST_STATE",
"billing_account_name": "TestBillingName",
"mandate_accepted": "true",
"customer_type": "TEST_CUSTOMER",
"agreement_condition": "false",
"reimbursement_mode": "TEST_REIMBURSEMENT",
"electronic_invoice": "TEST_ELECTRONIC",
"kvk_number": "987654",
"vat_number": "TestVAT123",
"payment_method": "TEST_METHOD",
"public_rechgroups": "false",
"your_reference": "TestLMSRef",
"company_object_no": "TestCompanyNo",
"disabled_login": "false",
"company_name": "TestCompanyName",
"gender": "F",
"send_email": "false",
"usergroup_name": "TestIntegration"
}
Example updating a customer / attaching card to a customer PUT to URL: https://evc-net.com/api/rest/customer/{customerId}
"first_name": "TestJohn",
"last_name": "TestDoe",
"company_name": "TestCompanyName",
"street": "TestStreet",
"street_number": "456",
"street_number_ext": "B",
"zip_code": "12345",
"country_code": "XX",
"city": "TestCity",
"phone": "+31987654321",
"mobile": "+31098765432",
"email": "testemail@example.com",
"billing_account_number": "TestBillingAccount",
"electronic_invoice": "TEST_ELECTRONIC",
"invoice_name": "TestInvoiceName",
"invoice_street": "TestInvoiceStreet",
"invoice_street_number": "789",
"invoice_street_number_ext": "C",
"invoice_zip_code": "54321",
"invoice_city": "TestInvoiceCity",
"invoice_country_code": "YY",
"invoice_email": "invoice@example.com",
"card_list": [
{
"card_external_id": "NL-XXXXXXX1-A1"
}
]
}
Status codes & error messages
Status Code | Message |
---|---|
200 | Success response |
400 | Generic error (check response data field) |
403 | Incorrect API key |