To create data definitions, you have to use POST.

var tdf = {
    "tdf": {
        "fdef": [
            {
                "derived": "sequence from 00001",
                "escname": "ID",
                "hasindex": "yes",
                "isreqired": "yes",
                "isunique": "yes",
                "isvirtual": "no",
                "length": 5,
                "name": "ID",
                "preventedit": "yes",
                "readsec": "Low3",
                "type": "text",
                "writesec": "Low3"
            },
..... more of the same
        ],
        "tablecreatesecurity": "Medium3",
        "tabledeletesecurity": "Medium3",
        "tabledopreservedataonmodify": true,
        "tablemodifysecurity": "Medium3",
        "tableviewsecurity": "Low3",
    }
};
var tname="NewTest";
var options = {
    url: "/definition/table/" + tname + "/",
    type: 'POST',
    contentType:'application/json',
    data: JSON.stringify(tdf),
    dataType:'json'
};
$.ajax(options).done(function(jdata,status,xhr){
    if (jdata.result == 'ok'){
        // Do what you need to do after creation
    }
});

Ex. of creating a table by javascript in web page using jquery.