Skip to content

Content routes: draft, publish

The Content Verbs draft, publish as api.sb routes, with inputs, result, refusals and an example.

Reference for Content, one group of Content routes.

Content.draft

Draft writes Content of one kind from a brief, such as an article for a question the help center could not answer. Verb page.

Text
POST /{namespace}/content/draft

Body, as JSON: the inputs. Emits Content.drafted.

Inputs

InputTypeRequiredDescription
kindstringrequiredWhat to write.
brieftextrequiredThe question or brief it answers.

Returns

OutputTypeRequiredDescription
contentContentrequiredThe draft.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/content/draft \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"kind":"article","brief":"Example brief"}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "content": {
    "$id": "https://api.sb/leaseline.app/content/content_HYlnoorBdP",
    "$type": "Content",
    "title": "Leaseline Pro"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Content.draft",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}

Content.publish

Publish puts a Content draft live on its Site and every Interface, once it passes the Evals for its kind. Verb page.

Text
POST /{namespace}/content/{content}/publish

Path: content. Emits Content.published.

Inputs

InputTypeRequiredDescription
contentContentrequiredThe draft to publish.

Returns

OutputTypeRequiredDescription
contentContentrequiredThe published Content.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/content/content_HYlnoorBdP/publish \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
JSON
{
  "api": "https://api.sb/leaseline.app",
  "content": {
    "$id": "https://api.sb/leaseline.app/content/content_HYlnoorBdP",
    "$type": "Content",
    "title": "Leaseline Pro"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Content.publish",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}