Integrated REST

Integrated REST

Expose Integrated Dynamics networks as a REST API

13 906 downloads 9 followers

 

This requires the Cyclops Core library and Integrated Dynamics!
Come talk to us in #integratedmods on the Cyclops Discord server!

 

This mod allows you to read from and write to your Integrated Dynamics networks via a REST API.
This makes it possible to read the status of your networks and worlds via Web-protocols, and interact with them by POST-ing values to HTTP Proxy blocks in your world.

 

Some examples on what is possible with this mod (and some external coding):

  • Control the lights of your home based on the day time in your Minecraft world.
  • Play a sound in Minecraft when you receive an email.
  • Show the positions of all online players in the overworld on your website.
  • Open a door from your mob farm when you gain a new Twitch or Mixer subscriber.

 

WARNING: If you have never heard about 'API' or 'REST' before, then this probably is nothing for you. This mod is mainly aimed at advanced users wanting to do very advanced automation using external system that can communicate over HTTP.

 

This mod exposes your networks as JSON on a configurable port. Here is a snippet of a single network element output:

 

{
  "@context": "https://raw.githubusercontent.com/CyclopsMC/IntegratedREST/master-1.12/src/main/resources/context.jsonld",
  "@id": "http://localhost:3000/",
  "networkElements": [
    {
      "@id": "http://localhost:3000/networkElement/integrateddynamics/part/4",
      "position": {
        "world": 0,
        "x": -26,
        "y": 57,
        "z": -249,
        "side": "ir:east"
      },
      "block": "http://localhost:3000/registry/block/integrateddynamics/cable",
      "@type": [
        "NetworkElement",
        "http://localhost:3000/registry/part/display_panel"
      ],
      "channel": 0,
      "priority": 0,
      "updateInterval": 1,
      "network": "http://localhost:3000/network/1619976862",
      "valueType": "http://localhost:3000/registry/value/valuetype/valuetypes/integrateddynamics/string/name",
      "value": "I was updated\\nvia HTTP!",
      "target": {
        "world": 0,
        "x": -25,
        "y": 57,
        "z": -249,
        "side": "ir:west"
      },
      "loaded": true
    },
  ...
  ]
}

In fact, this JSON is valid JSON-LD (Linked Data JSON), which makes it possible to use this output in RDF tools. 

 

Next to the state of your network and its elements, this mod also exposes the state of most Forge registries.
All available information (accessible via the API index page):

  • Networks
  • Network elements
  • Part types
  • Aspect types
  • Value types
  • Items
  • Blocks
  • Fluids
  • Mods

This mod adds a single craftable block to the game, the HTTP Proxy.

 

Like all network elements, this block is accessible via HTTP. For example, an HTTP Proxy with ID 7 will be accessible via http://localhost:3000/networkElement/integrateddynamics/http/7.

This block has an internal value state that can be updated via HTTP POST requests (more information on the wiki).

 

Note: If you are using this mod on a server, you'll probably want to disable starting up the HTTP server client-side, by disabling it via the config file of the players.

 

This mod collects anonymized startup data, this can be disabled in the config file and adheres to Minecraft's snooper settings.

 

Bisect Hosting
Support us via the referral code cyclops when renting a Bisect Hosting server, and get 25% off!

If you like this mod, consider supporting me on Patreon!

No gallery available for this project.

Version Minecraft Loader Download

1.1.15-221 for NeoForge 26.3

26.3-1.1.15-221

26.3
neoforge
Download

1.1.15-220 for NeoForge 26.3

26.3-1.1.15-220

26.3
neoforge
Download

1.1.15-217 for NeoForge 26.3

26.3-1.1.15-217

26.3
neoforge
Download

1.1.15-214 for NeoForge 26.2

26.2-1.1.15-214

26.2
neoforge
Download

1.1.15-213 for NeoForge 26.1.2

26.1.2-1.1.15-213

26.1.2
neoforge
Download

1.1.15-212 for NeoForge 26.2

26.2-1.1.15-212

26.2
neoforge
Download

1.1.15-211 for NeoForge 26.1.2

26.1.2-1.1.15-211

26.1.2
neoforge
Download

1.1.15-210 for NeoForge 1.21.1

