Content

Engage with or moderate any Content item in a Livefyre Collection.

Approve Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/approve/

Approves a pending piece of content so that it is publicly visible.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to approve.

Query Parameters
namerequiredtypedescription
collection_idtruenumber

The ID of the Collection that includes the content to approve.

site_idfalsestring

The ID of the Collection that holds the content to approve.

lftokentruestring

A Livefyre Authentication token of the user performing the approval.

Responses

200

Approve

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "comment_id": "165439275"
  }
}

Unapprove Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/unapprove/

Reverts approved content to Pending, so that only the author and moderators can see it.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to unapprove.

Query Parameters
namerequiredtypedescription
collection_idtruenumber

The ID of the Collection that includes the content to unapprove.

site_idfalsestring

The ID of the Collection that holds the content to unapprove.

lftokentruestring

A Livefyre Authentication token of the user performing the Unapprove.

Responses

200

Unapprove

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "comment_id": "165439275"
  }
}

Bozo Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/bozo/

Bozos content so that only the author can see it, but no other users. This allows you to remove content from the stream, without the author's knowledge.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to Bozo.

Query Parameters
namerequiredtypedescription
collection_idtruenumber

The ID of the Collection that includes the content to Bozo.

site_idfalsestring

The ID of the Collection that holds the content to Bozo.

lftokentruestring

A Livefyre Authentication token of the user performing the Bozo.

Responses

200

Bozo

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "comment_id": "165439275"
  }
}

Delete Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/delete/

Permanently delete content from the Collection.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to delete.

Query Parameters
namerequiredtypedescription
collection_idtruenumber

The ID of the Collection that includes the content to delete.

site_idfalsestring

The ID of the Collection that holds the content to delete.

lftokentruestring

A Livefyre Authentication token of the user who is performing the delete.

Responses

200

Delete

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "comment_id": "165439275"
  }
}

Edit Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/edit/

Replace a Message with a new version. Usually used to edit the Content body. Powers 'Edit' functionality in Livefyre Comments, LiveBlog.

Note: Users without moderation privileges cannot edit Content more than 5 minutes after it was originally posted.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the Message to edit

Query Parameters
namerequiredtypedescription
lftokentruestring

A Livefyre Authentication Token of the user that you're registering to follow the conversation.

_bifalsestring

A string to uniquely identify the client making the request. This should be the same value for stream requests that come from the same browser or client.

Form Data Parameters
namerequiredtypedescription
bodytruestring

A string of HTML that will be the body of the posted content. Allowed HTML tags include: a, span, label, p, br, strong, em, u, blockquote, ul, li, ol, pre.

attachmentsfalsestring

Media to attach to the post. The value should be a JSON string that is an array of oEmbed objects. If the Collection is configured to enable raw HTML attachments, you can add them by including an oEmbed with the following fields:

  • type: rich
  • provider_name: LivefyreRawHTML
  • html: The raw HTML.

Responses

200

Edit

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "messages": [
      {
        "collectionId": "77593267",
        "content": {
          "updatedBy": "_up68318487@livefyre.com",
          "bodyHtml": "<p>Great this is edit</p>",
          "id": "441657640",
          "authorId": "_up68318487@livefyre.com",
          "parentId": "",
          "updatedAt": 1452537513,
          "mentions": [],
          "ancestor": "",
          "annotations": {},
          "createdAt": 1452537493
        },
        "vis": 1,
        "source": 5,
        "replies": [],
        "type": 0,
        "event": 1452537514000000
      }
    ],
    "authors": {
      "_up68318487@livefyre.com": {
        "handle": "",
        "tags": [],
        "profileUrl": "http://www.livefyre.com/profile/68318487/",
        "avatar": "https://secure.gravatar.com/avatar/0d35b6917e697289be21e68da9e0fb3f/?s=50&d=https://dpstvy7p9whsy.cloudfront.net/a/anon/50.jpg",
        "displayName": "bentestapps",
        "type": 1,
        "id": "_up68318487@livefyre.com"
      }
    }
  }
}

