Jennifer Pinkham > Business-SiteCatalyst-1.2.1 > Business::SiteCatalyst



Annotate this POD


View/Report Bugs
Module Version: v1.2.1   Source   Latest Release: Business-SiteCatalyst-1.2.2


Business::SiteCatalyst - Interface to Adobe Omniture SiteCatalyst's REST API.


Version 1.2.1


This module allows you to interact with Adobe (formerly Omniture) SiteCatalyst, a web analytics service. It encapsulates all the communications with the API provided by Adobe SiteCatalyst to offer a Perl interface for managing reports, pulling company-specific SiteCatalyst data (ex: token usage), uploading SAINT data (feature not implemented yet), etc.

Please note that you will need to have purchased the Adobe SiteCatalyst product, and have web services enabled within your account first in order to obtain a web services shared secret, as well as agree with the Terms and Conditions for using the API.

NOTE: the 'api_subdomain' option/config variable is utilized for the api url. To determine your specific API URL/Endpoint, please visit Most users won't need to set this variable unless the default causes errors.

API URL: 'https://' . $api_subdomain . ''

        use Business::SiteCatalyst;
        # Create an object to communicate with Adobe SiteCatalyst
        my $site_catalyst = Business::SiteCatalyst->new(
                username        => 'dummyusername',
                shared_secret   => 'dummysecret',
                api_subdomain   => 'api|api2', #optional; default value='api'



Create a new Adobe SiteCatalyst object that will be used as the interface with Adobe SiteCatalyst's API

        use Business::SiteCatalyst;
        # Create an object to communicate with Adobe SiteCatalyst
        my $site_catalyst = Business::SiteCatalyst->new(
                username        => 'dummyusername',
                shared_secret   => 'dummysecret',
                api_subdomain   => 'api|api2', #optional; default value='api'

Creates a new object to communicate with Adobe SiteCatalyst.

'username' and 'shared_secret' are mandatory. The 'verbose' parameter is optional and defaults to not verbose.


Create a new Business::SiteCatalyst::Report object, which will allow retrieval of SiteCatalyst reports.

        # Create a new report
        my $report = $site_catalyst->instantiate_report(
                type            => 'report type',
                report_suite_id => 'report suite id',

        # Act on an existing report
        my $report = $site_catalyst->instantiate_report(
                report_id       => 'report id',



Create a new Business::SiteCatalyst::Company object, which will allow retrieval of company-specific SiteCatalyst data.

        my $company = $site_catalyst->instantiate_company();

Parameters: none



Internal, formats the JSON call with the arguments provided and checks the reply.

        my ( $error, $response_data ) = $site_catalyst->send_request(
                method => $method,
                data   => $data,


Control the verbosity of the debugging output.

$site_catalyst->verbose( 1 ); # turn on verbose information

$site_catalyst->verbose( 0 ); # quiet!

warn 'Verbose' if $site_catalyst->verbose(); # getter-style


By default, only basic tests that do not require a connection to Adobe SiteCatalyst's platform are run in t/.

To run the developer tests, you will need to do the following:

You can now create a file named in your own directory, with the following content:

        package Adobe SiteCatalystConfig;
        sub new
                        username                => 'username',
                        shared_secret           => 'shared_secret',
                        report_suite_id         => 'report_suite_id',
                        api_subdomain           => 'api|api2', #optional. default='api'
                        verbose                 => 0, # Enable this for debugging output

You will then be able to run all the tests included in this distribution, after adding the path to Adobe to your library paths.


Jennifer Pinkham, <jpinkham at>.


Please report any bugs or feature requests to bug-Business-SiteCatalyst at, or through the web interface at I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.


You can find documentation for this module with the perldoc command.

        perldoc Business::SiteCatalyst

You can also look for information at:


Thanks to ThinkGeek ( and its corporate overlords at Geeknet (, for footing the bill while I write code for them! Special thanks for technical help from fellow ThinkGeek CPAN author Guillaume Aubert


Copyright 2012 Jennifer Pinkham.

This program is free software; you can redistribute it and/or modify it under the terms of the Artistic License.

See for more information.

syntax highlighting: