Attachments from the skeleton JSON data are stored in skins. The SkeletonData has a list of skins. The skin named "default" has all the attachments that don't have a skin in Spine. In spine-csharp, Skin has FindNamesForSlot(slotIndex, List<String>). The names of attachments for the slot are added to the list (done this way to avoid allocation). There is also FindAttachmentsForSlot(slotIndex, List<Attachment> attachments).
Note you can create an attachment dynamically, or even grab one attachment and shove it in a different slot that it was originally intended, so there is technically no list of all attachments for a slot. I think the above will do what you want.