Like Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/like/

Like a piece of content within a Collection.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to like.

Query Parameters
namerequiredtypedescription
collection_idtruenumber

The ID of the Collection that includes the content to like.

lftokenfalsestring

A Livefyre Authentication Token for the user wishing to like content.

Responses

200

Tweet

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "opinionId": "165439275.apitest@labs.fyre.co.0",
    "messageId": "165439275"
  }
}

Remove Content Like

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/unlike/

Like a piece of content within a Collection.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to unlike.

Query Parameters
namerequiredtypedescription
collection_idtruenumber

The ID of the Collection that includes the content to unlike.

lftokentruestring

A Livefyre Authentication Token for the user wishing to unlike content.

Responses

200

Tweet

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "opinionId": "165439275.apitest@labs.fyre.co.0",
    "messageId": "165439275"
  }
}

Read Link

gethttps://api.livefyre.com/api/v4/{network}:links/

Read LiveFyre Link(s)

Path Parameters
namerequiredtypedescription
networktruestring
Query Parameters
namerequiredtypedescription
idfalsestring
urnsfalsearray

when given, returns Link's of matching value

sourcesfalsearray

when given returns Link's of matching value

Responses

200

list of links

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "links": [
      {
        "id": "12345",
        "urn": "urn:livefyre:foo.fyre.co:link=12345",
        "...": null
      },
      "..."
    ]
  }
}

Link CRUD

posthttps://api.livefyre.com/api/v4/{network}:links/

Create or Update LiveFyre Link(s)

Path Parameters
namerequiredtypedescription
networktruestring
Query Parameters
namerequiredtypedescription
idfalsestring
Request Body

Responses

200

list of links either created or updated

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "created": [
      {
        "id": "12345",
        "urn": "urn:livefyre:foo.fyre.co:link=12345",
        "...": null
      },
      "..."
    ],
    "updated": [
      {
        "id": "67890",
        "urn": "urn:livefyre:foo.fyre.co:link=67890",
        "...": null
      },
      "..."
    ]
  }
}

Delete Link

deletehttps://api.livefyre.com/api/v4/{network}:links/

Delete LiveFyre Product(s)

Path Parameters
namerequiredtypedescription
networktruestring
Query Parameters
namerequiredtypedescription
idfalsestring
urnsfalsearray

Responses

200

Number of deleted links

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "removed": 2
  }
}

Upload Media

posthttps://api.livefyre.com/{network}/media/uploads/

Upload Media to Livefyre so that it can referenced as an attachment in subsequent "Post to Collection" API calls.

Request body should be the bytes of the image or video you want to upload. Specify the mimetype in the request's Content-Type header. Maximum file size is 256 MB.

Path Parameters
namerequiredtypedescription
networktruestring

Your organization's Livefyre Network, e.g. something.fyre.co

Responses

200

Media uploaded. The response is an opaque 'attachment' JSON object. You can use this in the attachment parameter of the "Post to Collection" API.

Example application/json
{
  "type": "LivefyreMediaUpload",
  "data": "d7891ebc43c865d0:arUYEybvyeZmmqbpOcWQJEe3pwmDaKynqw2A8FFkYxJarTV39+Nw+JWCyUHCjm9ICjdUWOEIF1EEYBpxoQ1OcduM2Q7OkTMZCZM55RJVAEAiCbhkUfi9Vp+wBZpAhFkQPA4gSPmItmVPNsWeUvcYKYJe8qhfk1ZQ8ZxNF8JVeBNmOYjJHXVR5Uwryxy9LKeMqRjo482kW129W3uW9kpSudm0Zj2GbhNAcx3gGw5G5OTrlPv3/D5Aja12ATI0UktoSe97S3X5/Nh6BHCdvHPSHaso6z5ahCJ82sMtxC7VZwBNeOsG20N2/xCSK70aoVT14vs2BZzvXR3Q1lnB+1FbD84fgMoIYHVCp9RwKtIWzN9aHnXyt0FUPcO+E4bqyFlcG8sv2LNQiK7cBmu+3PX3ybSPKVmNvM1hPdvUXcGTjhkaJN04s9eIXshT4voXIRjdq/hESpBiGx35yW8z5NA="
}

