This is a Visual Studio Express 2013 application i have called Breaker. It is a simple solution of a problem of changes of the schema of API. Changes of schema (format) of endpoints take time to diagnose in complex applications. With this application you can easily save schema of endpoints, and check them for any changes in any time.
Breaker config.txt
Breaker config.txt save
First command checks API for changes. Second saves actual schema of API endpoints for later comparision.
logs
|
--- log-2019-08-05-12_11.txt
snapshot
|
--- endpoint1url.txt
--- endpoint2url.txt
--- schema-current
|
--- endpoint1.txt
--- schema-old
|
--- endpoint1.txt
Logs are saved into logs folder with current time. If 'save' parameter is provided, schema is saved into files, one for each endpoint to snapshot folder. Current schema is saved into 'schema-current' folder. Old schema is saved into 'schema-old' folder.
Since schemas for endpoints are saved into two folders next to each other, it is easy to compare them with file comparision tool, for example WinMerge. Just select "schema-old" and "schema-current" and compare them to see nice information about changes in endpoints.
First line should contain authorisation phrase that will be passed in header of each request
URLs are long. When you compare schema-old and schema-current, they don't show entrirely in WinMerge, or other file comparision tools. To make it easier to compare endpoints you provide in second line of a config file, part of the URL that should be stripped. For example if you have endpoints:
http://somewebsite.com/datacenter/api/new/version2.0/appnew/getcars/secondcar
http://somewebsite.com/datacenter/api/new/version2.0/appnew/getcars/bestcar
Second line should contain "http://somewebsite.com/datacenter/api/new/version2.0/appnew/". That way files in schema-old and schema-current will have these names that are easy to read:
getcars_secondcar.txt
getcars_bestcar.txt
Following lines should be URLS of endpoints to check. Currently only GET requests are supported.
You can download the application (EXE) here: https://github.com/tomaszs/Breaker/releases/download/1.1/Release.zip. Just download it, extract from ZIP file and use Breaker.exe file
This project is not for educational purposes. The code does not follow standards. But it works.
Code is licenced under MIT. In case of any doubts, you can use it for non-commercial and commercial purposes in any environment for free. Feel free to contribute.