User Management

Livefyre integrates with any Identity Management System to let your end-users post and interact with UGC. Use these APIs to organize those users, how they're moderated, or to improve their profile pages.

Add User Affiliation

posthttps://{networkName}.quill.fyre.co/api/v3.0/affiliation/add/

Assigns moderator or owner privileges to a user.

Query Parameters
namerequiredtypedescription
usertruestring

The user to update. For example: system@labs.fyre.co.

typetruestring

A value that indicates the type of privileges to apply to the user. Can be admin or owner.

site_idfalsestring

A site ID for applying site wide privileges.

lftokentruestring

A Livefyre Authentication Token with network owner privileges.

Responses

200

Remove User Tag

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "model_type": "domain",
    "model_id": 254,
    "affiliation": {
      "jid": "apitester@apitesting.fyre.co",
      "avatar": "http://avatars.fyre.co/a/anon/50.jpg",
      "studio_linked": false,
      "type": "admin",
      "display_name": "apitester@apitesting.fyre.co",
      "studio_invite": false,
      "id": 2981893,
      "modified_at": "2014-10-22T18:41:28",
      "owner": "system",
      "user_id": 47156990
    }
  }
}

Add User Tag

posthttps://{networkName}.quill.fyre.co/api/v3.0/author/{user}/tag/

Adds tags to existing Livefyre user profiles.

Path Parameters
namerequiredtypedescription
usertruestring

The user to update. For example: system@labs.fyre.co.

Query Parameters
namerequiredtypedescription
lftokentruestring

A Livefyre Authentication Token with network owner privileges.

tag_nametruestring

The tag to add to the user.

Responses

200

User Comments

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

Remove User Tag

posthttps://{networkName}.quill.fyre.co/api/v3.0/author/{user}/untag/

Removes tags from existing Livefyre user profiles.

Path Parameters
namerequiredtypedescription
usertruestring

The user to update. For example: system@labs.fyre.co.

Query Parameters
namerequiredtypedescription
lftokentruestring

A Livefyre Authentication Token with network owner privileges.

tag_nametruestring

The tag to remove from the user.

Responses

200

Remove User Tag

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

Get Average Ratings in Bulk

gethttps://{networkName}.quill.fyre.co/api/v3.0/stats:ratings:averages/{hash}.json

Retrieves the average user rating for one or more Reviews Collection. Use this to display the content on an index page.

Path Parameters
namerequiredtypedescription
hashtruestring

The Base64 encoded hash of all the site-article ID pairs for which counter information should be fetched. For example: (pre-encoded) :,<...>|:,....'

Responses

200

Get Average

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "333682": {
      "apitest-1400002865 ratings": {
        "default": 50
      }
    }
  }
}

Ban User

posthttps://{networkName}.quill.fyre.co/api/v3.0/author/{user}/ban/

Bans a user, allowing them to continue to log into a stream, post comments, and view their comments in the App, while hiding their content from other users.

Path Parameters
namerequiredtypedescription
usertruestring

The ID of the user to ban.

Query Parameters
namerequiredtypedescription
networkfalsestring

A network ID of the network from which the user will be banned. Must include either network or sites as a param.

retroactivefalsenumber

Indicates whether to apply the ban to previously posted content.

sitesfalsenumber

A comma separated list of site IDs from which the user will be banned. Must include either network or sites as a param.

lftokentruestring

A Livefyre Authentication token of the user performing the ban.

Responses

200

Ban

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

Unban User

posthttps://{networkName}.quill.fyre.co/api/v3.0/author/{user}/unban/

Unbans a user, allowing others to see their comments.

Path Parameters
namerequiredtypedescription
usertruestring

The ID of the user to unban.

Query Parameters
namerequiredtypedescription
networkfalsestring

A network ID of the network from which the user will be unbanned. Must include either network or sites as a param.

retroactivefalsestring

Indicates whether to apply the unban to previously posted content.

sitesfalsenumber

A comma separated list of site IDs from which the user will be unbanned. Must include either network or sites as a param.

lftokentruestring

A Livefyre Authentication token of the user performing the unban.

Responses

200

Unban

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

Imported User Comments

gethttps://{networkName}.bootstrap.fyre.co/bs3/v3.1/{network}/author/{user}/{pageNum}.json/

Returns comments for a particular user imported as legacy content in your Network. Use this to power profile pages on your Site that show each user's most recent comments.

Path Parameters
namerequiredtypedescription
pageNumtruestring

