Una vez hayas descargado tus API keys y el cliente de Bookitit, lo primero que haremos será comprobar su funcionamiento.

Supongamos que nuestro árbol de directorios actual en el directorio de publicación de apache tiene la siguiente forma:

index.php
/lib/CRestClient.php

La clase CRestClient tiene las siguiente propiedades:

private $_sPublicKey=»»;
private $_sPrivateKey=»»;
$_sRoot = «//app.bookitit.com/»;
private $_sVersion = «11»;

Editamos el archivo CRestClient.php del directorio lib e insertaremos las claves conseguidas de Bookitit.com en los atributos $_sPublicKey y $_sPrivateKey. Esto es muy importante hacerlo ya que se utilizará en cada petición.

El atributo $_sRoot indica la url donde está alojado Bookitit y la versión indicará la versión de API que vamos a usar. Actualmente existen varias versiones de API así que tendrás que descargarte el cliente correcto para la versión que vayas a utilizar.

Recuerda que la clave privada nunca se transmitirá, se utiliza para crear un hash que será el emitido y utilizado como si fuera una contraseña.

Una vez realizado todo esto editamos el archivo index.php e introduciremos las siguientes lineas:

<?php
require_once(«./lib/CRestClient.php»);
$oRestClient = new CRestClient();
$sReturn = $oRestClient->testconnection(«yourtext»,»xml»,true);
print_r($sReturn);
?>

El texto que envíes en “yourtext” asegúrate de que no contenga espacios. Esto te debería devolver algo así:

<?xml version=’1.0′ encoding=’utf-8′>
<connection><status>true</status><echovalue>yourtext</echovalue></connection>

Si hay algún problema con las claves de autenticación te devolverá una respuesta del siguiente estilo:

“This api connection site needs a true authentication. You can not pass.“

Los parámetros para todas las funciones que ofrece el cliente CRestClient suelen tener dos parámetros finales comunes. El primero indicará en que formato quieres que te devuelva el valor “xml” o “json” el segundo si la petición se hará por “http”(false) o “https”(true).

Ver detalle de la función testconnection (enlace a la API función testconnection).