Skip to main content
PATCH

Request

Headers

string
required
Must be application/json

Body

One entry per link (max: 100 entries; more is refused with 400). Each entry is { identifier, groupId }:
  • identifier: the link id returned by GET /v1/links (e.g., my-link or tapmy.social__my-link), its slug, or its short URL. Resolved like Toggle Link Status: your own links first, then, for an active, non-viewer team member, the team owner’s links. A bare slug that matches more than one of your links fails with the AMBIGUOUS_IDENTIFIER message: send the link id or short URL instead.
  • groupId: the group to move the link into (see List Groups), or null to take the link out of its group. The group must belong to the link’s owner (the team owner’s groups for a team link).
A link named more than once (for example by its id and by its short URL) is moved once, by its first entry; the extra entries are listed under skipped.Example: [{ "identifier": "my-link", "groupId": "grp_abc123xyz" }, { "identifier": "https://tapmy.social/promo", "groupId": null }]
To move a single link, PATCH /v1/links/{identifier}/group takes { "groupId": "grp_abc123xyz" } (or null) and answers { success, message, id, groupId }.

Response

boolean
true when the request was processed (individual entries can still fail)
string
Summary of the counts
object