In the response you will find nPages, which contains the number of pages of content. Page starts from 1.json, and increases sequentially.

networktruestring

Your Livefyre provided network. For example: labs.fyre.co.

usertruestring

The user provided to Livefyre, appended by @{network}. For example: 1693423@fyre.com.

Responses

200

User Comments

Example application/json
{
  "status": "ok",
  "nPages": 1,
  "code": 200,
  "data": {
    "content": [
      {
        "content": {
          "title": "",
          "bodyHtml": "IN THE FUTURE WE ALL BECOME ANIME CHARACTERS :D",
          "authorId": "c77f886faf500df71d2bc687bd0057db@mnn.fyre.co",
          "createAt": 1388625710,
          "parentId": "",
          "updatedAt": 1388625710,
          "annotations": {
            "likedBy": []
          }
        },
        "url": "http://mnn.com/node/263398",
        "event": 1388625710000000,
        "collection": {
          "url": "http://mnn.com/node/263398",
          "siteId": "348098",
          "articleId": "http://mnn.com/node/263398",
          "title": "What will humans look like in 100,000 years? | MNN - Mother Nature Network"
        }
      }
    ]
  }
}

User Profiles

gethttps://{networkName}.quill.fyre.co/profiles/

Returns user profile information, including username, ID, email notification settings, and moderator status. Requires a network owner token. (Previously known as 'Get User Tags'.)

Query Parameters
namerequiredtypedescription
idtruestring

The id of the User Profile that is being retrieved

Responses

200

User Profile information

Example application/json
{
  "id": "apitest",
  "bio": "",
  "display_name": "apitest@client-solutions.fyre.co",
  "name": {
    "last": "",
    "formatted": null,
    "first": ""
  },
  "websites": [],
  "email": "",
  "moderator": false,
  "settings_url": "",
  "image_url": "http://avatars.fyre.co/a/anon/orig.jpg",
  "location": "",
  "email_notifications": {
    "moderator_comments": "never",
    "likes": "never",
    "comments": "never",
    "replies": "never"
  },
  "profile_url": ""
}

User Authentication

gethttps://{networkName}.quill.fyre.co/api/v3.0/auth/

Returns authentication tokens and some profile information about a user that's contributed to a Collection when provided that user's Livefyre Authentication Token or Backplane Channel ID. (Previously known as User Profile.)

Query Parameters
namerequiredtypedescription
bp_channelfalsestring

A Backplane Channel ID that contains an identity message for the logged in user. Either this or lftoken is required.

token_policyfalsestring

A JSON Web Token signed with your Network key that indicates how long the returned Livefyre Authentication Token should last. This is useful when using Backplane as your session backend to control the TTL of returned tokens. If not specified, the returned token will last for 1.5 days.

articleIdtruestring

The article ID you chose to uniquely identify a Collection within your Site, encoded using Base64.

lftokenfalsestring

A Livefyre Authentication token of the user whose profile you'd like to fetch. Either this or bp_channel is required.

siteIdtrueinteger

The Livefyre-provided ID for the website or application to which the Collection belongs. (For example: 303617)

Responses

200

User Auth information

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "profile": {
      "profileUrl": null,
      "settingsUrl": null,
      "displayName": "apitest@client-solutions.fyre.co",
      "avatar": "http://avatars.fyre.co/a/anon/50.jpg",
      "id": "apitest@client-solutions.fyre.co"
    },
    "tags": [],
    "auth_token": {
      "value": "eyJhbGciOiAiSFMyNTYiLCAidHlwIjogIkpXVCJ9.eyJkaXNwbGF5X25hbWUiOiAiYXBpdGVzdEBjbGllbnQtc29sdXRpb25zLmZ5cmUuY28iLCAiZG9tYWluIjogImNsaWVudC1zb2x1dGlvbnMuZnlyZS5jbyIsICJleHBpcmVzIjogMTM5OTk0MjU0OSwgInVzZXJfaWQiOiAiYXBpdGVzdCJ9.maVXQ1sEVy0glpKQt_WoRU5pFWwX9EJ9y9_qzrT0Fcc",
      "ttl": 90
    },
    "token": {
      "value": "eyJhbGciOiAiSFMyNTYiLCAidHlwIjogIkpXVCJ9.eyJkb21haW4iOiAiY2xpZW50LXNvbHV0aW9ucy5meXJlLmNvIiwgImV4cGlyZXMiOiAxNDAyNTM0NDU4Ljc2ODUxNiwgInVzZXJfaWQiOiAiYXBpdGVzdCJ9.6lGtsCI22e1yApr33_308EtW8rO_pbyjyOucMn-ftTg",
      "ttl": 2592000
    },
    "isModAnywhere": true,
    "modScopes": {
      "collections": [],
      "networks": [],
      "sites": []
    }
  }
}