Post Content to Collection

posthttps://{networkName}.quill.fyre.co/api/v3.0/collection/{collectionId}/post/

Adds content to the input Collection.

Note: If you have Custom HTML enabled for your network, this API may be used to post raw HTML into the Collection. In this case, the attachments parameter is required.

Path Parameters
namerequiredtypedescription
collectionIdtruestring

The ID of the Collection to which the content will be added.

Request Body

Content-Type: application/json

propertytypedescription
bodystring

A string of HTML that will be the body of the posted content. Allowed HTML tags include: a, span, label, p, br, strong, em, u, blockquote, ul, li, ol, pre.

attachmentsarray

Media to attach to the post. The value should be a JSON string that is an array of oEmbed objects.

If the Collection is configured to enable raw HTML attachments, you can add them by including an oEmbed with the following fields:

  • type: rich
  • provider_name: LivefyreRawHTML
  • html: The raw HTML.

To post with attached Media Uploads, include an object with the following fields:

  • type: LivefyreMediaUpload
  • data: The URL of the Media Upload
attachments.[]object
attachments.[].typestring

Responses

200

Post

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "messages": [
      {
        "content": {
          "source": 0,
          "authorId": "_u2012@livefyre.com",
          "replaces": null,
          "parentId": null,
          "bodyHtml": "&lt;p&gt;442842&lt;/p&gt;",
          "id": "25802542",
          "createdAt": 1337819934
        },
        "vis": 1,
        "type": 0,
        "event": null,
        "source": 0
      }
    ],
    "authors": {
      "_u2012@livefyre.com": {
        "profileUrl": "http://admin.t405.livefyre.com/profile/5011/",
        "displayName": "ben",
        "id": "_u2012@livefyre.com",
        "avatar": "http://livefyre-avatar.s3.amazonaws.com/a/1/d627b1ba3fce6ab0af872ed3d65278fd/50.jpg"
      }
    }
  }
}

Product CRUD

gethttps://api.livefyre.com/api/v4/{network}:products/

Read LiveFyre Product(s)

Path Parameters
namerequiredtypedescription
networktruestring
Query Parameters
namerequiredtypedescriptiondefault
urnsfalsearray
parentfalsestring
enabledOnlyfalseboolean
Request Body
propertytypedescription
sinceinteger
untilinteger
limitinteger
default_sort_orderinteger

Responses

200

list of products

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "products": [
      {
        "id": "12345",
        "urn": "urn:livefyre:foo.fyre.co:product=12345",
        "...": null
      },
      "..."
    ],
    "paging": {
      "since": 0,
      "until": 0,
      "limit": 0,
      "default_sort_order": -1
    }
  }
}

Product CRUD

posthttps://api.livefyre.com/api/v4/{network}:products/

Create and Update LiveFyre Product(s)

Path Parameters
namerequiredtypedescription
networktruestring
Request Body

Responses

200

list of products either created or updated

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "created": [
      {
        "id": "12345",
        "urn": "urn:livefyre:foo.fyre.co:product=12345",
        "...": null
      },
      "..."
    ],
    "updated": [
      {
        "id": "67890",
        "urn": "urn:livefyre:foo.fyre.co:product=67890",
        "...": null
      },
      "..."
    ]
  }
}

Product CRUD

deletehttps://api.livefyre.com/api/v4/{network}:products/

Create and Update LiveFyre Product(s)

