after a little more testing, here’s what i see:
-
when using
PUT /v1/observations/{obsID}
to attach existing photos:- the payload must not include
"ignore_photos":1
- the payload of the request must include
"local_photos":"{obsID}":[{comma-separated list of photoIDs}]
- the list of photoIDs must include all photos that need to be included in the observation, including photos already attached to the observation. (for example, if obs A includes photos X and Y, and you want to add Z, then list of photos in your PUT must be [X,Y,Z].
- if you do not include a photo in the list, it will be dropped from the observation, and photos that dropped from the observation and are not tied to any other observations will be immediately deleted. (for example, if obs A includes photos X and Y, which are tied only to A, and you PUT only [Z], obs A will end up with only Z, and X and Y will be gone. in other words, you need to be careful about accidentally orphaning photos, since orphans are immediately purged.)
- the system is smart enough to ignore photos that do not belong to you. so you cannot attach someone else’s photos to your observation.
- the system is smart enough to ignore updates on observations that do not belong to you.
- the payload must not include
-
i don’t think it’s possible to attach existing photo records while using
POST /v1/observations
(to create a new observation). so i think that means that you’d have to create a new observation first and then come back andPUT /v1/observations/{obsID}
to add the existing photos to the new observation.