Getting Started
From KickApps Documentation
The following section is designed to orient you to working with the KickApps APIs. We have also provided a glossary of terms that you will find frequently used in this documentation.
Contents |
Developer Keys and the CreateToken Call
You will receive an email from KickApps with a developer key to use during this release. In the future, you will be able to issue developer keys in the Affiliate Center. You'll use your key to create a developer token that you'll then use to authenticate your requests to KickApps.
- Developer Key: A developer's individual ID used to access information, used in the Create Token call (LINK).
- Token: An authenticated session token for a single member of an affiliate site.
Your key and token are good for working with a specific member of a specific affiliate site. If your organization has multiple KickApps-powered sites, you'll need to request a separate key and create a separate token for each site. This setup helps ensure that only authorized developers can work with your information. A valid call to the KickApps REST server returns a JSON payload.
Server Setup and Capacity
When you set up your service with KickApps, we will work with you to access your requirements for both what features of our platform best suit your needs (for example, API calls, hosted pages, widgets, feeds) and also your storage needs.
Basic Server Setup
Our server setup is as follows:
| Application Servers | 64-bit dual core RHEL4 running Apache Geronimo 1.1.1 |
| Transcoding Servers | Clustered Windows 2003 |
| Web Servers | Clustered RHEL4 static web servers |
| Video Servers | Java Video Blogging Servers |
| Database Servers | Replicated, Clustered and load balanced MySQL 5.0.42 |
Load Test Results
The following results show our current server capacity as of February 28th 2008, which continues to grow as we power additional sites:
| Page impressions per second | 81.9 |
| Page impressions per minute | 4,914 |
| Page impressions per hour | 294840 |
| Page impressions per day | 3,538,080 |
| Page impressions per month | 106,142,400 |
| App session duration (Session Timeout in Minutes ) | 45 |
| Average Unix Server Load per hour measured during load test | 30 percent |
CDN Integration
KickApps tracks views of your media content that we host through the Akamai Content Deliver Network (CDN). When you make a valid API call, the relevant responses from KickApps include:
- views. The number of times this media item was viewed. views increments each time the media item is viewed if the item is hosted by KickApps through Akamai.
- uploadToAkamai. Date and timestamp of upload to CDN that KickApps uses for storing video files.
- uploadToLimelight. Date and timestamp of upload to CDN that KickApps offers for storing video files.
Best Practices
The following practices are recommended for developing when using this service:
Security. To keep your information secure, do not expose your developer key or token to members. Whenever possible, make server-side calls using the HTTP POST method so that this information is not shown to others. In your JSP files, you can also set the input type to "hidden" so that members will not see these values in the URL.
<input type="hidden" value="" name="as" />
PHP Application Development. If you are developing applications using a version of PHP that is earlier than v 5.2.0, you will need to use the PECL extensions for PHP.
The bundle for PHP v 5.2.0 and later includes its own JSON extensions. You can convert a string into an object by using the json_decode function as follows:
//when true, an array is returned $response=json_decode($buf, true);
Make sure necessary media types are enabled within the Affilate Center. The KickApps Affiliate Center includes a form with simple checkboxes for enabling and disabling specific media types (videos, photos, audio tracks, blogs, and external media). Desired media types should be enabled via that form before any related REST calls are implemented.
List of KickApps API Calls
Note: Occasionally (and without advanced warning) we modify our API calls by adding new parameters in the response payload. Please keep this in mind when designing your strategy for parsing our responses.
Favorites