User Comments

gethttps://{networkName}.bootstrap.fyre.co/api/v3.0/author/{userId}/comments/

Note: The User Content API provides a more robust solution to this request. Please use it, rather than this call, to fetch user content.

Returns the 25 most recent comments for a particular user in your Network. Use this to power profile pages on your Site that show each user's most recent comments.

Path Parameters
namerequiredtypedescription
userIdtruestring

The ID of the user logging in as stored in your user management system (alphanumeric characters only). Same as user, but without the @network.

Query Parameters
namerequiredtypedescription
lftokentruestring

A Livefyre Auth token for the user requesting this resource. By default, this is required, but Livefyre can configure your Network to make this parameter optional.

statusfalsenumber

Comma-separated list of comment states to return. Can be active, spam, bozo. Users requesting their own comments will have active,bozo,spam returned. Network moderators may request any comment state, but normal users can only request active.

offsetfalsenumber

Specifies the number of individual results to skip. Use this parameter to paginate the results. 25 pieces of content are returned in each response. For example, offset=0 would return the first 25 results, and offset=25 would return the subsequent 25 results. Default is 0.

Responses

200

User Comments

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": [
    {
      "status": "active",
      "num_replies": 0,
      "url": "http://livefyre.com/#lf_comment=26364336",
      "created_at": "2012-11-09T05:11:41",
      "body_plain": "qwerqwerqwerqw",
      "body_html": "<p>qwerqwerqwerqw</p>",
      "conv_title": "Tutorial 0",
      "num_likes": 0,
      "id": 26364336
    }
  ]
}

User Content

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

Allows you to fetch content from your stream for the input user.

Path Parameters
namerequiredtypedescription
usertruestring

The user for which content should be fetched, appended by @{network}. For example: 1693423@fyre.com.

Query Parameters
namerequiredtypedescription
sincefalsenumber

The epoch time after which new content should be returned. Items will be returned in ascending order.

untilfalsenumber

The epoch time before which content should be returned. Items will be returned in descending order.

limitfalsenumber

The number of pieces of content to return with the call. Leave this field blank to return all content. If more than this limit are available, Livefyre will return a timestamp in epoch time (in the next field if using since, or in the prev field if using until), which may be used to fetch the next 50 items. (If there is more content available than was returned, the hasPrev (if using until) or hasNext (using since) return fields will be populated with a boolean true. To query that information, enter this event ID in the since or until field.)

typefalsestring

The type of content to return: Comments, Reviews, or Sidenotes. Leave this field blank to return all content. Note: Enter 'comments' to return content for Live Blog, Chat, and Comments Apps. Use 'reviews' to return content for Reviews, and 'sidenotes' to return content for Sidenotes.

Responses

200

Fetch User Content

Example application/json
{
  "status": "ok",
  "code": 200,
  "data": {
    "content": [
      {
        "url": "http://client-solutions.livefyre.com/sidenotes/salon/#lf_comment=bb00d6f917db4723bc04d3983f864b24@livefyre.com",
        "content": {
          "parentId": "134babf28b16458c8507bfcad48043fc@livefyre.com",
          "bodyHtml": "<p>Reply 1</p>",
          "annotations": {
            "moderator": true,
            "vote": [
              {
                "value": 1,
                "author": "_up14316006@livefyre.com"
              }
            ],
            "annotation": {
              "blockId": "0311a94dc6dc67e139cb8876452343e1:0"
            }
          },
          "authorId": "_up14316006@livefyre.com",
          "createdAt": 1398266758,
          "updatedAt": 1398266758,
          "id": "bb00d6f917db4723bc04d3983f864b24@livefyre.com",
          "ancestorId": "134babf28b16458c8507bfcad48043fc@livefyre.com"
        },
        "event": 1398266758202533,
        "collection": {
          "siteId": "355926",
          "title": "New annotations collection for article #http://client-solutions.livefyre.com/sidenotes/salon/ site#355926",
          "url": "http://client-solutions.livefyre.com/sidenotes/salon/",
          "articleId": "http://client-solutions.livefyre.com/sidenotes/salon/",
          "tags": [],
          "id": "76639913"
        }
      }
    ],
    "meta": {
      "hasPrev": true,
      "prev": 1398266126584270,
      "limit": 10
    },
    "authors": {
      "_up14316006@livefyre.com": {
        "displayName": "rohinivibha821",
        "tags": [],
        "profileUrl": "http://www.livefyre.com/profile/14316006/",
        "avatar": "http://avatars.fyre.co/a/1/4d59b286302517396aefb8f4e986918a/50.jpg?v=1368122679",
        "type": 1,
        "id": "_up14316006@livefyre.com"
      }
    }
  }
}

