Write

set_social_links

Replaces the full list of social links on an outline with the provided array of platform/URL pairs, or clears them all by passing an empty array.


Parameters

NameTypeRequiredDescription
outlineIdstringID of the outline to update. Omit to target the authenticated creator's own outline.
linksarrayYesFull replacement list of social links. Each element needs a platform (numeric social-icon id from list_social_icons) and a url (must use https:// or http://). Pass an empty array to clear all social links.
links[].platformstringYesNumeric id of the social icon, as a string. Must be a valid integer id returned by list_social_icons — passing a non-integer string will fail validation before any write occurs.
links[].urlstringYesFull URL for the social profile (https:// or http:// only). Validated as a URL at input.

Response

FieldTypeWhat it means
outlineIdstringThe ID of the outline that was updated.
socialLinksarrayThe links array as provided in the input — each element has platform (string icon id) and url. Echoes back what was saved, not the DB-coerced form.

Example

Request

json
{ "outlineId": "42", "links": [ { "platform": "3", "url": "https://instagram.com/janedoe" }, { "platform": "7", "url": "https://tiktok.com/@janedoe" } ] }

Response

json
{ "outlineId": "42", "socialLinks": [ { "platform": "3", "url": "https://instagram.com/janedoe" }, { "platform": "7", "url": "https://tiktok.com/@janedoe" } ] }

When to use

Call after the outline's stacks and cards are in place, as part of the identity-finishing step (step 5 in the create→curate→optimize loop), just before set_seo and publish. Also call whenever the creator updates or adds a social profile handle.


Gotchas

Watch out

  • Always call list_social_icons first — platform must be a valid numeric id string from that tool's response; guessing icon ids will either fail validation or silently write NULL to the database.
  • This tool does a full replacement, not a merge — omitting an existing link removes it. Read current links before calling if you want to preserve any.
  • The platform field is typed as string in the input schema but must be parseable as a positive integer; non-numeric strings (e.g. ‘instagram’) return a VALIDATION_ERROR.
  • Pass an empty array [] to intentionally clear all social links — there is no separate delete operation for individual links.