Sign inSign up

singhhp10691/fiwareiota

By singhhp10691

•Updated almost 7 years ago

Fiware IOTA service

Image
0

227

singhhp10691/fiwareiota repository overview

⁠FIWARE-IOTA web service

Build Status dependencies Status devDependencies Status Support badge License: MIT

⁠Background

This api service is builded around FIWARE-IOTA library⁠

⁠Docker

$ docker pull singhhp10691/fiwareiota:latest && docker run -p 4000:4000 singhhp10691/fiwareiota

⁠Build locally using Docker

$ git clone https://github.com/singhhp1069/FIWARE-IOTA-SERVICE.git && cd FIWARE-IOTA-SERVICE
$ docker build -t fiware-iota-service . && docker run -p 4000:4000 fiware-iota-service

⁠Build locally

$ git clone https://github.com/singhhp1069/FIWARE-IOTA-SERVICE.git
$ FIWARE-IOTA-SERVICE
$ npm install
$ npm start

⁠Configuration

config can be found in src/config/index.js

export default {
	env: process.env.NODE_ENV || 'development',
	server: {
		port: process.env.PORT || 4000,
		provider: process.env.IOTA_PROVIDER || 'https://nodes.devnet.thetangle.org:443',
		tcpProvider: process.env.IOTA_ZMQ_PROVIDER || 'tcp://zmq.devnet.iota.org:5556'
	},
	mqtt: {
		port: process.env.MQTT_SERVER_PORT || 1883
	}
};

⁠Api End-Points

⁠1.Status

  • URL

    • /status
  • Method:

    • GET
  • Header:

    • Content-Type:application/json
  • Success Response:

{
   "appName": "IRI Devnet",
   "appVersion": "1.8.1",
   "jreAvailableProcessors": 8,
   "jreFreeMemory": 804894984,
   "jreVersion": "1.8.0_191",
   "jreMaxMemory": 10498867200,
   "jreTotalMemory": 1856323753,
   "latestMilestone": "X9FQGTJPFSVTPYLGBGYOIQTOIMKUDKVLOTLCS9HWUXXWLFCPQKKKUCESFWMYUVCQFYOOWWJSPZUI9E999",
   "latestMilestoneIndex": 1415884,
   "latestSolidSubtangleMilestone": "X9FQGTJPFSVTPYLGBGYOIQTOIMKUDKVLOTLCS9HWUXXWLFCPQKKKUCESFWMYUVCQFYOOWWJSPZUI9E999",
   "latestSolidSubtangleMilestoneIndex": 1415884,
   "milestoneStartIndex": 434527,
   "lastSnapshottedMilestoneIndex": 434525,
   "neighbors": 8,
   "packetsQueueSize": 0,
   "time": 1574863927661,
   "tips": 4285,
   "transactionsToRequest": 0,
   "features": [
       "loadBalancer",
       "snapshotPruning",
       "RemotePOW",
       "testnet"
   ],
   "coordinatorAddress": "EQQFCZBIHRHWPXKMTOLMYUYPCN9XLMJPYZVFJSAY9FQHCCLWTOLLUGKKMXYFDBOOYFBLBI9WUEILGECYM",
   "duration": 0
}

⁠2.Set Provider

  • URL

    • /provider
  • Method:

    • POST
  • Header:

    • Content-Type:application/json
  • Request Body *

{
   "provider": "https://nodes.devnet.thetangle.org:443"
}
  • Success Response: Status 200

⁠3.Set ZMQProvider

  • URL

    • /zmqprovider
  • Method:

    • POST
  • Header:

    • Content-Type:application/json
  • Request Body *

{
   "provider": "tcp://zmq.devnet.iota.org:5556"
}
  • Success Response: Status 200

⁠4.Send Transaction

  • URL

    • /transaction
  • Method:

    • POST
  • Header:

    • Content-Type:application/json
  • Request Body *

