You are mixing old legacy datatables api with new version of datatables.
Use new API:
I didn't manage to use "Demo PLNKR" example due to cross domain policy of that JSON data source :
Cross-Origin Request Blocked: The Same Origin Policy disallows reading
the remote resource at
https://itunes.apple.com/search?term=apple&_=1421706895095. This can
be fixed by moving the resource to the same domain or enabling CORS.
At the end my advice is to :
Change sAjaxSource to ajax , aoColumns to columns, mData to data...
Take care of JSON format Ajax response that you are getting, map that properly with data column field example. If you are using itunes result it will be something like this :
"ajax": {
"url" : "https://itunes.apple.com/search?term=apple",
"dataSrc" : "results"
},
"columns": [
{"data": "artistName"},
{"data": "collectionName"},
{"data": "trackName"},
{"data": "collectionCensoredName"},
{"data": "trackCensoredName"},
{"data": "artistViewUrl"},
...
]