Releases: gosqasorg/asset-provenance-tracking
API v0.2-α
API v0.2 alpha: Release, Quickstart, and Walkthrough
The GOSQAS Collaboration are excited to release a major update. Our API is more real than ever.
Disclaimer
This release contains production-ready example code to help users get started using the GDT API. These examples are not intended to be exhaustive, and are intended rather to illustrate concepts to help orgs understand how to create internal tooling to meet their bespoke needs.
The unofficial community SDK is here.
Features + Scope
Our fundamental source of truth are our tests. They are here.
Supported Features
Creating
- New Device ID Keys
- Records, with: Name, Description, Tags
- Groups, with: Name, Description, Tags
Updating
- Records + Individual Group Member Record History Updates, with: Description, Tags
Reading
- Records, with: Name, Description, Tags
- Individual Group Member Records, with: : Name, Description, Tags
Notes
- Bulk creation of groups is limited to 500 items. Contact us if you need more.
Quickstart
Fork and clone the community sdk.
How To Write Code That Uses The GDT API.
The best way to use our API is to follow our tests. These are our primary source of truth. Notice the similarity here between one of the record creation tests and the Community SDK's createSimpleRecord function.
Most of the heavy lifting has already been done, and nearly all of our test code can be lifted and used to create tools that perform the same operations validated by our tests. Of course, some adjustment is needed, e.g., test-specific functions like expect(), describe(), and it() are part of the vitest library and are not needed to use our API.
If there's something you want to do, the first thing to do is look it up in our tests.
API v0.1-α
API v0.1 alpha: Release, Quickstart, and Walkthrough
GOSQAS Engineering are proud to announce the the very first preview of our GDT API. We have a lot in store for our next several releases, broader documentation, and code examples.
This quickstart guide and walkthrough is intended to be accessible by a broad audience. Some computer literacy is assumed: being able to open a terminal, and create a text document using the editor of your choice is all that's needed. Node is assumed to be installed.
Key takeaways intended are the classic API notes: how to use our API, and what the output data will look like. To make this preview extra special we've bundled it in an example kit you can use for real.
Quickstart Guide
To get started, follow these steps. For visual learners, the screenshot below shows these steps.
- Open a terminal, create a new text document, copy the code below, paste, save as "read-record.js", quit.
- Make executable by
chmod +x read-record.js - If you run it wrong it will tell you how to use it, so run it wrong by
./read-record.js - The example it prints is a real record id that we actively use in API testing. Copy and paste that.
- Peruse the data. You will see friendly log messages from our excellent devs.
#!/usr/bin/env node
if (process.argv.length !== 3) {
console.error('Usage: ./read-record.js <record_id>');
console.info('Example: ./read-record.js Ra1rnStUK7CctNehGVWtDa')
process.exit(1);
}
const recordId = process.argv[2];
async function main(recordId) {
var response = await fetch(`https://gdtprodbackend.azurewebsites.net/api/provenance/${recordId}`)
return await response.json();
}
var data = await main(recordId)
console.info(data)
Visual Quickstart
Final Thoughts
This script will read any GDT record; all that's needed is the key. Use it in testing or in production.
What's Changed
- remove device id from /device page by @devhawk in #30
- Visual styling of Provenance records page by @devhawk in #33
- /info redirect + project description on home page by @devhawk in #32
- GIla updates by @devhawk in #35
- Rob batch download by @RobertLRead in #36
- removing Device ID as per issue #41 by @gosqas in #42
- Move existing app into packages/legacy folder by @devhawk in #53
- Adding new frontend by @K42IE in #54
- fix: Makes minor copywrite updates to readme & adds issue templates by @darigovresearch in #59
- fix: Makes commands one click copyable & easier to follow by @darigovresearch in #60
- Add Azure Function Backend Project by @devhawk in #57
- Removed hamburger menu from legacy frontend by @K42IE in #70
- feat: Adds license section to repo by @darigovresearch in #78
- Update README.m with Contributing section.... by @RobertLRead in #71
- Create LocationMonitoring.md by @RobertLRead in #83
- Create SECURITY.md by @RobertLRead in #82
- Adding attachment functionality by @K42IE in #86
- Fix backend folder to enable deployment from this repo by @devhawk in #109
- Bootstrap is now available... by @RobertLRead in #111
- Create Enlarged Image Model onClick with bootstrap by @K42IE in #118
- Container system by @judithweng in #85
- Tag Coloring by @RobertLRead in #105
- changing favicon to GOSQAS favicon #94 by @RobertLRead in #104
- Assorted Backend by @devhawk in #122
- Changed Naming Error by @K42IE in #126
- Forbidden Tags by @K42IE in #130
- Container system - adding children after creation by @judithweng in #134
- Updated main start page code by @noramoor2007 in #137
- Origin/coco fix words by @RobertLRead in #127
- Fix reporting keys, only admin keys can issue recalls by @judithweng in #140
- create form to customize children names by @judithweng in #142
- Notification Sign up Form by @K42IE in #147
- These are some tiny tweaks to wording that I made based on Nora's suggestions. by @RobertLRead in #146
- Match front page and device key page to style guide by @judithweng in #149
- Create .gitkeep by @ninalahoti in #161
- preventing circular relationships by @judithweng in #153
- Deploy Front End by @devhawk in #154
- Title bar is now a default layout (on all pages) by @K42IE in #169
- Fix warnings by @K42IE in #174
- Updated Navbar by @anushashringi042 in #184
- Fixed textTooLink warnings by @K42IE in #175
- Nav-bar Formating Update by @K42IE in #187
- Fixed Device Page Text Styling by @K42IE in #194
- create error when adding a child that does not exist by @judithweng in #162
- Update main page to match style guide by @judithweng in #183
- Fix direct navigation to device page by @judithweng in #195
- Adding AGPL License Commentary #160 by @anushashringi042 in #165
- Fixes for issue #189 by @agilpatr in #207
- Button to download children keys by @judithweng in #198
- Fixing color tag bug by @judithweng in #208
- Working on download function with the file name by @chihlinc in #196
- This PR takes an "about" page and "contact" page from Nora's code... by @RobertLRead in #216
- Rob illicit words by @RobertLRead in #218
- Changing csv format by @judithweng in #225
- Edit CSS from 'About' and 'Contact' page by @judithweng in #223
- Update the placeholder and make it gray out by @chihlinc in #219
- Update feed.vue to match the design by @chihlinc in #217
- "Jump To" scroll section in provenance page by @judithweng in #213
- change the toggle design. by @devhawk in #229
- Fix hamburger bar styling by @agilpatr in #231
- New download button and change the QR code design by @chihlinc in #233
- Style new home page by @judithweng in #226
- Create 'How it works' page by @judithweng in #234
- Coco change upload format - accept everytype of files, including pdf. by @chihlinc in #238
- Created a button component by @agilpatr in https://github.com/gosqasorg/asset-provenance-tracki...