{
   "address": "ETJF9MZSDYTESOBJUANBCIYEVREVDNPNEJWEZDSBPUKTGOZKBNFD9DYQACJZW9EGQQHANBDGHJNUXTYVD",
   "seed": "GUVMYGYLYVSKJ9AOPWJXB9V9WXEBUREGEDKJUPPMUQ9SXCYFGFXACEODXUVILVBMUZUDEJFPDSRXFSGNN",
   "data": {
   		"message" : "test transaction"
   	}
}
  • Success Response *
[
   {
       "hash": "9TEIVRUMBQBIJSTCVUWGOBVGLKORFSXSXDSLDA9LDZWQMCIRDEQCLJGFWQCQID9XHLSMRGNSMZ9IZI999",
       "signatureMessageFragment": "999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999",
       "address": "ETJF9MZSDYTESOBJUANBCIYEVREVDNPNEJWEZDSBPUKTGOZKBNFD9DYQACJZW9EGQQHANBDGHJNUXTYVD",
       "value": 0,
       "obsoleteTag": "BA9999999999999999999999999",
       "timestamp": 1574864218,
       "currentIndex": 0,
       "lastIndex": 0,
       "bundle": "GDCJCSKRKAUFEXEZUQGR9TFTD99QJUOC9XZZIUGAXUZSAQKDNKJCRLWIIVIKONKK9XZ9KVSHPCBTKYOVX",
       "trunkTransaction": "VKUMRDSQGZDGDSFNOG9KIJY9WMRJBOHEOYOU9SODGMTSMCFDJHDUQJNESQDKTPHARKURXNOBURKLRG999",
       "branchTransaction": "LJRKLGKUVNVHELUIOSFDPXIZSCKIHUGUZZNYRZVAGMNMMHTNYDCTYOKWPKALGDX9BTJVOTPIDGFS99999",
       "tag": "BA9999999999999999999999999",
       "attachmentTimestamp": 1574864219432,
       "attachmentTimestampLowerBound": 0,
       "attachmentTimestampUpperBound": 3812798742493,
       "nonce": "OGGITGZTOSZU9YPWYSZXNCZ9IGQ"
   }
]

⁠5.Fetch Transaction

  • URL

    • /transaction/:hash
  • Method:

    • GET
  • Header:

    • Content-Type:application/json
  • Success Response *

[
   {
       "hash": "9TEIVRUMBQBIJSTCVUWGOBVGLKORFSXSXDSLDA9LDZWQMCIRDEQCLJGFWQCQID9XHLSMRGNSMZ9IZI999",
       "signatureMessageFragment": "999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999",
       "address": "ETJF9MZSDYTESOBJUANBCIYEVREVDNPNEJWEZDSBPUKTGOZKBNFD9DYQACJZW9EGQQHANBDGHJNUXTYVD",
       "value": 0,
       "obsoleteTag": "BA9999999999999999999999999",
       "timestamp": 1574864218,
       "currentIndex": 0,
       "lastIndex": 0,
       "bundle": "GDCJCSKRKAUFEXEZUQGR9TFTD99QJUOC9XZZIUGAXUZSAQKDNKJCRLWIIVIKONKK9XZ9KVSHPCBTKYOVX",
       "trunkTransaction": "VKUMRDSQGZDGDSFNOG9KIJY9WMRJBOHEOYOU9SODGMTSMCFDJHDUQJNESQDKTPHARKURXNOBURKLRG999",
       "branchTransaction": "LJRKLGKUVNVHELUIOSFDPXIZSCKIHUGUZZNYRZVAGMNMMHTNYDCTYOKWPKALGDX9BTJVOTPIDGFS99999",
       "tag": "BA9999999999999999999999999",
       "attachmentTimestamp": 1574864219432,
       "attachmentTimestampLowerBound": 0,
       "attachmentTimestampUpperBound": 3812798742493,
       "nonce": "OGGITGZTOSZU9YPWYSZXNCZ9IGQ"
   }
]

⁠6.Create MAM Transaction

  • URL
    • /mam
  • Method:
    • POST
  • Header:
    • Content-Type:application/json
