API methods

Here are the available API methods for FeedPress.

All API requests must be made to https://api.feedpress.com with POST or GET method and answers are JSON formatted.

All API requests must have a key parameter with your API key.

If you want a specific method that is not in this list, please contact us.

GET /login.json

Redirects the user to the FeedPress authentication page. See Authentication for more details.

ParameterDescriptionRequired
callback URL to send the user to after the authentication. Required

GET /logout.json

Deletes the authenticated user's token.

ParameterDescriptionRequired
token Authenticated user's token. Required

Response example:

{
    errors: [ ],
    data: [ ],
    code: 1,
    message: "The token has been deleted."
}

GET /account.json

Retrieves various informations about the authenticated user.

ParameterDescriptionRequired
token Authenticated user's token. Required

Response example:

{
    login: "maxime",
    premium: true,
    feeds: [
        {
            id: 1,
            name: "maxime",
            subscribers: 962,
            url: "http://feedpress.me/maxime"
        }
    ],
    code: 1
}

POST /feeds/create.json

Creates a new feed for the authenticated user.

ParameterDescriptionRequired
token Authenticated user's token. Required
url The current feed's URL (Not a FeedBurner URL). Required
alias Desired feed alias on FeedPress. Required
tracking If sent, enables click tracking and link opening. OptionalNot enabled by default.
locale Desired locale for the feed: "en" or "fr". OptionalDefault value: "en"

Response example:

{
    "errors": [ ],
    "data": [ ],
    "code": 1,
    "message": "The feed has been created."
}

POST /feeds/update.json

Updates a new feed for the authenticated user according to the submitted parameters.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
url Updates the original feed URL. Optional

Response example:

{
    "errors": [ ],
    "data": [ ],
    "code": 1,
    "message": "The feed has been updated."
}

GET /feeds/subscribers.json

Retrieves subscribers statistics for the last 30 days about a specific feed.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required

Response example:

{
    "stats": [
        {
            "day": 1364425200,
            "greader": 742,
            "other": 13,
            "direct": 186,
            "newsletter": 21
        },
        ...
    ],
    "code": 1
}
  • day: UNIX timestamp of the day
  • greader: Legit RSS readers subscribers
  • other: Bots requests — not counted as subscribers
  • direct: Direct hits from browsers
  • newsletter: Newsletter subscribers

GET /feeds/readers.json

Retrieves the last readers statistics about a specific feed.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required

Response example:

{
    "readers": [
        {
            "name": "NewsBlur Feed Fetcher",
            "feedId": null,
            "subscribers": 12
        },
        {
            "name": "Feedfetcher-Google",
            "feedId": 4161868654975714300,
            "subscribers": 51
        },
        {
            "name": "Netvibes",
            "feedId": 20818948,
            "subscribers": 4
        },
        ...
    ],
    "code": 1
}

GET /feeds/ping.json

Tells FeedPress to refresh the specified feed.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required

Response example:

{
    "errors": [],
    "data": [],
    "code": 1,
    "message": "The feed has been refreshed."
}

GET /feeds/hit.json

Tells FeedPress to record a "virtual" hit for the specified feed.

Useful if you don't want FeedPress to distribute your feed but still want the analytics.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
ua User Agent. Required
ip IP address. Required

Response example:

{
    "errors": [],
    "data": [],
    "code": 1,
    "message": "The hit has been recorded."
}

GET /feeds/tracking/items.json

Returns the tracked items for the specified feed.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
since Start date. OptionalFormat: YYYY-MM-DD. By default, "0000-00-00".
to End date. OptionalFormat: YYYY-MM-DD. By default, today's date.

Response example:

{
    "code": 1,
    "items": [
        {
            "id": 1,
            "title": "#1 Welcome to my podcast",
            "url": "http:\/\/feed.mypodcast.com\/shows\/1_Welcome.mp3",
            "type": "podcast",
            "hits": 251,
            "uniques": 228
        }
    ]
}

GET /feeds/tracking/url.json

Returns the FeedPress tracking URL for the specified feed and original URL.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
url Original link URL. Required

Response example:

{
    "errors": [],
    "data": [],
    "code": 1,
    "message": "https://tracking.feedpress.com/link/1/1/podcast.mp3"
}

GET /feeds/newsletter/subscribers.json

Retrieves the subscribers list for the feed's newsletter.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required

Response example:

{
    "subscribers": [
        {
            "email": "johndoe@gmail.com",
            "confirmed": 1
        }
    ],
}

GET /feeds/newsletter/check.json

Check the status of a particular email in your feed's newsletter.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
email Email address. Required

Response example:

{
    "subscribers": [
        {
            "email": "johndoe@gmail.com",
            "confirmed": 1
        }
    ],
}

POST /feeds/newsletter/add.json

Adds an email address to the feed's newsletter.

Notice: This will send an email to the address to confirm its subscription.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
email E-mail address. Required

Response example:

{
    "errors": [],
    "data": [],
    "code": 1,
    "message": "The email has been added to the newsletter."
}

POST /feeds/hosting/upload.json

Uploads an audio file to your podcast hosting storage.

Notice: You need to send it as multipart/form-data.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
file Binary data of the file to upload. Required
artwork Binary data of the file to upload for the audio file artwork. OptionalKeeps existing tags by default.
title ID3v2 tag for "Title" field. OptionalKeeps existing tags by default.
album ID3v2 tag for "Album" field. OptionalKeeps existing tags by default.
artist ID3v2 tag for "Artist" field. OptionalKeeps existing tags by default.
comment ID3v2 tag for "Comment" field. OptionalKeeps existing tags by default.

Response example:

{
    "message": "The file has been uploaded.",
    "data": {
        "url": "http:\/\/podcasts-1.feedpress.co\/618\/Podcast.mp3"
    },
    "code": 1
}

POST /feeds/hosting/delete.json

Deletes an audio file in your podcast hosting storage.

ParameterDescriptionRequired
token Authenticated user's token. Required
feed Feed name. Required
url URL on FeedPress of the uploaded file to delete. Required

Response example:

{
    "message": "The file has been deleted.",
    "data": {
        "url": "http:\/\/podcasts-1.feedpress.co\/618\/Podcast.mp3"
    },
    "code": 1
}

POST /hostnames/record.json

Create a record for a specified hostname.

ParameterDescriptionRequired
token Authenticated user's token. Required
hostname_id Hostname numeric ID. Required
path Relative path of the record, for instance / or /myfeed. Required
type Record type: feed for feed redirection or url for standard HTTP redirection. Required
destination Feed ID or URL depending on the type specified. Required

Response example:

{
    "errors": [],
    "data": [],
    "code": 1,
    "message": "The record has been added. The update will be visible in less than 2 minutes."
}