Sistema de agendas y reservas online: API obtener citas php
Usamos cookies propias y de terceros para mejorar nuestros servicios y mostrar publicidad según tus preferencias. Si continúas navegando, consideramos que aceptas su uso. Más información aquí
Una de las opciones que nos ofrece la API de Bookitit es obtener el listado de citas o eventos que tenemos en nuestro calendario. Para poder obtener las citas creadas en el panel, por un usuario, desde el móvil o por API, tendríamos que usar el siguiente código:

 require_once("./lib/CRestClient.php");
 $oRestClient = new CRestClient();
 $sEvents = $oRestClient->getEvents("2012-12-10","2013-12-10","json",true);
 $oObject = json_decode($sEvents);
 $sStatus = $oObject->events->status;
 if (strcasecmp($sStatus, "true") == 0) {
  unset($oObject->events->status);
  $someEvents = $oObject->events;
  foreach($someEvents as $sKey => $oEvent) {
   echo $oEvent->title;
   echo $oEvent->start_date;
   echo $oEvent->end_date;
   echo $oEvent->start_time;
   echo $oEvent->end_time;

  }
 }
 else {
  //error
 }

?>

Podemos ver que la llamada al método getEvents sólo se pasan 2 parámetros:
$sEvents = $oRestClient->getEvents("2012-12-10","2013-12-10","json",true);

Esta petición también tiene un parámetro adicional para obtener los eventos o citas de una agenda. Este parámetro se tiene que pasar al final de la llamada utilizando el siguiente formato.
$sEvents = $oRestClient->getEvents("2012-12-10","2013-12-10","json",true”, “id_agenda”);

Todas las peticiones son devueltas con un campo “status”. Ese campo indica si la petición fue correcta o falló.

En caso de fallo se devuelve un xml o json con el siguiente formato.

En todas las llamadas se devuelve un campo status que indica el resultado de la petición. En caso de que haya un error, dependiendo de si has solicitado la petición en json o en xml se devolverá con el siguiente formato:

xml
<?xml version='1.0' encoding='utf-8'?>
<services>
<status>false</status>
<id>error id</id>
<message>error message</message>
</services>

json
 {"services":
  {
   "status":false,
   "id":error id,
   "message":error message
  }
}

Si quieres saber más sobre esta función puedes acceder a la referencia completa.