ParamTypeDescription
datastringdata to be transfer
modestringmode could be either public or restricted
secretstringsecret of the data in case of restricted mode only
  • Request Body *
{
   "data": "testing",
   "mode": "restricted",
   "secret": "secret"
}
  • Success Response *
[
   {
       "hash": "VT9FBQHVYUFBVHNSFKWTQWUXHVFGPQBRHCNABRKUCYQMFDU9VVOIEPYNYXAJHFFKUTKZZGNVQNPFYD999",
       "signatureMessageFragment": "AZB9HBURFAWGFCA9KMBOPZTHHNWNLGESOTBFJADYBYXJOHKBWFOJGTATHHKWGSLFDLUFQVFVNI99ZAPOVCWAPWXZPCGIUFDVSJYQTNUHSC9BFBQIYRJPSWVIRAMRKFN9MDREWPXQQNUAVIZPSYAGSCLOWJYGUDSKT9JHRWUDDEFZVWBPGD9ZDBSSTLKBBQV9DMVHKMMEYLL9NICKDVDFNSXUZ9KRYDLPXLAQGDLFAA9YLGRGFFJCLRMM9KUSWSKHXNAXQOFMEUOZBOYCOYVUMJPJJLJIRZRHLBLCDNHSACXYKZJNVOASPDHAJYPOVM9DRALJVWXPJSLKXIQUNBONEMXTNOYMOYLWPAJDYEDCJGTWWCAMOOKRMFCTVIHSWOCJQIGIQGWIHAOLHZSQSVVUSXTNVFFSQYBVQWICELBKTVZESEJWEHLLBK9LVFGUJTJNENQVAKEYLVFB9OJPOXWEAQGVUVFIERF9JVDEHBHCMYOXLCBNESGPIEZAFLVHJFMLDMRXIROISSVWGZSXPOTALZWBVSGC9FJUARPHY9TASMC9QTHJHQOVVQMRXVXHFMHA9A99OXJJAIQDIDHVVQKZHFRXJNYIQMNLUJHJ9FYLDOVCGANEZERMNVUGFYFBJWWIAYNDHCCDAYMDJBJQUSFXFPYBUPPMHETZVRYHMREHKYVJA9MNFXE9GFUGBMYLKLHYQHOHYUQDMSQUQAXZBNWXHTDZLPVXLXKRBNBDGBAEYEEICRBEWRWTMWVGTWHXWKOJHFMXCVWYWURBHMAEPU9I9QPBA9RNJCQAQDMRDVGYYAVESSQCRGIQFPHQHIDWKPUZXKQJWJUT9KYGP9JCDJLSAHUBANJIRPAFVVQGOWNCQEPV9JTKZFCLELRVEIBNGKJWCLXIWDUBHPCDVMRNBICFCUNXMPSJFYBCMUCAIVCZTJCMOKYTPCKLQLJFWLPR9XITUEASHTMVHDSHPNLPHFLAGBKQI9EX9XHNAKPWNQGSDGRZBGGOXAJLWQWGSMAXVMHYJXSOLXRABASBFNRAYBV9MRDQWEUSHHUWUAGCLRBVRYW9ELQFDTJOOQ9WFXZFMEFYCTDTFEIAH9ULSIONGKFQZR9LHLISEQZCEECYVYSBBCTXMSMMGAU9TZLDFOLGWALBIHTUIFTKZACTZTTMMFBKWQDWWZRCWPABGOGKTCSXDRSXJWXYTKGTOMXAGPQIYDMOLDBYCHSLOQQODHRXGDDFEUOEKWCPPBMQYWALGZHOVKNLOOBZEEFMO9HPULEYUTJNJRWOYYHVRUKACQMJQKQOGDDZGSBYTHF9EMQNCZEEJZPLBBCXBTAMSCXWCZISAKKJJLPKOZKHTBULGGXENNDH9AJQQKDWITBB9CI9LWKAWKOEIVRRDLBEXFEGCDPWUNKAULHEMKEQXIYE99NGEBQGGPXGPZNFSPZTBYFZQCDSNTXOHNQHNWPENVWQPXICALBZXFZBUKZSIUSGLTLKSLPHJWTJLKJWRQARZIQFB9CTVTOTLBCCQVIXBTQGRETHRHNGXHGPUS9VVJLWIBXGMPLRLRNISRPXDWJ9PLZFU9OFFT9CHWQAVWUAYGYMZCNNQOYKXPIWDMYMZVWBOEZNYABUCSJPIKPIBIVYERTANFYVPICSGYTQXJKA9CLGBMCRBBHWDXVERDKYPJFZMIUGGGRNVAENXJMFCIBZZICLJVQGQVUCCCJARIXCCYJZQXGYYEO9VJVPAORMAHQRAXSNYTMBGQCCIKVFUVGLLEVDZXKNDNSVIELGCRLJRDNVOSEDLZQBFZHZMOQBRWQE9RPWCZ9ZFRQGJIEEUUAVAI9VGHZICULKPLYTDHGDQDJRATHCONNL9NFTLGOZPRP9FRZQWQGSNPRETMPZWVTTXDIG9JNKOHQVCELIPZSQDOPOYQZLPL9OTVJMWY9BQB9ZOJRGLPCVNCGZAVKXIWLLCFWA9AUVMSYWYATVYPQXLUH9IBAGHLXQPMOLC9UHDNTFLHPIEWRYJWNOJIZPFCZ99OJFESHAGXQFKEZTIHPV9PWDCAHXVPALDZJUB9HKPFDETOFKINWVKWRQNITSZEZPGYZTPFDYHWXRWOZOAOZFSGHWUZXMAHXNSDPFKXQNRLFEPYKQJCUIWYARNGOZFDTFAJYSGDMFRDX9MMLYSWGBSTVMXKIHADSBFBDDVBHU9ZR",
       "address": "ANNIDTA9NJECGUMFKQUCBELQQQVVOAPSQNSBXWYWYHOVZOAHBAXVCQQZLEKCFJCTDWKAGQVZXHAJRLOOQ",
       "value": 0,
       "obsoleteTag": "OA9999999999999999999999999",
       "timestamp": 1574862139,
       "currentIndex": 0,
       "lastIndex": 2,
       "bundle": "QJJ99VLDSHHJJXVDHPDYHLNG9DPDPIDQURPLIZAHLBBWOKIW9KD9ENXKXRJNRNUGIAU9YJUAIKGGXZ9DC",
       "trunkTransaction": "RQUFBYMEHAA9JHBQIJKTXPQZEVEWGPIKOAZYVVPTEZZYOHVNGVCLPVZAWNANWQSPVZTYAHNTPHZGEJ999",
       "branchTransaction": "HFMBCNWLPHZADUWCPYN9JEQBHGRIYJBYFEVTRQMPSHGLAGQIKEU9NPTWFESBNJFFNEVDOTZHBRVB9W999",
       "tag": "OA9999999999999999999999999",
       "attachmentTimestamp": 1574862140134,
       "attachmentTimestampLowerBound": 0,
       "attachmentTimestampUpperBound": 3812798742493,
       "nonce": "9JGG9TKDFMCUUUOIOEYXIQAUPGJ"
   }
]

⁠7.Fetch MAM Transaction

  • URL
    • /mam/fetch
  • Method:
    • POST
  • Header:
    • Content-Type:application/json
ParamTypeDescription
hashstringhash to be fetched
modestringmode could be either public or restricted
secretstringsecret of the data in case of restricted mode only
  • Request Body *
{
   "hash": "VT9FBQHVYUFBVHNSFKWTQWUXHVFGPQBRHCNABRKUCYQMFDU9VVOIEPYNYXAJHFFKUTKZZGNVQNPFYD999",
   "mode": "restricted",
   "secret": "secret"
}
  • Success Response *
{
   "result": "testing"
}

Tag summary

Content type

Image

Digest

Size

372 MB

Last updated

almost 7 years ago

docker pull singhhp10691/fiwareiota