node-parsely
A javascript client for the Parse.ly APIs.
Installation
npm install parsely
Documentation
This is a very light wrapper around the parsely.com API, providing the same options as the API docs there. The wiki has a full set of API docs, where you can see what method corresponds to which API, and a list of the parameters they take.
Tracking Events
var parsely = ; var trackingData = idsite: 'parselyid' date: data: parsely_site_uuid: 'unique id for client' ; parsely;
Analytics
parselyanalytics;
Development
git clone https://github.com/toddself/node-parsely
cd node-parsely
npm install
API
- Source:
-
<static> byType(type, opts, auth, cb) → {object}
-
Returns a list of posts, authors, section topics or tags depending on specified type. Docs: analytics/{type}
Parameters:
Name Type Argument Description type
string One of
posts
,authors
,sections
,topics
,tags
opts
object <optional>
A list of options for the call
Properties
Name Type Argument Description days
string <optional>
Number of days since today to consider for _hits value. Defaults to 3.
period_start
mixed <optional>
Period of data to cover. Must supply
opts.period_end
as wellperiod_end
mixed <optional>
Period of data to cover, cannot be in the future. Must use
opts.period_start
as well.pub_date_state
mixed <optional>
Start date of content publication to consider. Must use
opts.pub_date_end
as well.pub_date_end
mixed <optional>
End date of content publication to consider. Must use
opts.pub_date_start
as well.sort
string <optional>
Sort value. Defaults to
_hits
limit
string <optional>
Number of records to retrieve, detauls to
10
page
string <optional>
Page number of results set, defaults to
1
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
- Source:
Returns:
undefined
- Type
- object
-
<static> metaValueDetail(meta, value, opts, auth) → {object}
-
Returns a list of posts falling under the specified author, section or topic. Docs: /analaytics/{meta}/{value}/detail
Parameters:
Name Type Argument Description meta
string What values to return. Must be one of
author
,section
,topic
,tag
value
string Search term for query
opts
object <optional>
A list of options for the call
Properties
Name Type Argument Description days
string <optional>
Number of days since today to consider for _hits value. Defaults to 3.
period_start
mixed <optional>
Period of data to cover. Must supply
opts.period_end
as wellperiod_end
mixed <optional>
Period of data to cover, cannot be in the future. Must use
opts.period_start
as well.pub_date_state
mixed <optional>
Start date of content publication to consider. Must use
opts.pub_date_end
as well.pub_date_end
mixed <optional>
End date of content publication to consider. Must use
opts.pub_date_start
as well.sort
string <optional>
Sort value. Defaults to
_hits
limit
string <optional>
Number of records to retrieve, detauls to
10
page
string <optional>
Page number of results set, defaults to
1
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret* @param {Function} cb [description]
- Source:
Returns:
undefined
- Type
- object
-
<static> postDetail(url, opts, auth, cb) → {object}
-
Returns the metadata and total pageviews for a post specified by URL. Docs: /analytics/post/detail
Parameters:
Name Type Argument Description url
string Canonical URL for asset. Must start with http/s
opts
object <optional>
A list of options for the call
Properties
Name Type Argument Description days
string <optional>
Number of days since today to consider for _hits value. Defaults to 3.
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done
- Source:
Returns:
undefined
- Type
- object
- Source:
-
<static> clicks(apikey, opts, auth, cb) → {object}
-
Retrieve a list of URLs and the corresponding clicks recorded by the API over a period. Docs: /clicks
Parameters:
Name Type Argument Description apikey
string The publisher API key
opts
object <optional>
A list of options for the call
Properties
Name Type Argument Description url
string <optional>
Restrict the listing to a specified URL
days
string <optional>
Number of days since today to consider for _hits value. Defaults to 3.
period_start
mixed <optional>
Period of data to cover. Must supply
opts.period_end
as wellperiod_end
mixed <optional>
Period of data to cover, cannot be in the future. Must use
opts.period_start
as well.limit
string <optional>
Number of records to retrieve, detauls to
10
page
string <optional>
Page number of results set, defaults to
1
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
- Source:
Returns:
undefined
- Type
- object
-
<static> clicks(apikey, opts, auth, cb) → {object}
-
Retrieve a list of URLs and the corresponding clicks recorded by the API over a period. Docs: /clicks
Parameters:
Name Type Argument Description apikey
string The publisher API key
opts
object <optional>
A list of options for the call
Properties
Name Type Argument Description days
string <optional>
Number of days since today to consider for _hits value. Defaults to 3.
period_start
mixed <optional>
Period of data to cover. Must supply
opts.period_end
as wellperiod_end
mixed <optional>
Period of data to cover, cannot be in the future. Must use
opts.period_start
as well.limit
string <optional>
Number of records to retrieve, detauls to
10
page
string <optional>
Page number of results set, defaults to
1
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
- Source:
Returns:
undefined
- Type
- object
-
<static> createOverride(url, expiry, priority, apikey, auth, cb) → {object}
-
Specify posts to be ranked in the recommendation API. Docs: /editorial_override
Parameters:
Name Type Argument Description url
string URL of the article to re-rank
expiry
mixed <optional>
Date, in
YYYY-MM-DD
to expire ranking (max: 2 weeks)priority
number The priority you want.
1
is highest...apikey
string Your publisher API key
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
- Source:
Returns:
undefined
- Type
- object
-
<static> editorialOverrides(limit, page, apikey, auth, cb) → {object}
-
Retrieve list of URLs that should be given special ranking. Docs: /editoral_overrides
Parameters:
Name Type Argument Description limit
number <optional>
Number of records to retrieve, defaults to 10
page
number <optional>
Page to request
apikey
string publisher's api key
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
- Source:
Returns:
undefined
- Type
- object
-
<static> history(uuid, apikey, auth, cb) → {object}
-
Retrieve a list of URLs visited by a user by UUID. Docs: /history. THIS METHOD'S SIGNATURE DIFFERS FROM THE DOCS SINCE THEY ARE CALLING A UUID
DAYS
Parameters:
Name Type Argument Description uuid
string UUID of person to get history
apikey
string The publisher API key
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
- Source:
Returns:
undefined
- Type
- object
-
<static> profile(uuid, url, apikey, auth, cb) → {object}
-
Train a user profile for the purpose of personalized recommendations. Docs: /profile
Parameters:
Name Type Argument Description uuid
string UUID for the user profile being trained
url
url The URL being trained against the profile
apikey
string Publisher API key
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do with the results
- Source:
Returns:
undefined
- Type
- object
-
<static> related(type, criteria, apikey, opts, auth, cb) → {object}
-
Retrieve a list of post recommendations which are either personalized or for a specific URL. Docs: /related
Parameters:
Name Type Argument Description type
string Recommend by
uuid
orurl
criteria
string Either the UUID or URL to retrieve recommendations for
apikey
string The publisher API key
opts
object <optional>
A list of options for the call
Properties
Name Type Argument Description days
string <optional>
Number of days since today to consider for _hits value. Defaults to 3.
pub_date_state
mixed <optional>
Start date of content publication to consider. Must use
opts.pub_date_end
as well.pub_date_end
mixed <optional>
End date of content publication to consider. Must use
opts.pub_date_start
as well.limit
string <optional>
Number of records to retrieve, detauls to
10
page
string <optional>
Page number of results set, defaults to
1
section
string <optional>
Return recommendations that belong only in the specified section
author
string <optional>
Return recommendations that belong only to the specified author
tag
string <optional>
Return recommendations that belong only to the specified tag
strategy
string <optional>
Algorithm to use for search. One of
click
orrecency
. Defaults torecency
clickMethod
string <optional>
What click method to use for when
opts.strategy
isclick
. One ofref_social
,ref_search
,ref_internal
sort
string <optional>
What to sort the results by. There are currently 2 valid options:
score
, which will sort articles by overall score andpub_date
which will sort results by their publication date. The default isscore
.auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
- Source:
Returns:
undefined
- Type
- object
- Source:
-
<static> byType(type, apikey, opts, auth, cb) → {object}
-
Return a list of top referrers by type. Docs: /referrers/{type}
Parameters:
Name Type Argument Description type
string One of
social
,search
,other
,internal
apikey
string Your parsley API key
opts
object <optional>
Options for the call.
Properties
Name Type Argument Description section
string <optional>
Section to restrict this query to.
tag
string <optional>
Tag to restrict this query to.
domain
string <optional>
domain to restrict this query to.
days
number <optional>
Number of days since today to consider; defaults to 3 days. Use
days=14
ordays=30
to only consider traffic from last several days.period_start
mixed <optional>
Period of data to cover. Must be specified with
period_end
.period_end
mixed <optional>
Period of data to cover; must be specified with p
eriod_start
, must be greater than that value, and must not be in the future.pub_date_start
mixed <optional>
Publication date. Must be specified with
pub_date_end
.pub_date_end
mixed <optional>
Publication end date; must be specified with
pub_date_start
, must be greater than that value, and must not be in the future.auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do with the results
- Source:
Returns:
undefined
- Type
- object
-
<static> byTypeMetaType(type, meta, apikey, opts, auth, cb) → {object}
-
Return a list of the top posts, authors, sections or topics referred to. Docs: /referrers/{referrer_type}/{meta_type}
Parameters:
Name Type Argument Description type
string One of
social
,search
,other
,internal
meta
string One of
posts
,authors
,sections,
topics,tags
apikey
string Your parsley API key
opts
object <optional>
Options for the call.
Properties
Name Type Argument Description section
string <optional>
Section to restrict this query to.
tag
string <optional>
Tag to restrict this query to.
domain
string <optional>
domain to restrict this query to.
days
number <optional>
Number of days since today to consider; defaults to 3 days. Use
days=14
ordays=30
to only consider traffic from last several days.period_start
mixed <optional>
Period of data to cover. Must be specified with
period_end
.period_end
mixed <optional>
Period of data to cover; must be specified with p
eriod_start
, must be greater than that value, and must not be in the future.pub_date_start
mixed <optional>
Publication date. Must be specified with
pub_date_end
.pub_date_end
mixed <optional>
Publication end date; must be specified with
pub_date_start
, must be greater than that value, and must not be in the future.auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do with the results
- Source:
Returns:
undefined
- Type
- object
-
<static> metaValueDetail(type, meta, value, apikey, opts, auth, cb) → {object}
-
Returns a list of posts falling under the specified author, section or topic. Docs: /referrers/{referrer_type}/{meta_type}/{meta_value}/detail
Parameters:
Name Type Argument Description type
string One of
social
,search
,other
,internal
meta
string One of
posts
,authors
,sections,
topics,tags
value
string The value for this meta type
apikey
string Your parsley API key
opts
object <optional>
Options for the call.
Properties
Name Type Argument Description tag
string <optional>
Tag to restrict this query to.
domain
string <optional>
domain to restrict this query to.
days
number <optional>
Number of days since today to consider; defaults to 3 days. Use
days=14
ordays=30
to only consider traffic from last several days.period_start
mixed <optional>
Period of data to cover. Must be specified with
period_end
.period_end
mixed <optional>
Period of data to cover; must be specified with p
eriod_start
, must be greater than that value, and must not be in the future.pub_date_start
mixed <optional>
Publication date. Must be specified with
pub_date_end
.pub_date_end
mixed <optional>
Publication end date; must be specified with
pub_date_start
, must be greater than that value, and must not be in the future.auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do with the results
- Source:
Returns:
undefined
- Type
- object
-
<static> postDetail(url, apikey, opts, auth, cb) → {object}
-
Return a list of the top referrers for a given URL. Docs: /referrers/post/detail
Parameters:
Name Type Argument Description url
string URL to get details on. Must start with http|https
apikey
string The publisher API key
opts
object <optional>
Options for the call
Properties
Name Type Argument Description days
number <optional>
Number of days since today to consider; defaults to 3 days. Use
days=14
ordays=30
to only consider traffic from last several days.period_start
mixed <optional>
Period of data to cover. Must be specified with
period_end
.period_end
mixed <optional>
Period of data to cover; must be specified with p
eriod_start
, must be greater than that value, and must not be in the future.pub_date_start
mixed <optional>
Publication date. Must be specified with
pub_date_end
.pub_date_end
mixed <optional>
Publication end date; must be specified with
pub_date_start
, must be greater than that value, and must not be in the future.auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do with the results
- Source:
Returns:
undefined
- Type
- object
-
<static> search(q, opts, auth, cb) → {object}
-
Search for Posts by keyword or query. Docs: /search
Parameters:
Name Type Argument Description q
string Search query. Will be properly escaped
opts
object <optional>
A list of options for the call
Properties
Name Type Argument Description days
string <optional>
Number of days since today to consider for _hits value. Defaults to 3.
pub_date_state
mixed <optional>
Start date of content publication to consider. Must use
opts.pub_date_end
as well.pub_date_end
mixed <optional>
End date of content publication to consider. Must use
opts.pub_date_start
as well.limit
string <optional>
Number of records to retrieve, detauls to
10
page
string <optional>
Page number of results set, defaults to
1
section
string <optional>
Return recommendations that belong only in the specified section
author
string <optional>
Return recommendations that belong only to the specified author
tag
string <optional>
Return recommendations that belong only to the specified tag
strategy
string <optional>
Algorithm to use for search. One of
click
orrecency
. Defaults torecency
clickMethod
string <optional>
What click method to use for when
opts.strategy
isclick
. One ofref_social
,ref_search
,ref_internal
sort
string <optional>
What to sort the results by. There are currently 2 valid options:
score
, which will sort articles by overall score andpub_date
which will sort results by their publication date. The default isscore
.auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
Returns:
undefined
- Type
- object
-
<static> byType(type, auth, cb) → {object}
-
Retreive a listing of tops posts or authors by social shares across top social networks. Docs: /shares/{type}
Parameters:
Name Type Argument Description type
string One of
posts
,authors
opts.pub_days
number <optional>
Number of days since an article has been published since today to consider for _shares value. Use days=1 or days=3 to only consider shares from last several days.
opts.pub_date_state
mixed <optional>
Start date of content publication to consider. Must use
opts.pub_date_end
as well.opts.pub_date_end
mixed <optional>
End date of content publication to consider. Must use
opts.pub_date_start
as well.opts.limit
string <optional>
Number of records to retrieve, detauls to
10
opts.page
string <optional>
Page number of results set, defaults to
1
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
Returns:
undefined
- Type
- object
-
<static> postDetail(url, auth, cb) → {object}
-
For a given canonical URL, return the total share counts across the top social networks. Docs: /shares/post/detail
Parameters:
Name Type Argument Description url
string Canonical URL. Must start with http|https
auth
object <optional>
Authorization information. If not using, pass in
null
orundefined
Properties
Name Type Argument Description secretKey
string <optional>
If using oAuth your app's secret. Must be used with
auth.consumerKey
consumerKey
string <optional>
If using oAuth, your app's consumer key. Must be used with
auth.secretKey
sharedSecret
string <optional>
If using shared secrets, your shared secret
cb
function What to do when it's done!
Returns:
undefined
- Type
- object
-
<static> track(params, user_agent, cb) → {object}
-
Sends a tracking request to pixel.parsel.com. Docs: data insertion api
Parameters:
Name Type Argument Description params
object map of values
Properties
Name Type Description idsite
string site ID assigned by parsely
[date]
date time/date of request.
ip_address
string IP Address of person performing action
url
string URL of page action was taken on
urlref
string Referrer
screen
string Screen dimensions: Monitor width x height|Browser width x height|color-depth: 1024x758|900x600|24
title
string Title of the document
action
string Type of request (pageview)
body
object user data about user being tracked
Properties
Name Type Description parsely_site_uuid
sting Unique identifier for user
user_agent
string <optional>
User-Agent of browser being used
cb
function <optional>
callback to fire when request is complete
Returns:
undefined
- Type
- object
generated with docme
License
node-parsely copyright 2013 Todd Kennedy. MIT Licensed.