Insteon is a home automation networking technology by SmartLabs. It is a reliable protocol with communication over home power wiring or RF. The protocol is backwards compatible with X10.

Communication with the devices on the network is done through Insteon modems which are plugged into the power wiring or send RF signals and provide a interface to a computer via Serial, USB, or Ethernet.

SmartLabs offers and SDK for Insteon, but I found the documentation below publicly available on the internet and believe it is sufficient enough to program to an Insteon modem.

Documentation

Insteon - Developer’s Guide 2nd Edition (February 23, 2009)
Insteon - Command Tables (September 27, 2007)
Insteon - Modem Developer’s Guide (April 19, 2007)
Insteon - The Details (August 11, 2005)
Insteon Programming in VB