What exactly is the "IOTA eXtensible Interface"?
How does it relate to the rest of the chain, at a high level, and technically?
Iota Stack Exchange is a question and answer site for users of Iota, the open-source cryptocurrency for IoT that does not use a blockchain. It only takes a minute to sign up.Sign up to join this community
The main contract of IOTA eXtending Interface is to provide extra functionality, e.g. messaging provided by MAM (Masked Authenticated Messaging). IOTA protocol must be set in stone to let hardware manufacturers start producing IoT devices (FPGA/ASIC-based ones), so we can't wait for all possible extensions to IOTA to be created. This is where IXI comes to play.
Basically, IXI sits between the user and IOTA API. Standard IOTA API requests/responses are passed in the both directions unchanged. Requests not belonging to IOTA API are processed by the corresponding IXI-modules (detected by the prefix of a command, e.g. "mam.send") or rejected. If an IXI-module has received a command and needs to do something with data in the Tangle then it can use IOTA API functions or functions exposed by other IXI-modules.