1.21.1-1.1.15-210

1.21.1
neoforge
Download

1.1.15-209 for NeoForge 26.2

26.2-1.1.15-209

26.2
neoforge
Download

1.1.15-208 for NeoForge 26.1.2

26.1.2-1.1.15-208

26.1.2
neoforge
Download

1.1.15-207 for NeoForge 26.2

26.2-1.1.15-207

26.2
neoforge
Download

1.1.15-206 for NeoForge 26.1.2

26.1.2-1.1.15-206

26.1.2
neoforge
Download

1.1.15-205 for NeoForge 1.21.1

1.21.1-1.1.15-205

1.21.1
neoforge
Download

1.1.15-203 for NeoForge 26.2

26.2-1.1.15-203

26.2
neoforge
Download

1.1.15-202 for NeoForge 26.1.2

26.1.2-1.1.15-202

26.1.2
neoforge
Download

1.1.12-200 for NeoForge 1.21.11

1.21.11-1.1.12-200

1.21.11
neoforge
Download

1.1.15-198 for NeoForge 26.2

26.2-1.1.15-198

26.2
neoforge
Download

1.1.15 for NeoForge 26.1.2

26.1.2-1.1.15

26.1.2
neoforge
Download

1.1.15-194 for NeoForge 26.1.1

26.1.1-1.1.15-194

26.1.1
neoforge
Download

1.1.15 for NeoForge 26.1.1

26.1.1-1.1.15

26.1.1
neoforge
Download

1.1.12-189 for NeoForge 26.1.1

26.1.1-1.1.12-189

26.1.1
neoforge
Download

1.1.12-188 for NeoForge 26.1.1

26.1.1-1.1.12-188

26.1.1
neoforge
Download

1.1.12-187 for NeoForge 1.21.11

1.21.11-1.1.12-187

1.21.11
neoforge
Download

1.1.12-186 for NeoForge 1.21.11

1.21.11-1.1.12-186

1.21.11
neoforge
Download

1.1.12-185 for NeoForge 1.21.11

1.21.11-1.1.12-185

1.21.11
neoforge
Download

1.1.15-184 for NeoForge 1.21.1

1.21.1-1.1.15-184

1.21.1
neoforge
Download

1.1.12-182 for NeoForge 1.21.11

1.21.11-1.1.12-182

1.21.11
neoforge
Download

1.1.15-181 for NeoForge 1.21.1

1.21.1-1.1.15-181

1.21.1
neoforge
Download

1.1.15-180 for NeoForge 1.21.1

1.21.1-1.1.15-180

1.21.1
neoforge
Download

1.1.12-178 for NeoForge 1.21.11

1.21.11-1.1.12-178

1.21.11
neoforge
Download

1.1.15-177 for NeoForge 1.21.1

1.21.1-1.1.15-177

1.21.1
neoforge
Download

1.1.15-174 for NeoForge 1.21.1

1.21.1-1.1.15-174

1.21.1
neoforge
Download

1.1.15-173 for NeoForge 1.21.1

1.21.1-1.1.15-173

1.21.1
neoforge
Download

1.1.12-172 for NeoForge 1.21.11

1.21.11-1.1.12-172

1.21.11
neoforge
Download

1.1.12-171 for NeoForge 1.21.11

1.21.11-1.1.12-171

1.21.11
neoforge
Download

1.1.12-170 for NeoForge 1.21.10

1.21.10-1.1.12-170

1.21.10
neoforge
Download

1.1.12-169 for NeoForge 1.21.10

1.21.10-1.1.12-169

1.21.10
neoforge
Download

1.1.12-168 for NeoForge 1.21.8

1.21.8-1.1.12-168

1.21.8
neoforge
Download

1.1.12-167 for NeoForge 1.21.8

1.21.8-1.1.12-167

1.21.8
neoforge
Download

1.1.15-166 for NeoForge 1.21.1

1.21.1-1.1.15-166

1.21.1
neoforge
Download

1.1.15-164 for NeoForge 1.21.1

1.21.1-1.1.15-164

1.21.1
neoforge
Download

1.1.15-163 for NeoForge 1.21.1

1.21.1-1.1.15-163