Path Parameters
namerequiredtypedescription
networktruestring
Query Parameters
namerequiredtypedescription
urnsfalsearray

Responses

200

number of deleted products

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "removed": 2
  }
}

Tag Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/collection/{collectionId}/tag/{messageId}/

Tag a piece of content within a Collection.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to tag

collectionIdtruenumber

The ID of the Collection that includes the content to tag

Query Parameters
namerequiredtypedescription
tag_nametruestring

The tag to associate with the content.

lftokentruestring

A Livefyre Authentication Token for the user wishing to tagontent.

Responses

200

Tweet

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": null
}

Untag Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/collection/{collectionId}/untag/{messageId}/

Remove a tag from a piece of content within a Collection.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to untag.

collectionIdtruenumber

The ID of the Collection that includes the content to untag.

Query Parameters
namerequiredtypedescription
tag_nametruestring

The tag to disassociate from the content.

lftokentruestring

A Livefyre Authentication Token for the user wishing to untag content.

Responses

200

Tweet

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": null
}

Get Content Thread

gethttps://{networkName}.bootstrap.fyre.co/api/v3.0/content/thread/

Returns a thread of content from a Collection for the provided content_id. A thread is a single content item and all the content items that are its ancestors and descendants (replies and replies to replies).

Query Parameters
namerequiredtypedescription
collection_idtruestring

The ID of the Collection that holds the thread to retrieve. For example: 28211762.

content_idtruestring

The ID of the content to retrieve. For example: 313420.

depth_onlyfalseboolean

Defines whether to return only ancestors of the provided content_id. true returns only ancestors of the provided content_id; false returns both ancestors and descendants. Default is false.

Responses

200

Thread

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "content": [
      {
        "source": 0,
        "collectionId": "131560603",
        "content": {
          "generator": {
            "id": "livefyre.com"
          },
          "bodyHtml": "<p><a vocab=\"http://schema.org\" typeof=\"Person\" rel=\"nofollow\" resource=\"acct:5235fb08bc6bf31f900003bf@engadget.fyre.co\" data-lf-handle=\"\" data-lf-provider=\"livefyre\" property=\"url\" target=\"_blank\" class=\"fyre-mention fyre-mention-livefyre\">@<span property=\"name\">romkyns</span></a> Big deal.  That's not much extra too pay for a smartphone most people will have for a couple of years.<br/></p>",
          "annotations": {
            "likedBy": [
              "54c1e33eb841b37995000d5d@engadget.fyre.co"
            ]
          },
          "authorId": "50782a81bc6bf341d3002b97@engadget.fyre.co",
          "createdAt": 1431144598,
          "parentId": "307291329",
          "updatedAt": 1431144598,
          "id": "307477931",
          "ancestorId": "307291329"
        },
        "vis": 1,
        "type": 0,
        "event": 1431269111210110
      }
    ],
    "meta": {
      "page": 0
    },
    "authors": {
      "50782a81bc6bf341d3002b97@engadget.fyre.co": {
        "displayName": "I._M._Wright",
        "tags": [],
        "profileUrl": "",
        "avatar": "https://lfavatar-a.akamaihd.net/a/72/1b477d19fdad913bd0c1f7ae0bfc884e/50.jpg",
        "type": 1,
        "id": "50782a81bc6bf341d3002b97@engadget.fyre.co"
      }
    }
  }
}

Trash Content

posthttps://{networkName}.quill.fyre.co/api/v3.0/message/{messageId}/hide/

Hides the content from users. This is the same as "Trash" in Studio.

Path Parameters
namerequiredtypedescription
messageIdtruestring

The ID of the content to hide.

Query Parameters
namerequiredtypedescription
collection_idtruenumber

The ID of the Collection that includes the content to hide.

site_idfalsestring

The ID of the Collection that holds the content to hide.

lftokentruestring

A Livefyre Authentication token of the user performing the action.

Responses

200

Hide

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "comment_id": "165439275"
  }
}