Sample Code (PHP)

<?php
	/**
	This is an example of AudioMicro API request using 
	Query String Request Authentication Alternative.

	More info can be found here: 
	@link http://www.audiomicro.com/api/show/authentication/1/
	**/

	$accessKeyId     = "GAHYUETIETUYAPHAHXAE";
	$secretAccessKey = "EIYAEHOHIEY=CAHHAHTHEXIG+EPAESHAHTOXOHCH";
	$apiHost         = "api.audiomicro.com";

	function getSignature($url, $secret, $expires = '1238598470') {
	 $str = "GET\n\n\n{$expires}\n".$url;
	 return urlencode(base64_encode(hash_hmac('sha1', $str, $secret, true)));
	}

	/////////////////////// Browse Category tree ///////////////////

	// feed URL, 
	$url = "/api/1.1/categories/browse/?CategoryID=2";

	// request will expire in 2 days
	$expires = strtotime("+2 days");


	// generate signature, which will expire in 2 hours
	// note, you have to sign only these parameters 'fileID', 'CategoryID', 'Q'
	$signature = getSignature($url, $secretAccessKey, $expires);

	// generate full URL for content download
	$fullUrl   = "http://".$apiHost.$url."&PerPage=25&Format=xml&AccessKeyId=$accessKeyId&Signature=$signature&Expires=$expires";

	echo("$fullUrl \r\n\r\n");


	////////////////////// Track Details ///////////////////////////////
	$url       = "/api/1.1/tracks/info/?fileID=26033";
	$signature = getSignature($url, $secretAccessKey, $expires);
	$fullUrl   = "http://".$apiHost.$url."&Format=xml&AccessKeyId=$accessKeyId&Signature=$signature&Expires=$expires";

	echo("$fullUrl \r\n\r\n");


	///////////////////// Search Example /////////////////////////////////
	$query     = urlencode("(categoryID:\"173\" AND intervalLength:\"3-4M\" AND tags:\"rock\")");  // you can use "details" field as well
	$url       = "/api/1.1/tracks/search/?Q=$query";
	$signature = getSignature($url, $secretAccessKey, $expires);
	$fullUrl   = "http://".$apiHost.$url."&Format=xml&AccessKeyId=$accessKeyId&Signature=$signature&Expires=$expires";

	echo("$fullUrl \r\n\r\n");


	//////////////////// receive Track Preview URL /////////////////////////////
	$url       = "/api/1.1/tracks/preview/?fileID=26033";
	$signature = getSignature($url, $secretAccessKey, $expires);
	$fullUrl   = "http://".$apiHost.$url."&Format=xml&AccessKeyId=$accessKeyId&Signature=$signature&Expires=$expires";

	echo("$fullUrl \r\n\r\n");


	/////////////////// RSS feeds //////////////////////////////////////

	$url       = "/api/1.1/rss/new/";
	$signature = getSignature($url, $secretAccessKey, $expires);
	$fullUrl   = "http://".$apiHost.$url."?AccessKeyId=$accessKeyId&Signature=$signature&Expires=$expires";

	echo("$fullUrl \r\n\r\n");

	?>
Our Clients Include: