The Arkane Data Exchange API

api

GEN have for decades now had a comprehensive data processing and analysis service and data supply both inwards and outwards can be via 

SFTP (Secure File Transfer Protocol), a mature system for transferring data into, out of and synchronised with a directory structure. SFTP is widely support and easily automated to allow programmed delivery and retrieval of data over an encrypted connection. SFTP Can support authentication by username/password and/or client certificate, and further allows restrictions by IP. 

WebDAV (Web-based Distributed Authoring and Versioning), a less mature but equally flexible protocol allows file transfer over standard HTTPS channels. Automation of WebDAV is again easily automated but its support is still limited to Windows and Linux (so far). 

RSYNC (Remote SYNC), a mature system for transferring data between systems and generally assumes a synchronisation approach.RSYNC is always automated and can operate over secure channels, but the security is weaker and therefore is generally only operated over encrypted VPN's. 

API (Application Programming Interface), an evolving technology allowing different systems to exchange data ONLY in an automated way over the encrypted HTTPS channel. API's allow disparate systems to exchange data in a simple 'transfer' mode, but also permits more complex functionality such as query based retrieval and realtime processing. 

GEN's Arkane Data Exchange API

We have since our inception had a need to exchange information between customers, and as some may know we started the company in the world of EDI over X.400. Our first data exchange API was ASCII based and over X.25, allowing customers who couldn't stretch for an X.400 connection to still exchange data with X.400 EDI companies. Now X.400 is long gone as is X.25, but we've maintained and expanded on the API year after year and today the Arkane API allows customer A to send data securely to GEN or customer B securely and confidently. The Arkane API allows virtually any payload to be exchanged, whether that be a CSV, XML, JSON or BINARY file, or maybe a command or query or request. Our API also affords an interface into our Big Data Cluster for realtime data appending, validation and cleansing as well as customised functions such as checking a postcode for broadband connectivity, or mobile signal coverage, etc. 

An example API Request would be 

POST arkane.php?target=M487395P4C&urn=U123456799&type=CSV HTTP/1.1
Key: AAAAAAA
Content-Type: text/plain
User-Agent: Some System
Accept: */*
Cache-Control: no-cache
Token: dc803a35-492e-40a1-93c2-a5395328523e,3952e19c-bd09-4c39-9977-a5115c3cd5ec
Accept-Encoding: gzip, deflate
Content-Length: 88
Connection: keep-alive
cache-control: no-cache

Title, Forename, Surname, Phone
Mr,Fred,Bloggs,01159339001
Mr,Joe,Soap,01159339000

In our example we are sending a CSV payload to target (Customer / System) M487395P4C, with a URN (Unique Reference Number / Transaction Number) of U123456799. The actual payload can be seen at the bottom. Our system would receive the payload, store it and then transmit it to the target system OR hold it until the target system requested it. This example is of course completely fictitious but serves to show the simplicity of the API in its basic operation. 

Our Arkane API is heavily authenticated and requires customers to complete a registration process, submit a data flow diagram and document their requirements, after which our team will setup authentication tokens and enable the features requested, and/or build the application required. 

Technical Documentation is available for developers who have subscribed to the programme but this is not publically available.