Date range:
2010-09-03 
API quick documentation
All the data in Piwik is available through simple APIs. This plugin is the web service entry point, that you can call to get your Web Analytics data in xml, json, php, csv, etc.
For more information about the Piwik APIs, please have a look at the Introduction to Piwik API and the Piwik API Reference .
User authentication
If you want to request data within a script, a crontab, etc. you need to add the parameter &token_auth=anonymous to the API calls URLs that require authentication.
token_auth = anonymous
This token_auth is as secret as your login and password, do not share it!
Successfully loaded 19 APIs
Module API
-
API.getDefaultMetrics () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
API.getDefaultProcessedMetrics () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
API.getMetadata (idSite, apiModule, apiAction, apiParameters = 'Array') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
API.getReportMetadata (idSites = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
API.getProcessedReport (idSite, date, period, apiModule, apiAction, apiParameters = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module Actions
-
Actions.getPageUrls (idSite, period, date, expanded = '', idSubtable = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Actions.getPageTitles (idSite, period, date, expanded = '', idSubtable = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Actions.getDownloads (idSite, period, date, expanded = '', idSubtable = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Actions.getOutlinks (idSite, period, date, expanded = '', idSubtable = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module ExampleAPI
-
ExampleAPI.getPiwikVersion () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getAnswerToLife () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getObject () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getSum (a = '0', b = '0') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getNull () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getDescriptionArray () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getCompetitionDatatable () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getMoreInformationAnswerToLife () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
ExampleAPI.getMultiArray () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
Module Goals
-
Goals.getGoals (idSite) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
Goals.addGoal (idSite, name, matchAttribute, pattern, patternType, caseSensitive = '', revenue = '') [ No example available ]
-
Goals.updateGoal (idSite, idGoal, name, matchAttribute, pattern, patternType, caseSensitive = '', revenue = '') [ No example available ]
-
Goals.deleteGoal (idSite, idGoal) [ No example available ]
-
Goals.get (idSite, period, date, idGoal = '', columns = 'Array') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Goals.getConversions (idSite, period, date, idGoal = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Goals.getConversionRate (idSite, period, date, idGoal = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Goals.getRevenue (idSite, period, date, idGoal = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module LanguagesManager
-
LanguagesManager.isLanguageAvailable (languageCode) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
LanguagesManager.getAvailableLanguages () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
LanguagesManager.getAvailableLanguagesInfo () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
LanguagesManager.getAvailableLanguageNames () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
LanguagesManager.getTranslationsForLanguage (languageCode) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
LanguagesManager.getLanguageForUser (login) [ No example available ]
-
LanguagesManager.setLanguageForUser (login, languageCode) [ No example available ]
-
LanguagesManager.getLanguageForSession () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
LanguagesManager.setLanguageForSession (languageCode) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
Module Live
-
Live.getLastVisitForVisitor (visitorId, idSite) [ No example available ]
-
Live.getLastVisitsForVisitor (visitorId, idSite, limit = '10') [ No example available ]
-
Live.getLastVisits (idSite, limit = '10', minIdVisit = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
Live.getLastVisitsDetails (idSite, period = '', date = '', limit = '25', filter_offset = '0', minIdVisit = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Live.getUsersInLastXMin (idSite, minutes = '30') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
Live.getUsersInLastXDays (idSite, days = '10') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
Live.getPageImpressionsInLastXDays (idSite, days = '10') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
Live.getPageImpressionsInLastXMin (idSite, minutes = '30') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
Module PDFReports
-
PDFReports.addReport (idSite, description, period, reports, emailMe = '1', additionalEmails = '') [ No example available ]
-
PDFReports.updateReport (idReport, idSite, description, period, reports, emailMe = '1', additionalEmails = '') [ No example available ]
-
PDFReports.deleteReport (idReport) [ No example available ]
-
PDFReports.getReports (idSite = '', period = '', idReport = '', ifSuperUserReturnOnlySuperUserReports = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
PDFReports.generateReport (idReport, date, idSite = '', outputType = '', periodUsedFullReport = 'day') [ No example available ]
-
PDFReports.sendEmailReport (idReport, idSite) [ No example available ]
-
PDFReports.getPeriodToFrequency () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
Module Provider
-
Provider.getProvider (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module Referers
-
Referers.getRefererType (idSite, period, date, typeReferer = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getKeywords (idSite, period, date, expanded = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getSearchEnginesFromKeywordId (idSite, period, date, idSubtable) [ No example available ]
-
Referers.getSearchEngines (idSite, period, date, expanded = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getKeywordsFromSearchEngineId (idSite, period, date, idSubtable) [ No example available ]
-
Referers.getCampaigns (idSite, period, date, expanded = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getKeywordsFromCampaignId (idSite, period, date, idSubtable) [ No example available ]
-
Referers.getWebsites (idSite, period, date, expanded = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getUrlsFromWebsiteId (idSite, period, date, idSubtable) [ No example available ]
-
Referers.getNumberOfDistinctSearchEngines (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getNumberOfDistinctKeywords (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getNumberOfDistinctCampaigns (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getNumberOfDistinctWebsites (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
Referers.getNumberOfDistinctWebsitesUrls (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module SEO
-
SEO.getRank (url) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
Module SitesManager
-
SitesManager.getJavascriptTag (idSite, piwikUrl = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSiteFromId (idSite) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSiteUrlsFromId (idSite) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getAllSitesId () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSitesWithAdminAccess () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSitesWithViewAccess () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSitesWithAtLeastViewAccess (limit = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSitesIdWithAdminAccess () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSitesIdWithViewAccess () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSitesIdWithAtLeastViewAccess () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getSitesIdFromSiteUrl (url) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.addSite (siteName, urls, excludedIps = '', excludedQueryParameters = '', timezone = '', currency = '') [ No example available ]
-
SitesManager.deleteSite (idSite) [ No example available ]
-
SitesManager.addSiteAliasUrls (idSite, urls) [ No example available ]
-
SitesManager.setGlobalExcludedIps (excludedIps) [ No example available ]
-
SitesManager.getExcludedQueryParametersGlobal () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.setGlobalExcludedQueryParameters (excludedQueryParameters) [ No example available ]
-
SitesManager.getExcludedIpsGlobal () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getDefaultCurrency () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.setDefaultCurrency (defaultCurrency) [ No example available ]
-
SitesManager.getDefaultTimezone () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.setDefaultTimezone (defaultTimezone) [ No example available ]
-
SitesManager.updateSite (idSite, siteName, urls = '', excludedIps = '', excludedQueryParameters = '', timezone = '', currency = '') [ No example available ]
-
SitesManager.getCurrencyList () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getCurrencySymbols () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getTimezonesList () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
SitesManager.getPatternMatchSites (pattern) [ No example available ]
Module UserCountry
-
UserCountry.getCountry (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserCountry.getContinent (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserCountry.getNumberOfDistinctCountries (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module UserSettings
-
UserSettings.getResolution (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserSettings.getConfiguration (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserSettings.getOS (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserSettings.getBrowser (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserSettings.getBrowserType (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserSettings.getWideScreen (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
UserSettings.getPlugin (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module UsersManager
-
UsersManager.setUserPreference (userLogin, preferenceName, preferenceValue) [ No example available ]
-
UsersManager.getUserPreference (userLogin, preferenceName) [ No example available ]
-
UsersManager.getUsers () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
UsersManager.getUsersLogin () [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
UsersManager.getUsersSitesFromAccess (access) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
UsersManager.getUsersAccessFromSite (idSite) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
UsersManager.getSitesAccessFromUser (userLogin) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
UsersManager.getUser (userLogin) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
UsersManager.getUserByEmail (userEmail) [ No example available ]
-
UsersManager.addUser (userLogin, password, email, alias = '') [ No example available ]
-
UsersManager.updateUser (userLogin, password = '', email = '', alias = '') [ No example available ]
-
UsersManager.deleteUser (userLogin) [ No example available ]
-
UsersManager.userExists (userLogin) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
]
-
UsersManager.userEmailExists (userEmail) [ No example available ]
-
UsersManager.setUserAccess (userLogin, access, idSites) [ No example available ]
-
UsersManager.getTokenAuth (userLogin, md5Password) [ No example available ]
Module VisitFrequency
-
VisitFrequency.get (idSite, period, date, columns = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitFrequency.getVisitsReturning (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitFrequency.getActionsReturning (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitFrequency.getSumVisitsLengthReturning (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitFrequency.getBounceCountReturning (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitFrequency.getConvertedVisitsReturning (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module VisitTime
-
VisitTime.getVisitInformationPerLocalTime (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitTime.getVisitInformationPerServerTime (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module VisitorInterest
-
VisitorInterest.getNumberOfVisitsPerVisitDuration (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitorInterest.getNumberOfVisitsPerPage (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
Module VisitsSummary
-
VisitsSummary.get (idSite, period, date, columns = '') [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getVisits (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getUniqueVisitors (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getActions (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getMaxActions (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getBounceCount (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getVisitsConverted (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getSumVisitsLength (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]
-
VisitsSummary.getSumVisitsLengthPretty (idSite, period, date) [ Example in
XML,
PHP,
Json,
Csv,
Tsv (Excel),
Basic html
, RSS of the last 10 days, 5 weeks,
XML of the last 10 days
]