Connect systems via REST or SOAP and keep data in sync
Is your data being copied by hand between two systems today, or does a partner require an API? We connect existing applications via REST or SOAP, synchronise data between them and send transactional emails and notifications from your workflows.
- Full stack and DevOps since 2012
- API development in ColdFusion, Lucee, PHP and Python
- Reply within one working day
When it is time for an API
Data is transferred by hand
Orders, customer data or invoices are exported from one system and typed into another. That takes time, and typing errors only come to light when a customer asks.
A partner requires an API
A client, supplier or service provider wants to exchange data automatically and sends you the description of their API. We implement the API in your system.
Emails and notifications are missing or arrive too late
Confirmations, invoices or status messages from your workflows are sent by hand or not at all. We build an API or connect your system to the service provider's API.
Should an old system itself serve as a service, so that new software builds on its logic? Then start with Use the monolith as a web service.
If emails are sent but land in spam, we help with that too: Emails land in spam.
What we connect
- REST with JSON: We call other systems' APIs or build your own API for others to call.
- SOAP with XML: We connect services according to their WSDL description, even if your own system is older.
- Data synchronisation: between applications and databases, at fixed intervals or on every change, with a log of the records transferred.
- Transactional emails and notifications: from your workflows, with SPF, DKIM and DMARC, so that they pass the recipients' checks.
The technology follows your environment, for example ColdFusion, Lucee or PHP. These are examples, not ready-made modules. We define the scope based on your case.
How an API is built: from the example to live operation
-
Clarify the case
Using an example, you describe what goes in, what comes out, who calls the API and how often. From this we estimate the effort.
-
API description
We write down endpoints or messages, data fields, error codes and examples of requests and responses. You and your partner agree the description before we build.
-
Implementation with tests
We test with fictitious data, including the error cases: partner unreachable, duplicate records, invalid values.
-
Authentication and log
Every call requires authentication and is logged. The description states how the API reacts to outages.
-
Going live
We first put the API into operation against a test system, where your partner offers one, and in production after your approval. We watch the first runs closely.
-
Handover
You receive the description, example calls and tests. The code is in your repository.
API, data synchronisation or old system as a service?
| Criterion | API between systems | Regular data synchronisation | Old system as a service |
|---|---|---|---|
| Suits you if | Two systems need to call each other, for example on an order or a status change. | The same data is held in two systems and should match without anyone retyping it. | An old system contains logic that new applications are to use. |
| What you get | Documented calls in both directions, with authentication and a log. | Synchronisation at fixed intervals or on every change, with a log of the records. | An API in front of the old system and a plan for building new software alongside it. |
What we do not promise
- An integration is only as reliable as the systems at both ends. If one fails, the data arrives only once it is reachable again.
- No synchronisation fixes errors in the source data. We make them visible in the log, but your specialists have to correct them.
- If a partner changes their API without notice, the integration has to follow. The log shows such errors early.
Our engineers' experience with APIs, data and email
- APIs
- REST with JSON and SOAP with XML
- Databases
- MySQL and MariaDB since 2012, plus Microsoft SQL Server, PostgreSQL and Oracle
- Transactional email
- Sending from ColdFusion, Lucee and PHP with bounce and unsubscribe handling, SPF, DKIM and DMARC
How we implement the API
- At the start we work with test accounts where your partner offers them.
- Code, credentials and documentation stay with you.
- The API goes live only after your approval.
- We also tell you when an API of your own is not worth it, for example because an existing export is enough.
And if someone on our side drops out? We write the documentation on request. The repository is normally with you. We arrange cover on request.
APIs and integrations are part of our service Development and integration.
Questions about APIs and data synchronisation
Do you build and integrate APIs (REST, SOAP)?
Yes. We build APIs and connect systems, with REST and JSON as well as SOAP and XML, including the synchronisation of data between applications. Typical use cases are described under Development and integration.
Can an old system without an API be connected as well?
In many cases, yes. Depending on the system, we read data from its database, exchange files or add a small API to the old code. A look at the code and the database shows which approach will hold.
Should the old system serve new applications as a service for the long term, the page Use the monolith as a web service shows how.
What happens when a connected system fails?
The integration retries failed calls and holds data in a queue until the other system is reachable again. Every call is logged, so you can trace what arrived and what did not.
We agree with you beforehand how often it retries, who is notified and when, and what happens next. The behaviour during outages is part of the written description.
Can you guarantee that our emails reach the inbox?
A delivery guarantee is not technically possible, because the receiving server decides. We make sure delivery is technically correct, compliant with the mailbox providers' policies and monitored. SPF, DKIM and DMARC are set up correctly. The reputation of your senders is watched, and every system that sends on your behalf is on record. After that we measure the result.
What is your hourly rate?
It depends on scope, engagement model and urgency. Describe your situation briefly and, after a conversation, we will send you an offer. You do not need a budget for that. We quote fixed prices for the entry products.
When can you start?
You will receive a first reply within one working day. When we begin work depends on our current workload and on the scope. We give you a binding answer in the intro call. If it is urgent, the 48-hour emergency assessment starts as soon as we have access to the system.
Which systems need to talk to each other?
Tell us which systems are involved, what should go in and come out, and who calls the API. We reply within one working day.