Write

publish

Makes the creator’s Outli.ne profile publicly live by setting onboardingComplete:true, after which it is reachable at https://outli.ne/{handle}.


Parameters

NameTypeRequiredDescription
outlineIdstringID of the outline to publish. Omit to publish the authenticated user’s own outline (most common case).

Response

FieldTypeWhat it means
outlineIdstringThe ID of the outline that was published.
publishedbooleanAlways true on success — confirms the onboardingComplete flag was set.
urlstringThe public URL where the profile is now live, e.g. https://outli.ne/janesmith.

Example

Request

json
{ "outlineId": "42" }

Response

json
{ "outlineId": "42", "published": true, "url": "https://outli.ne/janesmith" }

When to use

Call publish as the final step of the create→curate→optimize loop, after all stacks, cards, social links, and SEO data are in place. Do not call it before the profile has a handle and at least one card, as the live URL will resolve to an empty or broken state.


Gotchas

Watch out

  • The profile MUST have a slug (handle) set before calling publish — the tool returns VALIDATION_ERROR if no slug exists. Call update_profile or set_seo to set the handle first.
  • There is no separate ‘published’ flag in the data model — live means slug + onboardingComplete:true. Calling publish again on an already-live profile is safe (idempotent update).
  • outlineId defaults to the authenticated user’s own outline — omitting it is the correct pattern for the standard create→curate→publish loop.
  • Errors are returned as isError:true with an ‘error’ code and ‘message’ field — check isError before reading the url field.