{"info":{"_postman_id":"f8b30dce-6e6c-4479-a938-4de1fa19f019","name":"UNOVA API Documentation","description":"<html><head></head><body><p>Welcome to UNOVA API Documentation.</p>\n<p>Using this API you can push your data to the blockchain in the form of <a href=\"https://documenter.getpostman.com/view/8783908/SVtVSnkU?fbclid=IwAR0GJdZHb-3Bz3_IZOuK5-QesJsC0MwPSswZ8NxHujoX131RvymaoJv9bPk&amp;version=latest#547bd1f9-b369-46f9-8a91-31096d943bf7\">Assets</a> and <a href=\"https://documenter.getpostman.com/view/8783908/SVtVSnkU?fbclid=IwAR0GJdZHb-3Bz3_IZOuK5-QesJsC0MwPSswZ8NxHujoX131RvymaoJv9bPk&amp;version=latest#a235ecfa-94ed-46f7-bf9d-5bcecd43e76b\">Events</a>.</p>\n<h1 id=\"authentication\">Authentication</h1>\n<p>Before you can start interacting with API you need to create an account. An account is a pair: address and secret.Using this key pair, a bearer token can be created to call the API. For more details jump to <a href=\"https://documenter.getpostman.com/view/8783908/SVtVSnkU?fbclid=IwAR0GJdZHb-3Bz3_IZOuK5-QesJsC0MwPSswZ8NxHujoX131RvymaoJv9bPk&amp;version=latest#fcf86cde-58ef-49b3-9781-c90448ea5984\">Authentication - Token section</a></p>\n<h1 id=\"key-points\">Key points</h1>\n<h2 id=\"unique-id\">Unique ID</h2>\n<p>This is the unique identifier of each asset in the system. It could be a barcode,GTIN number etc</p>\n<h2 id=\"assets-referenced-or-added\">Assets Referenced Or Added</h2>\n<p>An asset creation will have either of the three phases</p>\n<ol>\n<li>Commission</li>\n<li>Transformation</li>\n<li>Aggregation</li>\n</ol>\n<p>In case of Transformation and Aggregation, it is necessary to establish a link between the assets involved in the action, so as to offer complete traceability. 'Assets Referenced Or Added' help in establishing this link.It refers to the UniqueIDs of the parent asset, or UniqueIDs of assets that went into the formation of the current asset.</p>\n<p>This field is not considered during the Commission phase as it is the first occurrence of the asset.</p>\n<h2 id=\"unova-chain-builder---your-chain\">Unova Chain Builder - Your Chain</h2>\n<p>The purpose of the Unova Chain builder is to help you visualize, understand and create the events (or asset creations) that will occur inside your own company. This tool can also be considered as a settings page, that will be used in other aspects of the Unova platform and impact the API. It is thus important you take care when building your chain and be accurate with regard to the settings you select.</p>\n<p>In short, the chain builder lets you select and configure asset creations and events in a chronological order to form a chain.</p>\n<p>Once you have added an event type (or asset creation type) to your chain, this will also be the place for testing,validating and visualizing the data you are creating (either via the API or via manual form input). </p>\n<h1 id=\"success-response\">Success Response</h1>\n<p>Response consists of following blocks of information</p>\n<ol>\n<li>Asset/Event Metadata from Blockchain</li>\n<li>Bundle Metadata from Blockchain</li>\n<li>Contents of data request</li>\n</ol>\n<h1 id=\"errors\">Errors</h1>\n<p>The majority of errors along to the error code provide additional information in body with following format\n{\n  \"reason\": \"What happened\"\n}</p>\n<h1 id=\"immutability\">Immutability</h1>\n<p>Note: \nAll data is immutable, therefore, you will not find update or delete calls.</p>\n<h1 id=\"hashing\">Hashing</h1>\n<p>Hashes are a very important part of proving the persistence and the immutability of the data. All hashes in the are computed using the ethereum standard hashMessage function as described in web3 docs. The underlying hash function is Keccak256.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Authentication","slug":"authentication"},{"content":"Key points","slug":"key-points"},{"content":"Success Response","slug":"success-response"},{"content":"Errors","slug":"errors"},{"content":"Immutability","slug":"immutability"},{"content":"Hashing","slug":"hashing"}],"owner":"113351","collectionId":"f8b30dce-6e6c-4479-a938-4de1fa19f019","publishedId":"TVene8GQ","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"008ED1"},"publishDate":"2021-04-12T16:14:51.000Z"},"item":[{"name":"Authentication - Token","item":[{"name":"Get a token","id":"23e3f685-30a4-4dd7-b8f3-30c58bccc40c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Basic dW5vdmEtY2xpZW50OnVub3ZhLXNlY3JldA=="},{"key":"Content-Type","value":"application/x-www-form-urlencoded"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"username","value":"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3","type":"text"},{"key":"password","value":"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec","type":"text"},{"key":"grant_type","value":"password","type":"text"},{"key":"networkType","value":"test","type":"text"}]},"url":"https://launch.unova.io/unova/oauth/token","urlObject":{"protocol":"https","path":["unova","oauth","token"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[],"_postman_id":"23e3f685-30a4-4dd7-b8f3-30c58bccc40c"}],"id":"a2fce3a3-b0e5-48d2-9951-075a2ef168d1","description":"<p>This API uses OAuth 2.0 (Open Authorization) for token-based authentication and authorization.</p>\n<p>Every call to the API needs a bearer token to be passed in the header. The expiry of this token is set to 3000 secs by default.</p>\n<p><strong>Never share your private key with anyone. This is a security risk.</strong></p>\n","_postman_id":"a2fce3a3-b0e5-48d2-9951-075a2ef168d1"},{"name":"All about Assets","item":[{"name":"What is an Asset?","item":[],"id":"0575423a-5024-4fc0-9803-b02c96ee5368","description":"<p>A digital entity for any physical conceptual element in your supply chain. Depending on the industry it can be a cow, box of apples, an apple, a piece of meat, a lasagna, a lot, batch or box etc. Every asset has a UniqueID that is crypto secured. </p>\n","_postman_id":"0575423a-5024-4fc0-9803-b02c96ee5368"},{"name":"Creating an Asset","item":[{"name":"Mandatory Field List","item":[{"name":"Create Asset - Mandatory Fields Example","id":"0495f10a-752f-45b7-b796-9569c3b5489f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer cfab0df2-628e-4313-8aad-6624fd603515"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Commission\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"name\":\"Birth of Animal\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123593\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"1fe16bd3-c719-4ba8-92a0-fe7f249a3f5c","name":"Create Asset - Mandatory Fields Example","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer cfab0df2-628e-4313-8aad-6624fd603515"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Commission\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"name\":\"Birth of Animal\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123594\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1609","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Tue, 10 Nov 2020 17:05:40 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"Event Response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0xf3f74acd60a8056b2a67f4bf0a21e3609c324f7bb300b7ee14cbeb4ad3a807aa\",\"metadata\":{\"bundleUploadTimestamp\":1605027940,\"bundleId\":null},\"_id\":\"5faac864d94651001ac42b5c\",\"content\":{\"data\":[{\"identifiers\":{\"uniqueID\":[\"BE-1123594\"]}},{\"streetAndNumber\":\"Mechelsestraat 121\",\"organizationName\":\"Farmville Bricovo - BE\",\"companyIdentifier\":\"Primary producer/farm\",\"name\":\"Birth of Animal\",\"creationTimestamp\":1578648027,\"zipcodeAndCity\":\"3000 Leuven\",\"eventType\":\"Commission\",\"assetType\":\"cow\",\"packagingID\":\"Serial\"},{}],\"signature\":\"0xb06a8bfec0f2beb931b326f2247b3781331b730b18287f172d90a633e51915662cfe8ddfeb9e46d541dd63407eb9a1ea65f1a739818bb8e48b7089d059f8b5cd1c\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0xd487113ef05cb54ee96e5b4759b9a9a13a5c7b8bf770a7c51235ef5b8af0bca1\",\"assetId\":\"0x6a643dc65cbd21b0bead59cca85ddc53e64f1d37e242d48094ad1d6f571a4963\",\"timestamp\":1605027940}}},\"meta\":{\"code\":200}},\"Asset Response\":{\"data\":{\"organizationId\":198,\"metadata\":{\"bundleUploadTimestamp\":1605027940,\"bundleId\":null},\"assetId\":\"0x6a643dc65cbd21b0bead59cca85ddc53e64f1d37e242d48094ad1d6f571a4963\",\"_id\":\"5faac864d94651001ac42b5b\",\"content\":{\"signature\":\"0xaca0a8161fe0b3f258ab78aa1b7afcc265671a9a1f878505c82ba7b5f5bf67ef473031ff20c985b25e472126ea553532d3c98b5fea318880c52ed84865fa8c081b\",\"idData\":{\"sequenceNumber\":3896049694169529,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"timestamp\":1605027940}}},\"meta\":{\"code\":200}}},\"message\":\"Asset created successfully\",\"status\":\"Success\"}"}],"_postman_id":"0495f10a-752f-45b7-b796-9569c3b5489f"}],"id":"3d7e3019-76ef-47cf-bfc4-56aa8d7791fa","description":"<p><br /><br /></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field Name</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>typeOfRequest</td>\n<td>\"asset\"</td>\n</tr>\n<tr>\n<td>privateKey</td>\n<td>Private Key of Account</td>\n</tr>\n<tr>\n<td>companyIdentifier</td>\n<td>Type of Organization. Accepts only \"Primary producer/farm\"/\"Warehouse\"/\"Manufacturer of goods\"/\"Packaging\"/\"Distribution center\"/\"Store\"/\"Transporter\"</td>\n</tr>\n<tr>\n<td>name</td>\n<td>Name of asset creation. Validated against the asset creations added to Your Chain via the Unova Chain Builder</td>\n</tr>\n<tr>\n<td>eventType</td>\n<td>Type of asset creation. Validated against the eventType selected in Your Chain via the Unova Chain Builder. Accepts only \"Commission\"/\"Transformation\"/\"Aggregation\"</td>\n</tr>\n<tr>\n<td>packagingID</td>\n<td>Type of packaging of asset. Validated against the packagingID selected in Your Chain via the Unova Chain Builder. Accepts only \"Serial\"/\"Pallet\"/\"Lot\"</td>\n</tr>\n<tr>\n<td>assetType</td>\n<td>Type of Asset being traced</td>\n</tr>\n<tr>\n<td>uniqueID</td>\n<td>Unique ID of the asset - eg GTIN number</td>\n</tr>\n<tr>\n<td>timestamp</td>\n<td>Timestamp of asset creation. Validated input. Format : \"yyyy-mm-dd hh:mm:ss\"</td>\n</tr>\n<tr>\n<td>organizationName</td>\n<td>Name of Organization</td>\n</tr>\n<tr>\n<td>streetAndNumber</td>\n<td>Location of Organization - Street Name &amp; Street Number</td>\n</tr>\n<tr>\n<td>zipcodeAndCity</td>\n<td>Location of Organization - Zipcode &amp; City</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"3d7e3019-76ef-47cf-bfc4-56aa8d7791fa"},{"name":"Additional Field Lists","item":[{"name":"Create Asset - Additional Fields Example","id":"fb499dd9-f0fd-447d-ad1b-92b420a8103a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer 244576a5-b925-45fe-8c0e-6fabd7301eab"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Commission\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"name\":\"Birth of Animal\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123597\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\",\n\"herdcode\":\"HC0097\",\n\"birthattachment\":\"BE-1234324\",\n\"fur color\": \"Brown\",\n\"race\":\"Limousin\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"fcc91677-cb1c-44b1-b5cf-8ca0b55fdf1f","name":"Create Asset - Additional Fields Example","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer cfab0df2-628e-4313-8aad-6624fd603515","warning":""}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Commission\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"name\":\"Birth of Animal\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123597\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\",\n\"herdcode\":\"HC0097\",\n\"birthattachment\":\"BE-1234324\",\n\"fur color\": \"Brown\",\n\"race\":\"Limousin\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1667","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Tue, 10 Nov 2020 17:08:49 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"Event Response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0x658e2f8602254b603a3c0aa11fbef80ecd32a3baa2e6d336a0fec0e949d3d68a\",\"metadata\":{\"bundleUploadTimestamp\":1605028129,\"bundleId\":null},\"_id\":\"5faac921d94651001ac42b5e\",\"content\":{\"data\":[{\"identifiers\":{\"uniqueID\":[\"BE-1123597\"]}},{\"organizationName\":\"Farmville Bricovo - BE\",\"race\":\"Limousin\",\"eventType\":\"Commission\",\"assetType\":\"cow\",\"packagingID\":\"Serial\",\"fur color\":\"Brown\",\"streetAndNumber\":\"Mechelsestraat 121\",\"companyIdentifier\":\"Primary producer/farm\",\"name\":\"Birth of Animal\",\"creationTimestamp\":1578648027,\"zipcodeAndCity\":\"3000 Leuven\",\"herdcode\":\"HC0097\"},{}],\"signature\":\"0xdf7cfe7c35fb2fa43dac929bc0ea3ea1f30856b5264a25e05f1cf94540fad498447e517e81dc393853269ba281124dba19b824213c07042f4668330abe1392761b\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0xdbe6f766e98b078b3029344bba3347db5bc6b6121301cdaba970b542a65a83b4\",\"assetId\":\"0x3dd5e9b2dbc8fdb4315b721c25d092cb0bfc40554944c6f121654bacf2196f1c\",\"timestamp\":1605028129}}},\"meta\":{\"code\":200}},\"Asset Response\":{\"data\":{\"organizationId\":198,\"metadata\":{\"bundleUploadTimestamp\":1605028129,\"bundleId\":null},\"assetId\":\"0x3dd5e9b2dbc8fdb4315b721c25d092cb0bfc40554944c6f121654bacf2196f1c\",\"_id\":\"5faac921d94651001ac42b5d\",\"content\":{\"signature\":\"0xc445ab448d8257f959e2bd21c638b922651e26b248337b8d3bc188d3c1156c6938730dfac1403e413c6057e2fe48679ab8c7839e0ef74316854bef6731db445f1c\",\"idData\":{\"sequenceNumber\":9716462710578122,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"timestamp\":1605028129}}},\"meta\":{\"code\":200}}},\"message\":\"Asset created successfully\",\"status\":\"Success\"}"}],"_postman_id":"fb499dd9-f0fd-447d-ad1b-92b420a8103a"}],"id":"7af331bd-814c-465b-bce2-695d6a8fc98f","description":"<p>Apart from the mandatory fields,each company needs to provide relevent data to the asset creations. The API accepts any number of additional fields that the company system might hold, and want to send to the blockchain. Here we use farm as an example and append additional fields with respect to the cow birth event.</p>\n","_postman_id":"7af331bd-814c-465b-bce2-695d6a8fc98f"},{"name":"Add documents","item":[{"name":"Add documents - Asset - Example","id":"3d1ad474-2cf1-4d4c-be85-889702c8496c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer cfab0df2-628e-4313-8aad-6624fd603515"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Commission\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"name\":\"Birth of Animal\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123556\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\"\n}","type":"text"},{"key":"files","type":"file","src":"Sample document.docx"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"db5ac366-2353-4b9f-a8ad-75655cd40159","name":"Add documents - Asset - Example","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer cfab0df2-628e-4313-8aad-6624fd603515","warning":""}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Commission\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"name\":\"Birth of Animal\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123556\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\"\n}","type":"text"},{"key":"files","type":"file","src":["Sample document.docx"]}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1757","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Tue, 10 Nov 2020 17:11:28 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"Event Response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0x1d23dc41b14b22af1d43087754d6bec6de2a1f8e0d7f9740ee754833199b33e0\",\"metadata\":{\"bundleUploadTimestamp\":1605028288,\"bundleId\":null},\"_id\":\"5faac9c0d94651001ac42b60\",\"content\":{\"data\":[{\"identifiers\":{\"uniqueID\":[\"BE-1123556\"]}},{\"streetAndNumber\":\"Mechelsestraat 121\",\"organizationName\":\"Farmville Bricovo - BE\",\"companyIdentifier\":\"Primary producer/farm\",\"name\":\"Birth of Animal\",\"creationTimestamp\":1578648027,\"zipcodeAndCity\":\"3000 Leuven\",\"eventType\":\"Commission\",\"assetType\":\"cow\",\"packagingID\":\"Serial\"},{\"documents\":{\"Sample document_2020_11_10_17_11_27\":{\"url\":\"https://unova-chain-assets-event-files.s3.eu-west-3.amazonaws.com/Sample_document.docx\"}}}],\"signature\":\"0x67ee879f94aec45368fbe6bf754dd591362c6ed2bf8591df91cb1cbcd09c951b578c007cd11660cb9bd9a7bbe3b78589c6403c82aa9022565298a58de7795d211c\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0x93a8590fbfcf7f9976679d1b3e79fa6e2ab014373f4f88b2fce1903b6bd8b8bc\",\"assetId\":\"0x1dbbbba669da4a91c80f40e4a61d87481935131375f47deb0f3bb1eac32ef2b3\",\"timestamp\":1605028288}}},\"meta\":{\"code\":200}},\"Asset Response\":{\"data\":{\"organizationId\":198,\"metadata\":{\"bundleUploadTimestamp\":1605028288,\"bundleId\":null},\"assetId\":\"0x1dbbbba669da4a91c80f40e4a61d87481935131375f47deb0f3bb1eac32ef2b3\",\"_id\":\"5faac9c0d94651001ac42b5f\",\"content\":{\"signature\":\"0x405f6bbc041ecc09569491eaf752fef4ba26a7af152dcf2f267534a3703b444473e8b020805e4e570b7f188aa009c7742e9112e613351da30f6501985e6b5fbe1b\",\"idData\":{\"sequenceNumber\":2530053501566378,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"timestamp\":1605028288}}},\"meta\":{\"code\":200}}},\"message\":\"Asset created successfully\",\"status\":\"Success\"}"}],"_postman_id":"3d1ad474-2cf1-4d4c-be85-889702c8496c"}],"id":"9a732524-28db-4c26-92d3-e1ace46500dc","description":"<p>The API provides the functionality of adding documents to the asset creation. The API accepts form-data hence documents can be easily attached. However, if the asset is already created without attaching any documents, an event needs to be created to attach the said documents.</p>\n","_postman_id":"9a732524-28db-4c26-92d3-e1ace46500dc"},{"name":"Referencing","item":[{"name":"Create asset with reference - Example","id":"1b645261-794a-4f78-af29-5b357a0de7a7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer 7986c0c7-e0e0-40e9-9a6c-4a1e3b4ca489"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Transformation\",\n\"companyIdentifier\":\"Manufacturer of goods\",\n\"name\":\"Piece of meat creation\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123556.1\",\n\"assetsReferencedOrAdded\":\"BE-1123556\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"9ecd19ef-865b-4137-8c8d-a92d181dc876","name":"Create asset with reference - Example","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer 7986c0c7-e0e0-40e9-9a6c-4a1e3b4ca489","warning":""}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"asset\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Transformation\",\n\"companyIdentifier\":\"Manufacturer of goods\",\n\"name\":\"Piece of meat creation\",\n\"assetType\":\"cow\",\n\"uniqueID\":\"BE-1123556.1\",\n\"assetsReferencedOrAdded\":\"BE-1123556\",\n\"timestamp\":\"2020-01-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"packagingID\":\"Serial\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1707","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Tue, 10 Nov 2020 17:30:19 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"Event Response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0xabed9245468b8d5853a60c221dfd436521279c2f75efabe2ccec46ff4b28be4f\",\"metadata\":{\"bundleUploadTimestamp\":1605029419,\"bundleId\":null},\"_id\":\"5faace2bd94651001ac42b62\",\"content\":{\"data\":[{\"identifiers\":{\"uniqueID\":[\"BE-1123556.1\"],\"referenceID\":[\"0x1dbbbba669da4a91c80f40e4a61d87481935131375f47deb0f3bb1eac32ef2b3\"]}},{\"streetAndNumber\":\"Mechelsestraat 121\",\"organizationName\":\"Farmville Bricovo - BE\",\"companyIdentifier\":\"Manufacturer of goods\",\"name\":\"Piece of meat creation\",\"creationTimestamp\":1578648027,\"zipcodeAndCity\":\"3000 Leuven\",\"eventType\":\"Transformation\",\"assetType\":\"cow\",\"packagingID\":\"Serial\"},{}],\"signature\":\"0x05dbfe1b4d2ddd19a7a5acf84154d6766cc4e7cac87572e4d4105d1c55784c014d869a9a8350ca96d856982790d3c9e9252b2ca6b220bce2b9e558ae592939fa1c\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0xf31d6967c04c6d4f45b07e6c26dad1a68e3aa026984fd4c24d88c4b9ef1ff388\",\"assetId\":\"0xb5a7372ebfe7f1a9a8e62fbd50e173ec10d411e31377951511e164370b9cf3ce\",\"timestamp\":1605029419}}},\"meta\":{\"code\":200}},\"Asset Response\":{\"data\":{\"organizationId\":198,\"metadata\":{\"bundleUploadTimestamp\":1605029419,\"bundleId\":null},\"assetId\":\"0xb5a7372ebfe7f1a9a8e62fbd50e173ec10d411e31377951511e164370b9cf3ce\",\"_id\":\"5faace2bd94651001ac42b61\",\"content\":{\"signature\":\"0x885bed0a2eda871988e9f1f80f357ac6abea3e7710e3979d2c61f66af98f49db35beea9bbfa0f96da0a5ce222d3e0f8c9a657396321c5a3b7dd6dd8e831c15271c\",\"idData\":{\"sequenceNumber\":1000283350435877,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"timestamp\":1605029419}}},\"meta\":{\"code\":200}}},\"message\":\"Asset created successfully\",\"status\":\"Success\"}"}],"_postman_id":"1b645261-794a-4f78-af29-5b357a0de7a7"}],"id":"4d1fdf13-3b65-4691-bcbb-72fa9c45d25a","description":"<p>Referencing (assetsReferencedOrAdded) is necessary to link the assets together and visualize the whole chain. Here we use slaughter house as an example, where of a piece of meat (asset) is being created with cow (asset) as the reference (assetsReferencedOrAdded)</p>\n","_postman_id":"4d1fdf13-3b65-4691-bcbb-72fa9c45d25a"}],"id":"9fdb2bf9-8689-44ed-8891-ad40695df238","description":"<p>To create an asset, the API expects a list of mandatory fields to be passed,with certain validations in place.In addition to the mandatory fields,the field list is open for use, and any number of data points can be posted to the API. For each company, a suggested list of fields is mentioned in the following sections.</p>\n","_postman_id":"9fdb2bf9-8689-44ed-8891-ad40695df238"}],"id":"df2d347c-8132-429b-ba65-0f8bee54084c","_postman_id":"df2d347c-8132-429b-ba65-0f8bee54084c","description":""},{"name":"All about Events","item":[{"name":"What is an Event? ","item":[],"id":"24a904e2-6d48-436f-a5fa-85e325129202","description":"<p>Events record any relevant and time-stamped information that happened to one or multiple assets. Examples are transports, observations, quality controls medicines administered etc...</p>\n<p>All events must contain the name of the event, uniqueID, location, (street &amp; number, zipcode &amp; city) and any additional data field. Events are always associated with an asset. </p>\n","_postman_id":"24a904e2-6d48-436f-a5fa-85e325129202"},{"name":"Creating an Event","item":[{"name":"Mandatory Field List","item":[{"name":"Create Event - Mandatory Fields Example","id":"733c76d4-61da-438f-867d-36f9081108ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"","type":"text"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"bf9b8e83-f4dc-4376-bb3b-121ab2e92f84","name":"Create Event - Mandatory Fields Example","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d","warning":""}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"event\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Inbound transport\",\n\"name\":\"Arrival of cows-1\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"uniqueID\":\"BE-1123593\",\n\"timestamp\":\"2020-03-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1029","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Wed, 11 Nov 2020 16:29:57 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0xfd7cabbbb36a9c5806e373a70728436c88cf3446020e53dd704848fd55b59d04\",\"metadata\":{\"bundleUploadTimestamp\":1605112197,\"bundleId\":null},\"_id\":\"5fac1185d94651001ac42b69\",\"content\":{\"data\":[{\"streetAndNumber\":\"Mechelsestraat 121\",\"organizationName\":\"Farmville Bricovo - BE\",\"companyIdentifier\":\"Primary producer/farm\",\"name\":\"Arrival of cows-1\",\"creationTimestamp\":1583832027,\"zipcodeAndCity\":\"3000 Leuven\",\"eventType\":\"Inbound transport\"},{\"identifiers\":{\"uniqueID\":[\"BE-1123593\"]}},{}],\"signature\":\"0x45ec84ee55bbb60bb0fa7d76161147d48bfafef1efd91f3277fb4a6536e202587989f694cd0109cc4056386b915889ae00cae267244d5e4ff1de1654e1c1cc621b\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0xbdeba89e95c9565dcad931e43e58376cf48cdb104e24305e9abf2dc73c6887b0\",\"assetId\":\"0x12005f9498d59877bb9fd47589b118f1d390289a2d4280f3959297f6adfb735d\",\"timestamp\":1605112196}}},\"meta\":{\"code\":200}},\"message\":\"Event created successfully\",\"status\":\"Success\"}"}],"_postman_id":"733c76d4-61da-438f-867d-36f9081108ff"}],"id":"8ab08756-3a40-4dbc-abd4-42a208f704e2","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field Name</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>typeOfRequest</td>\n<td>\"event\"</td>\n</tr>\n<tr>\n<td>privateKey</td>\n<td>Private Key of Account</td>\n</tr>\n<tr>\n<td>companyIdentifier</td>\n<td>Type of Organization. Accepts only \"Primary producer/farm\"/\"Warehouse\"/\"Manufacturer of goods\"/\"Packaging\"/\"Distribution center\"/\"Store\"/\"Transporter\"</td>\n</tr>\n<tr>\n<td>name</td>\n<td>Name of event. Validated against the events added to Your Chain via the Unova Chain Builder</td>\n</tr>\n<tr>\n<td>eventType</td>\n<td>Type of event. Validated against the eventType selected in Your Chain via the Unova Chain Builder. Accepts only \"Transport Inbound\"/\"Transport Outbound\"/\"Observation\"/\"Others\"</td>\n</tr>\n<tr>\n<td>uniqueID</td>\n<td>Unique ID of the asset - eg GTIN number</td>\n</tr>\n<tr>\n<td>timestamp</td>\n<td>Timestamp of asset creation. Validated input. Format : \"yyyy-mm-dd hh:mm:ss\"</td>\n</tr>\n<tr>\n<td>organizationName</td>\n<td>Name of Organization</td>\n</tr>\n<tr>\n<td>streetAndNumber</td>\n<td>Location of Organization - Street Name &amp; Street Number</td>\n</tr>\n<tr>\n<td>zipcodeAndCity</td>\n<td>Location of Organization - Zipcode &amp; City</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"8ab08756-3a40-4dbc-abd4-42a208f704e2"},{"name":"Additional Field Lists","item":[{"name":"Create Event - Additional Fields Example","id":"68e18dc7-2660-4f35-8ac6-11b2bdf2b3d1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"","type":"text"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"bcc2bd92-1462-498f-a09c-1e48036c1eda","name":"Create Event - Additional Fields Example","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d","warning":""}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"event\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Inbound transport\",\n\"name\":\"Arrival of cows-1\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"uniqueID\":\"BE-1123556\",\n\"timestamp\":\"2020-03-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"transport company\":\"Gheys Transport\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1067","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Wed, 11 Nov 2020 16:30:40 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0xbb1346dbc72758cc0d5c694f744e624c6ea91263f8825e7aa40adaa2a1779c38\",\"metadata\":{\"bundleUploadTimestamp\":1605112240,\"bundleId\":null},\"_id\":\"5fac11b0d94651001ac42b6a\",\"content\":{\"data\":[{\"streetAndNumber\":\"Mechelsestraat 121\",\"organizationName\":\"Farmville Bricovo - BE\",\"companyIdentifier\":\"Primary producer/farm\",\"name\":\"Arrival of cows-1\",\"transport company\":\"Gheys Transport\",\"creationTimestamp\":1583832027,\"zipcodeAndCity\":\"3000 Leuven\",\"eventType\":\"Inbound transport\"},{\"identifiers\":{\"uniqueID\":[\"BE-1123556\"]}},{}],\"signature\":\"0x2bdcc5cf6f0d8e5fa91943e6794dc54b092d9a6a25aa310afcdf1fdaedc1ff3f5f08964cc6824e06fc801be9793861b133c35ce3956e9d4be6831a656abf0e191b\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0x59bb25746585f120a587f5724605c5b26d21641a3e1c53f946b8b9aca504b78f\",\"assetId\":\"0x1dbbbba669da4a91c80f40e4a61d87481935131375f47deb0f3bb1eac32ef2b3\",\"timestamp\":1605112240}}},\"meta\":{\"code\":200}},\"message\":\"Event created successfully\",\"status\":\"Success\"}"}],"_postman_id":"68e18dc7-2660-4f35-8ac6-11b2bdf2b3d1"}],"id":"33318194-41a8-4629-aa0f-3717a5990afb","description":"<p>Apart from the mandatory fields,each company needs to provide relevent data to the events. The API accepts any number of additional fields that the company system might hold, and want to send to the blockchain. Here we use farm as an example and append additional fields with respect to the veterinary event.</p>\n","_postman_id":"33318194-41a8-4629-aa0f-3717a5990afb"},{"name":"Add Documents","item":[{"name":"Add documents - Event - Example","id":"1f691be6-2276-435f-b15d-11c4b4640464","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"","type":"text"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"1f42eb6f-1541-4b10-84f5-8d317f2ceb22","name":"Add documents - Event - Example","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d","warning":""}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"event\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Inbound transport\",\n\"name\":\"Arrival of cows-1\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"uniqueID\":\"BE-1123556.1\",\n\"timestamp\":\"2020-03-10 09:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"transport company\":\"Gheys Transport\"\n}","type":"text"},{"key":"files","type":"file","src":[]}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1216","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Wed, 11 Nov 2020 16:31:09 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0xe2630af2e3fa096141dddfcab8cda393251017b9fbd614a4ab08ddf0d2a2182f\",\"metadata\":{\"bundleUploadTimestamp\":1605112269,\"bundleId\":null},\"_id\":\"5fac11cdd94651001ac42b6b\",\"content\":{\"data\":[{\"streetAndNumber\":\"Mechelsestraat 121\",\"organizationName\":\"Farmville Bricovo - BE\",\"companyIdentifier\":\"Primary producer/farm\",\"name\":\"Arrival of cows-1\",\"transport company\":\"Gheys Transport\",\"creationTimestamp\":1583832027,\"zipcodeAndCity\":\"3000 Leuven\",\"eventType\":\"Inbound transport\"},{\"identifiers\":{\"uniqueID\":[\"BE-1123556.1\"]}},{\"documents\":{\"Sample document_2020_11_11_16_31_9\":{\"url\":\"https://unova-chain-assets-event-files.s3.eu-west-3.amazonaws.com/Sample_document.docx\"}}}],\"signature\":\"0x1f566569cd46f47d51ef584f0dc157ba6d4f8e7266aec543ddb8a6e304f873f148769f52362fb0350242a74cd1c2b34054566ff38a234e368e160361729d91031c\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0x024c543c8d5b643460f996761888b960e29f3fdc520e5ea7d447cef7617ea62d\",\"assetId\":\"0xb5a7372ebfe7f1a9a8e62fbd50e173ec10d411e31377951511e164370b9cf3ce\",\"timestamp\":1605112269}}},\"meta\":{\"code\":200}},\"message\":\"Event created successfully\",\"status\":\"Success\"}"}],"_postman_id":"1f691be6-2276-435f-b15d-11c4b4640464"}],"id":"88b57e20-bb45-4e44-9646-52ba486b8dbe","description":"<p>The API provides the functionality of adding documents to the event. The API accepts form-data hence documents can be easily attached.</p>\n","_postman_id":"88b57e20-bb45-4e44-9646-52ba486b8dbe"},{"name":"Modification","item":[{"name":"Create Event - Modification","id":"8d068bf8-e567-49fa-a192-ace91971ffa3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d"}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"","type":"text"}]},"url":"https://launch.unova.io/unova/api/test","urlObject":{"protocol":"https","path":["unova","api","test"],"host":["launch","unova","io"],"query":[],"variable":[]}},"response":[{"id":"85f2b4f2-ff8b-4a6a-a864-1e3b83b3a100","name":"Create Event - Modification","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"bearer fb9a2d89-6248-4b30-824f-a558d049ea3d","warning":""}],"body":{"mode":"formdata","formdata":[{"key":"requestbody","value":"{\n\"typeOfRequest\":\"event\",\n\"privateKey\":\"0xb45434a082ff6acb93fc07513157c73ad755dd9cc2e235c997344e2a044bf5ec\",\n\"eventType\":\"Modifcation\",\n\"name\":\"Modification\",\n\"companyIdentifier\":\"Primary producer/farm\",\n\"assetType\":\"cow(updated value)\",\n\"uniqueID\":\"BE-1123556\",\n\"timestamp\":\"2020-03-10 19:20:27\",\n\"organizationName\":\"Farmville Bricovo - BE\",\n\"streetAndNumber\":\"Mechelsestraat 121\",\n\"zipcodeAndCity\":\"3000 Leuven\",\n\"race\":\"Limousin(additional value)\"\n}","type":"text"}]},"url":"https://launch.unova.io/unova/api/test"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"name":"access-control-allow-headers","key":"access-control-allow-headers","value":"x-requested-with, authorization, x-auth-token, origin, content-type, accept, nodejwttoken","description":"Used in response to a preflight request to indicate which HTTP headers can be used when making the actual request."},{"name":"access-control-allow-methods","key":"access-control-allow-methods","value":"POST, GET, OPTIONS, DELETE, PUT","description":"Specifies the method or methods allowed when accessing the resource. This is used in response to a preflight request."},{"name":"access-control-allow-origin","key":"access-control-allow-origin","value":"*","description":"Specifies a URI that may access the resource. For requests without credentials, the server may specify '*' as a wildcard, thereby allowing any origin to access the resource."},{"name":"access-control-max-age","key":"access-control-max-age","value":"3600","description":"Indicates how long the results of a preflight request can be cached in seconds."},{"name":"cache-control","key":"cache-control","value":"no-store","description":"Tells all caching mechanisms from server to client whether they may cache this object. It is measured in seconds"},{"name":"connection","key":"connection","value":"keep-alive","description":"Options that are desired for the connection"},{"name":"content-length","key":"content-length","value":"1087","description":"The length of the response body in octets (8-bit bytes)"},{"name":"content-type","key":"content-type","value":"application/json;charset=utf-8","description":"The mime type of this content"},{"name":"date","key":"date","value":"Wed, 11 Nov 2020 16:34:06 GMT","description":"The date and time that the message was sent"},{"name":"expires","key":"expires","value":"Thu, 01 Jan 1970 00:00:00 GMT","description":"Gives the date/time after which the response is considered stale"},{"name":"pragma","key":"pragma","value":"no-cache","description":"Implementation-specific headers that may have various effects anywhere along the request-response chain."},{"name":"server","key":"server","value":"nginx/1.14.0 (Ubuntu)","description":"A name for the server"},{"name":"vary","key":"vary","value":"Origin, Access-Control-Request-Method, Access-Control-Request-Headers","description":"Tells downstream proxies how to match future request headers to decide whether the cached response can be used rather than requesting a fresh one from the origin server."},{"name":"x-content-type-options","key":"x-content-type-options","value":"nosniff","description":"The only defined value, \"nosniff\", prevents Internet Explorer from MIME-sniffing a response away from the declared content-type"},{"name":"x-frame-options","key":"x-frame-options","value":"DENY","description":"Clickjacking protection: \"deny\" - no rendering within a frame, \"sameorigin\" - no rendering if origin mismatch"},{"name":"x-xss-protection","key":"x-xss-protection","value":"1; mode=block","description":"Cross-site scripting (XSS) filter"}],"cookie":[],"responseTime":null,"body":"{\"response\":{\"data\":{\"organizationId\":198,\"eventId\":\"0x7d34f12df480b577d23c612ca109c534e34a85f49ccb967fe1596ceb3541c189\",\"metadata\":{\"bundleUploadTimestamp\":1605112446,\"bundleId\":null},\"_id\":\"5fac127ed94651001ac42b6c\",\"content\":{\"data\":[{\"streetAndNumber\":\"Mechelsestraat 121\",\"organizationName\":\"Farmville Bricovo - BE\",\"race\":\"Limousin(additional value)\",\"companyIdentifier\":\"Primary producer/farm\",\"name\":\"Modification\",\"creationTimestamp\":1583868027,\"zipcodeAndCity\":\"3000 Leuven\",\"eventType\":\"Modifcation\",\"assetType\":\"cow(updated value)\"},{\"identifiers\":{\"uniqueID\":[\"BE-1123556\"]}},{}],\"signature\":\"0xbdb3617394f5f17f6e7cd52793ca9023535c7c20c1dd16ae944f0e69af91a79b2375e8a64c160862bc36359526e5a73deba4fbecc996529ae80cb829b40cead91c\",\"idData\":{\"accessLevel\":0,\"createdBy\":\"0xb9069fFe318B2b2e5bB260B351F87B34f32598F3\",\"dataHash\":\"0xfaa8e54be03341597d1515a824f6945bd016dc839460cac336ba756dac725648\",\"assetId\":\"0x1dbbbba669da4a91c80f40e4a61d87481935131375f47deb0f3bb1eac32ef2b3\",\"timestamp\":1605112446}}},\"meta\":{\"code\":200}},\"message\":\"Event created successfully\",\"status\":\"Success\"}"}],"_postman_id":"8d068bf8-e567-49fa-a192-ace91971ffa3"}],"id":"756a460f-3783-4ba7-a36b-bbbb955bf144","description":"<p>The API allows data correction/modification thru a special event called 'Modification' event. This event does not need to be added to the chain builder, and can be used directly in the API post call. The updated value of data needs to be passed in the request body, and it will get added to the asset in the form of an event.</p>\n","_postman_id":"756a460f-3783-4ba7-a36b-bbbb955bf144"}],"id":"83e99e41-a604-4e57-acb8-a050c1d9e2cf","description":"<p>To create an event, the API expects a list of mandatory fields to be passed,with certain validations in place.In addition to the mandatory fields,the field list is open for use, and any number of data points can be posted to the API. For each company, a suggested list of events and corresponding fields is mentioned in the following sections.</p>\n","_postman_id":"83e99e41-a604-4e57-acb8-a050c1d9e2cf"}],"id":"bc851591-0fa2-4ed3-bc25-6cb5ace66f1b","_postman_id":"bc851591-0fa2-4ed3-bc25-6cb5ace66f1b","description":""}]}