How matching works
Gumnut matches names within the resource’s scope:- Albums and people match within the selected library.
- Libraries match within your account, including libraries in the trash.
- Matching ignores surrounding whitespace and letter case.
- Only fields you include in the create request must match. Omitted fields do not overwrite values on an existing matching resource.
Read the create response
The status code tells you whether the request created a row or found one that already matched:
Libraries keep their names reserved while they are in the trash, so creating a
library with the name of a trashed library returns
409 until that library is
purged. A name collision during an update also returns 409; choose a free
name before retrying the rename.
Retry a failed request
If the response was lost, retry the same named create with the same selected library and supplied fields. Use the returned resource ID in the rest of your workflow regardless of whether the response was200 or 201.
For albums, do not assume a 200 response represents an empty album: another
request may already have added assets to it. A 201 response starts with an
empty album, so add assets after the create succeeds.
A retry is not guaranteed to return the same ID if the resource was renamed,
deleted, or the selected library changed between requests. Treat a 409 as a
deterministic conflict instead of repeatedly sending the unchanged request.