@Ivi, precisei de alguma solução para SMS a algum tempo atrás e não utilizei uma API. Conectamos um CEL ao servidor web com Apache + PHP via USB, e o PHP acessava o aparelho via socket. O aparelho possui uma porta de comunicação que tornou possivel esse acesso. Um comando era enviado para ele com alguns parâmetros(numero do destinatário, conteúdo da mensagem e etc...) e o aparelho enviava o SMS gastando assim créditos do chip inserido nele.
Tdo isso foi preciso pq, no meu caso, n poderiamos "pagar" por um serviço externo de algumas dessas empresas citadas aq nessa mesma thread. Além disso, tinhamos total controle do servidor (a própria empresa q queria o sistema tinha um servidor) e n era prob o gasto de energia do CEL(ja q a bateria deveria estar conectada na energia 24/7) e a empresa possuía uma plano com a operadora de n sei quantos SMS grátis/mês.
Então, segue minha contribuição de uma forma q usei, sem a utilização de API de nenhuma empresa :D
Atenciosamente

Analista de Sistemas
Politec - Prodeb
PHP / Zend Framework / CakePHP / Java Desktop / JavascriptMVC / EXTJS / JQuery / PostGres/ MySQL
71 9196-4178www.vidacriativa.com.br