1.21.1
neoforge
Download

1.1.12-162 for NeoForge 1.21.8

1.21.8-1.1.12-162

1.21.8
neoforge
Download

1.1.15-161 for NeoForge 1.21.1

1.21.1-1.1.15-161

1.21.1
neoforge
Download

1.1.15-160 for NeoForge 1.21.1

1.21.1-1.1.15-160

1.21.1
neoforge
Download

1.1.15-158 for NeoForge 1.21.1

1.21.1-1.1.15-158

1.21.1
neoforge
Download

1.1.12-156 for NeoForge 1.21.4

1.21.4-1.1.12-156

1.21.4
neoforge
Download

1.1.12-155 for NeoForge 1.21.4

1.21.4-1.1.12-155

1.21.4
neoforge
Download

1.1.15 for NeoForge 1.21.1

1.21.1-1.1.15

1.21.1
neoforge
Download

1.1.12-150 for NeoForge 1.21.4

1.21.4-1.1.12-150

1.21.4
neoforge
Download

1.1.12-149 for NeoForge 1.21.4

1.21.4-1.1.12-149

1.21.4
neoforge
Download

1.1.14-148 for NeoForge 1.21.1

1.21.1-1.1.14-148

1.21.1
neoforge
Download

1.1.12-145 for NeoForge 1.21.4

1.21.4-1.1.12-145

1.21.4
neoforge
Download

1.1.14 for NeoForge 1.21.1

1.21.1-1.1.14

1.21.1
neoforge
Download

1.1.12-142 for NeoForge 1.21.4

1.21.4-1.1.12-142

1.21.4
neoforge
Download

1.1.12-141 for NeoForge 1.21.4

1.21.4-1.1.12-141

1.21.4
neoforge
Download

1.1.12-140 for NeoForge 1.21.4

1.21.4-1.1.12-140

1.21.4
neoforge
Download

1.1.13-138 for NeoForge 1.21.1

1.21.1-1.1.13-138

1.21.1
neoforge
Download

1.1.13-136 for NeoForge 1.21.1

1.21.1-1.1.13-136

1.21.1
neoforge
Download

1.1.13-134 for NeoForge 1.21.1

1.21.1-1.1.13-134

1.21.1
neoforge
Download

1.1.13-132 for NeoForge 1.21.1

1.21.1-1.1.13-132

1.21.1
neoforge
Download

1.1.13 for NeoForge 1.21.1

1.21.1-1.1.13

1.21.1
neoforge
Download

1.1.12-130 for NeoForge 1.21.1

1.21.1-1.1.12-130

1.21.1
neoforge
Download

1.1.12-129 for NeoForge 1.21.1

1.21.1-1.1.12-129

1.21.1
neoforge
Download

1.1.12-128 for NeoForge 1.21.1

1.21.1-1.1.12-128

1.21.1
neoforge
Download

1.1.12-125 for NeoForge 1.21.1

1.21.1-1.1.12-125

1.21.1
neoforge
Download

1.21-1.1.12

1.21, 1.21.1
neoforge
Download

1.20.4-1.1.12

1.20.4
neoforge
Download

1.20.4-1.1.11

1.20.4
neoforge
Download

1.20.4-1.1.10

1.20.4
neoforge
Download

1.19.2-1.1.10

1.19.2
forge
Download

1.20.1-1.1.11

1.20.1
forge
Download

1.20.1-1.1.10

1.20.1
forge
Download

1.19.4-1.1.10

1.19.4
forge
Download

1.19.4-1.1.9

1.19.4
forge
Download

1.19.4-1.1.8

1.19.4
forge
Download

1.18.2-1.1.6

1.18.2
forge
Download

1.19.2-1.1.9

1.19.2
forge
Download

1.19.3-1.1.8

1.19.3
forge
Download

1.19.2-1.1.8

1.19.2
forge
Download

1.19.2-1.1.7

1.19.2
forge
Download

1.19.2-1.1.6

1.19.2
forge
Download

1.19-1.1.6

1.19
forge
Download

1.19-1.1.5

1.19
forge
Download

IntegratedREST-1.18.2-1.1.5.jar

1.1.5

1.18.2
forge
Download