Need to find invalid or extra field in object and print that this filed is missing or this field is extra filed

I have array of objects and these json objects contain some properties . My each object in array contains 12 properties like id, primary camera, textlong and so on. Suppose in my 1st object instead of id its cid or anything and like that it will check of each value in object. And it should return me msg like cid is invalid filed in this object like that for each object value. Its too important for me can someone please help me out from this.

[

{

    "id": 1000,

    "primary_camera": 1234,

    "textlong": "",

    "gps_points": [

        {

            "lat": 45.543983,

            "lng": -122.961816

        },

        {

            "lat": 45.543983,

            "lng": -122.961898

        },

        {

            "lat": 45.544008,

            "lng": -122.961899

        },

        {

            "lat": 45.544008,

            "lng": -122.961817

        }

    ],

    "bkcolor": "",

    "image": "",

    "type": "normal_right",

    "textshort": "",

    "cam_id_and_area": [

        {

            "id": "JFCC01",

            "area": 170000

        },

        {

            "id": "JFCC02",

            "area": 25000

        },

        {

            "id": "MANUAL",

            "area": 25000

        }

    ],

    "txtcolor": "",

    "area": "D1",

    "spotType": "Staff"

},

{

    "id": 1001,

    "primary_camera": 1234,

    "textlong": "",

    "gps_points": [

        {

            "lat": 45.544008,

            "lng": -122.961817

        },

        {

            "lat": 45.544008,

            "lng": -122.961899

        },

        {

            "lat": 45.544032,

            "lng": -122.961899

        },

        {

            "lat": 45.544032,

            "lng": -122.961817

        }

    ],

    "bkcolor": "",

    "image": "",

    "type": "normal_right",

    "textshort": "",

    "cam_id_and_area": [

        {

            "id": "JFCC01",

            "area": 170000

        },

        {

            "id": "JFCC02",

            "area": 25000

        },

        {

            "id": "MANUAL",

            "area": 25000

        }

    ],

    "txtcolor": "",

    "area": "D1",

    "spotType": "Staff"

},

{

    "id": 1002,

    "primary_camera": "JFCC01",

    "textlong": "",

    "gps_points": [

        {

            "lat": 45.544032,

            "lng": -122.961817

        },

        {

            "lat": 45.544032,

            "lng": -122.961899

        },

        {

            "lat": 45.544057,

            "lng": -122.9619

        },

        {

            "lat": 45.544057,

            "lng": -122.961818

        }

    ],

    "bkcolor": "",

    "image": "",

    "type": "normal_right",

    "textshort": "",

    "cam_id_and_area": [

        {

            "id": "JFCC01",

            "area": 170000

        },

        {

            "id": "JFCC02",

            "area": 25000

        },

        {

            "id": "MANUAL",

            "area": 25000

        }

    ],

    "txtcolor": "",

    "area": "D1",

    "spotType": "Staff"

},

{

    "id": 1003,

    "primary_camera": "JFCC01",

    "textlong": "",

    "gps_points": [

        {

            "lat": 45.544057,

            "lng": -122.961818

        },

        {

            "lat": 45.544057,

            "lng": -122.9619

        },

        {

            "lat": 45.544082,

            "lng": -122.961901

        },

        {

            "lat": 45.544082,

            "lng": -122.961819

        }

    ],

    "bkcolor": "",

    "image": "",

    "type": "normal_right",

    "textshort": "",

    "cam_id_and_area": [

        {

            "id": "JFCC01",

            "area": 170000

        },

        {

            "id": "JFCC02",

            "area": 25000

        },

        {

            "id": "MANUAL",

            "area": 25000

        }

    ],

    "txtcolor": "",

    "area": "D1",

    "spotType": "Staff"

},

{

    "id": 1004,

    "primary_camera": "JFCC01",

    "textlong": "",

    "gps_points": [

        {

            "lat": 45.544082,

            "lng": -122.961819

        },

        {

            "lat": 45.544082,

            "lng": -122.961901

        },

        {

            "lat": 45.544106,

            "lng": -122.961902

        },

        {

            "lat": 45.544106,

            "lng": -122.96182

        }

    ],

    "bkcolor": "",

    "image": "",

    "type": "normal_right",

    "textshort": "",

    "cam_id_and_area": [

        {

            "id": "JFCC01",

            "area": 170000

        },

        {

            "id": "JFCC02",

            "area": 25000

        },

        {

            "id": "MANUAL",

            "area": 25000

        }

    ],

    "txtcolor": "",

    "area": "D1",

    "spotType": "Staff"

}

]