You're very close, you just need to massage that array a bit before creating the .Graphic
:
var poly = new esri.geometry.Polygon({
"spatialReference": {" wkid":4326 },
"fields": [{
"name": "FID",
"type": "esriFieldTypeOID",
"alias": "FID",
"domain": null
},...]
});
var ring = new Array();
//push points into array
poly.addRing(ring);
var gra = new esri.Graphic(poly,polySymbolRed);
//Maybe:
//var gra = new esri.Graphic(esri.geometry.geographicToWebMercator(poly),polySymbolRed);
//depending on what SR your map is using...