Types | API v1 Documentation
This page defines the common data types that are used in the API
topic
Holds data related to a topic
{
"id": long - topic id,
"smallImageUrl": string - topic image url (16x16),
"mediumImageUrl": string - topic image url (48x48),
"imageUrl": string - topic image url (96x96),
"largeImageUrl": string - topic image url (192x192),
"backgroundImage":* string - URL of the topic's background image, if set
"backgroundRepeat":* string - CSS background-repeat property to be applied to the topic's background image
"backgroundColor":* string - topic's background color expressed as a six character hexa code (eg. FFCC00)
"description": string - topic description,
"name": string - topic name,
"shortName": string - topic short name (used in website urls),
"url": string - topic url
"isCurator": boolean - true if topic is curated by current user,
"curablePostCount":* int - number of curable posts in this topic,
"curatedPostCount": int - number of curated posts in this topic,
"unreadPostCount":* int - number of unread posts,
"creator": < user > - creator of the topic
"pinnedPost":* < post > - post pinned at the top of the topic
"curablePosts":* < post[] > - an array of posts to curate on this topic,
"curatedPosts":* < post[] > - an array of curated posts on this topic,
"tags": < topic_tag[] > - an array of tags present on this topic
"stats": < topic_stats > - the stats for this topic
}
* optional fields: depending on where and how the topic is returned
topic_tag
Holds data related to a tag of a topic
{
tag: string - the tag,
postCount: int - the number of posts in the topic tagged with this tag
}
post
Holds data related to a post
{
"id": long - the id of the post,
"content": string - post content in plain text,
"htmlContent": string - post content in HTML,
"htmlFragment": string - additional embedded HTML content if applicable (eg: embedded videos),
"title": string - The post title,
"thanksCount": int - The number of times this post was thanked,
"reactionsCount": int - The number reactions on this post,
"source": < source > - The source of the post,
"twitterAuthor": string - if source is a twitter search, the twitter user who wrote the original tweet
"url": string - original url of the post,
"scoopUrl": string - url of the post on the scoop platform,
"smallImageUrl": string - url of the image chosen by the curator, referred below
as "post image" (max width: 100px),
"mediumImageUrl": string - url of the image chosen by the curator, referred below
as "post image" (max width: 200px),
"imageUrl": string - url of the image chosen by the curator, referred below
as "post image" (max width: 400px),
"largeImageUrl": string - url of the image chosen by the curator, referred below
as "post image" (max width: 1024px),
"imageWidth": int - width in pixel of the original post image,
"imageHeight": int - height in pixel of the original post image,
"imageSize": int - size of the post image in the topic view,
"imagePosition": string - position of the post image in the topic view: "left" |
"center" | "right",
"imageUrls": string[] - array of urls of image selector in curation mode,
"tags": string[] - array of tags,
"commentsCount": int - the number of comments for this post,
"isUserSuggestion": boolean - true if the post is a user suggestion,
"pageViews": long - number of time this post has been viewed,
"edited": boolean - true if the description of this post has been manually edited by the curator,
"publicationDate": < timestamp > - the publication date of the original article
"curationDate": < timestamp > - the curation date of the post (aka the publication
date on Scoop.it)
"comments": < post_comment[] > - the list of comments
"thanked":* boolean - true if the user has already thanked this post,
"topicId": long - the id of the topic this post is belonging to
"topic":** < topic > - the topic this post is belonging to
}
* only present in authenticated mode
** optional field present when requesting /post or /compilation
post_comment
Holds data related to a comment. A comment is a typed reaction to a post.
{
"type": enum - the type a the comment one of "text", "share", "thank", "rescoop" (see above)
"text": string - the comment text if applicable,
"sharerId": string - the sharer id if applicable,
"rescoopedPostId": long - id of the rescooped post if applicable,
"date": < timestamp > - the comment date,
"author": < user > - the comment author
}
source
Holds data related to a Source: something that suggests content to curate to users.
{
"id": long - id of the source,
"name": string - name of the source (human readable),
"description": string - description of the source (human readable),
"type": string - type of the source (developper readable identifier),
"iconUrl": string - url of an icon representing this source,
"url": string - url of this source (may be a user profile url, a link to a
youtube search...)
}
user
Holds data related to a user
{
"id": long - user id,
"name": string - user name,
"shortName": string - user shortName (used in website urls),
"bio": string - user bio,
"smallAvatarUrl": string - user avatar url (16x16)
"mediumAvatarUrl": string - user avatar url (48x48)
"avatarUrl": string - user avatar url (96x96)
"largeAvatarUrl": string - user avatar url (192x192)
"sharers":* < sharer[] > - the list of sharers of the user
"curatedTopics": < topic[] > - the list of topic this user is the curator
"followedTopics": < topic[] > - the list of topics followed by this user
}
* only present on /profile request if the requested user is the current user.
sharer
Holds data related to a "sharer". A "sharer" is basically an account to a publish service the user
registered in the dedicated website page(eg: twitter account, facebook account, tumblr account).
{
"sharerName" string - display name of this sharer,
"sharerId" string - internal id,
"cnxId" long - internal id,
"name" string - the name of the user on the external service represented by this
sharer, for a facebook account it will be the facebook user name,
"mustSpecifyShareText" boolean - true if the external service needs a manually
specified text to publish a post,
}
notification
Holds data related to a notification.
{
"type": < notification_type > - type of the notification
... (data related to type)
}
For each notification type a bunch of fields is returned in the notification object.
This section is currently not documented. You are free to discover different kind of notifications.
We will not remove any field from a notification object. So it can be considered as stable.
notification_type
Enum describing the type of a < notification >. New values may be added at any time: don't be too strict in your code, just ignore notifications having a value you do not support.
enum {
topicNewComment - a comment has been added on a topic,
topicSubscription - a new user subscribed to a topic curated by the current user,
userPostThanked - a post has been thanked on a topic curated by the current user,
userWelcomeMessage - the welcome message notification,
userSnsContact - a friend or someone followed by the current user has joined Scoop.it,
userSnsTopicCreated - a friend or someone followed by the current user created a topic,
userSuggestionAccepted - a suggestion of the current user has been accepted,
userNewCommentResponse - a comment has been posted on a post the current user has
commented,
userNewUserSuggestion - a user suggestion has been accepted on a topic the current
user is following,
topicCuratorNewUserSuggestion - a new user suggestion has been added on a topic curated
by the current user,
pendingUserSuggestionReminder - there is pending user suggestion on a topic curated by the
current user,
}
topic_stats
Holds statistics related to a topic
{
"uv": int - visitors,
"uvp": int - visitors progression,
"v": int - views,
"vp": int - views progression
"updated": < timestamp > - last update timestamp,
"created": < timestamp > - creation timestamp,
"creatorName": string - creator name,
"creatorId": long - creator id,
"followers": int - number of followers of this topic
}
timestamp
A long (64 bit) integer counting the number of milliseconds since the Unix epoch (since midnight Coordinated Universal Time (UTC) of January 1, 1970, not counting leap seconds).
All server responses are returning the current server timestamp. (currentTime field)
|