From f261a716be03ff26d230932185aa50c0d0481543 Mon Sep 17 00:00:00 2001 From: munja Date: Mon, 17 Jan 2022 22:58:32 +0100 Subject: [PATCH] chore: automated commit --- docs/api.md | 21 +++++++++++---------- docs/roadmap.md | 18 +----------------- 2 files changed, 12 insertions(+), 27 deletions(-) diff --git a/docs/api.md b/docs/api.md index 47ec2f5..9162788 100644 --- a/docs/api.md +++ b/docs/api.md @@ -15,21 +15,21 @@ Where a project has a requirement to load Excel Files automatically into SAS, fr * Flexibility. Well documented, stable APIs allow consumers to build and extend additional products and solutions. * Cost. API solutions are typically self-contained, quick to implement, and easy to learn. -A Data Controller API enables teams from across an enterprise to easily and securely send data to SAS in a transparent and fully automated fashion. +A Data Controller API would enable teams across an entire enterprise to easily and securely send data to SAS in a transparent and fully automated fashion. -The API will benefit from all of Data Controllers existing [data validation](https://docs.datacontroller.io/dcc-validations/) logic (both frontend and backend), data auditing, [alerts](https://docs.datacontroller.io/emails/), and [security control](https://docs.datacontroller.io/dcc-security/) features. +The API would also benefit from all of Data Controllers existing [data validation](https://docs.datacontroller.io/dcc-validations/) logic (both frontend and backend), data auditing, [alerts](https://docs.datacontroller.io/emails/), and [security control](https://docs.datacontroller.io/dcc-security/) features. -It is also a significant departure from the existing "SAS Content" based deployment, in the following ways: +It is however, a significant departure from the existing "SAS Content" based deployment, in the following ways: 1. Server Driven. A machine is required on which to launch, and run, the API application itself. 2. Fully Automated. There is no browser, or interface, or - human, involved. 3. Extends outside of SAS. There are firewalls, and authentication methods, to consider. -Data Controller does not have an API right now - but we do have plans, just waiting for the right project. The technical solution will differ, depending on the type of SAS Platform being used. There are three types of SAS Platform: +The Data Controller technical solution will differ, depending on the type of SAS Platform being used. There are three types of SAS Platform: -1. Foundation SAS. Regular, Base SAS. -2. SAS EBI. SAS 9, with Metadata. -3. SAS Viya. SAS, cloud enabled. +1. Foundation SAS - regular, Base SAS. +2. SAS EBI - with Metadata. +3. SAS Viya - cloud enabled. And there are three main options when it comes to building APIs on SAS: @@ -84,9 +84,9 @@ On top of this, the DC API part would cover: * Swagger API * Public Documentation -Cost to complete - £10,000 +Cost to complete - £10,000 (fixed) -Given that all three SAS platforms have Foundation SAS available, this option will work everywhere. The only restriction is that the sasjs/server instance **must** be located on the same server as SAS. +Given that all three SAS platforms have Foundation SAS available, this option will work everywhere. The only restriction is that the sasjs/server instance **must** be located on the same server as SAS. ` ## SAS 9 API (SAS EBI) @@ -94,8 +94,9 @@ Given that all three SAS platforms have Foundation SAS available, this option wi This product has one major benefit - there is nothing to install on the SAS Platform itself. It connects to SAS in much the same way as Enterprise Guide (using the SAS IOM). Website: [https://sas9api.io](https://sas9api.io) + Github: [https://github.com/analytium/sas9api](https://github.com/analytium/sas9api) The downside is that the features needed by Data Controller are not present in the API. Furthermore, the tool is not under active development. To build out the necessary functionality, it will require us to source a senior Java developer on a short term contract to first, understand the tool, and secondly, to update it in a sustainable way. -We estimate the cost to build Data Controller API on this mechanism at £25,000. +We estimate the cost to build Data Controller API on this mechanism at £20,000 - but it could be higher. diff --git a/docs/roadmap.md b/docs/roadmap.md index a6cfcf7..f352961 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -91,23 +91,7 @@ Total: **10.5 days** ### API Submissions -Data Controller was designed to capture manual user inputs. However, the validation routines, as well as the power and consistency of the extraction logic, are well suited to automated extraction also. - -To cater for "machine provided" inputs, it will be necessary to surface an API interface. In the first instance, this will cater for Excel Maps. - -The API will be delivered in a container, and will leverage existing data controller services (eg SAS 9 Stored Processes / SAS Viya jobs / SASjs Stored Programs) at the backend. - -#### Estimates - -|Component|Estimate (days)|Description| -|---|---|---| -|Setup|1|Architecture / design| -|Authorisation|1|Enable REST access from client, and further onwards to Viya| -|Service|2|Enable full excel maps API service using standalone framework utility, returning approval link| -|Tests|1.5|Create tests and automated deployments| -|Docs|1|Developer docs,Swagger API docs,Public documentation site along with install instructions| - -Total: **6 days** +Described [here](https://docs.datacontroller.io/api/). ### Change Tracking Currently, transactional changes made to tables in Data Controller are tracked by means of individual CSV files. A user can navigate to the HISTORY tab, find their change, and download a zip file containing all relevant information such as the original excel that was uploaded, SAS logs, the change records (CSV) and the staging dataset.