Arduino Gsm shield (Quectel M10 sim900) AT commands error

Most AT commands work fine, i can make calls and send sms from the shield no problem.

The problem appears when i am trying to connect to the internet and submit http request.
It works fine with the GSM library but not with AT commands.

AT+SAPBR=3,1,"CONTYPE","GPRS"

+CME ERROR: 100
AT+SAPBR=3,1,"APN","internet"

+CME ERROR: 100

Call Ready
AT+SAPBR=1,1

+CME ERROR: 100
AT+HTTPINIT

+CME ERROR: 100
AT+HTTPPARA="URL","hidden"

AT+HTTPACTION=0

+CME ERROR: 100
AT+HTTPREAD

+CME ERROR: 100

I checked the Quectel M10 AT commands list and couldn't find the SAPBR, or HTTPINIT, HTTPPARA etc commands, so i am guessing it uses different commands to submit http requests? (or a different type of connection? if that makes sense)

I know it works since it does submit the request if i use the GSM library but i really want to do it with AT commands and not use a library.

Can someone point me to the right way?

I know it works since it does submit the request if i use the GSM library but i really want to do it with AT commands and not use a library.

You could keep guessing why it works with the GSM library, and not your code. OR, you could look at the source code for the library to see what it does differently.

I forgot about this post, in case anyone else has the same problem with the Arduino GSM shield, just remember to read all of the Quectel M10 modem manuals. Some commands are slightly different form what one might expect.
For example a few commands have an added Q in front of them. i.e. AT+QHTTPPOST.

The manuals can be found at:

http://www.quectel.com/support/downcenter.aspx?page=2&typekey=289074801081843712