User Reviews

gethttps://{networkName}.bootstrap.fyre.co/api/v3.1/author/{user}/ratings/

Retrieves the most recent reviews for a specific user. Use this API to display a user’s reviews on their public profile page.

Path Parameters
namerequiredtypedescription
usertruestring

The ID of the user to get ratings for.

Responses

200

User Reviews

Example application/json
{
  "content": [
    {
      "source": 5,
      "content": {
        "parentId": "",
        "bodyHtml": "<p>moo</p>",
        "id": "5938077",
        "authorId": "_up1792682@livefyre.com",
        "updatedAt": 1369261425,
        "annotations": {
          "ratings": {
            "default": 94
          },
          "upvotes": 7,
          "downvotes": 11,
          "replies": 1
        },
        "createdAt": 1369261425
      },
      "collection": {
        "id": "1234",
        "articleId": "article1234",
        "url": "http://mysite.com/article",
        "title": "My Article"
      },
      "vis": 1,
      "type": 0
    }
  ],
  "authors": {
    "_up1792682@livefyre.com": {
      "displayName": "Blackjam",
      "tags": [],
      "profileUrl": "http://www.livefyre.com/profile/10460503/",
      "avatar": "http://avatars.fyre.co/a/1/bffd863c1c0d024033479b4d1eb34cfe/50.jpg",
      "type": 1,
      "id": "_up10460503@livefyre.com"
    }
  }
}

User Stats

gethttps://{networkName}.bootstrap.fyre.co/api/v3.0/author/{user}/stats/

Returns counts for the number of pieces of content created by a particular user and the number of Likes that user's content has received.

Path Parameters
namerequiredtypedescription
usertruestring

The ID for the profile whose stats are being retrieved. This argument consists of the username that you have provided us along with the network appended at the end (user@network). Also referred to as user_id and authorId in Livefyre responses. User(s) are allocated by you, the Livefyre customer, as part of the Single Sign On integration.

Responses

200

User Stat information

Example application/json
{
  "id": "apitest",
  "status": "ok",
  "code": "200",
  "data": {
    "content": {
      "approvedCount": 123123,
      "specialCount": 123127
    },
    "likes": {
      "receivedCount": 2151
    }
  }
}

Add User to Whitelist

posthttps://{networkName}.quill.fyre.co/api/v3.0/author/{user}/whitelist/

Whitelists a user, allowing them to post content which will not pass through Livefyre's default checks.

Path Parameters
namerequiredtypedescription
usertruestring

The ID of the user to whitelist.

Query Parameters
namerequiredtypedescription
networkfalsestring

A network ID of the network from which the user will be whitelisted. Must include either network or sites as a param.

retroactivefalsenumber

Indicates whether to apply the whitelist to previously posted content.

sitesfalsenumber

A comma separated list of site IDs from which the user will be whitelisted. Must include either network or sites as a param.

lftokentruestring

A Livefyre Authentication token of the user performing the whitelisting.

Responses

200

Whitelist

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

Remove User from Whitelist

posthttps://{networkName}.quill.fyre.co/api/v3.0/author/{user}/unwhitelist/

Removes the whitelist status from a user, and reapplies Livefyre's pre-moderation checks.

Path Parameters
namerequiredtypedescription
usertruestring

The ID of the user to unwhitelist.

Query Parameters
namerequiredtypedescription
networkfalsestring

A network ID of the network from which the user will be unwhitelisted. Must include either network or sites as a param.

retroactivefalsestring

Indicates whether to apply the unwhitelist to previously posted content.

sitesfalsenumber

A comma separated list of site IDs from which the user will be unwhitelisted. Must include either network or sites as a param.

lftokentruestring

A Livefyre Authentication token of the user performing the unwhitelisting.

Responses

200

Unwhitelist

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