In 7 mode, that is actually easier to get with SNMP than the API. (Although you do have to deal with the fact that the volume OID's change when you create/delete volumes - existing volumes will be renumbered.)
In 7 mode, snapshot volumes look just like regular volumes (except they will be called /vol/volname/.snapshot)
Then you can just query the usual OIDs:
.1.3.6.1.4.1.789.1.5.4.1.29 - the total capacity of the file system
.1.3.6.1.4.1.789.1.5.4.1.30 - the used capacity
to get the size/space used of the snapshot reserve. (You may have to use different objects if running older OnTap, that does not support the 64 bit counters.)
But be aware that the 'parent' volume will report its size *not* including the snap reserve, but that snapshot usage that has exceeded the snapreserve will count in the used space of the parent volume.
In cluster mode, LogicMonitor uses this call for space monitoring:
<volume-get-iter>
<desired-attributes>
<volume-attributes>
<volume-id-attributes>
</volume-id-attributes>
<volume-inode-attributes>
</volume-inode-attributes>
<volume-sis-attributes>
</volume-sis-attributes>
<volume-snapshot-attributes>
</volume-snapshot-attributes>
<volume-space-attributes>
</volume-space-attributes>
<volume-state-attributes>
</volume-state-attributes>
</volume-attributes>
</desired-attributes>
<query>
</query>
</volume-get-iter>
In the returned response is, amongst other things we grab:
VOLUME-SPACE-ATTRIBUTES.SNAPSHOT-RESERVE-SIZE
volume-space-attributes.percentage-snapshot-reserve-used
LMK if you have further questions. Happy to help.
(Of course, you could also give LogicMonitor a try, and have this all solved for you, along with all your other monitoring issues...)