Acuina API Docs

[+] | [-]

Inicio

Bcn at Home innova con una nueva oferta de API  fácil de usar, muy accesible en el aspecto técnico y en el tiempo de integración que te permitirá realizar pedidos y reservas en restaurantes de manera remunerada.

Acuina API

Acuina API es la interfície necesaria para poder acceder a los servicios de comida a domicilio de Food2u.

Gracias a ella podrás realizar aplicaciones que accedan, interactuen y realicen pedidos a domicilio desde la misma manera que se hace desde la web de comida a domicilio Food2u o desde sus apps móviles.

La API es Multisoporte (web, móvil, software de gestión) y está especialmente optimizada para el desarrollo de aplicaciones en móviles y navegador de ultima generación.

Beneficios

  • Ofrece la posibilidad de pedir comida en cualquier lugar del mundo a tus clientes.
  • Ofrece ofertas en restaurantes a tus clientes.
  • Crea un sito web o una aplicación movil para tu plataforma favorita para pedir comida online.
  • Da información de los restaurantes más cercanos a tus clientes.
  • Gana comisiones por los pedidos que hacen tus clientes.

Arquitectura REST

Acuina es una API de estilo REST (REpresentational States Transfer) cuyo estilo de arquitectura esta basado en los siguientes principios:

  • Direccionabilidad: Los recursos son expuestos mediante URIs.
  • Sin Estado: Las peticiones a los recursos son independientes una de la otra.
  • Conectividad: Los recursos pueden incluir enlaces a otros recursos.
  • Una interfaz uniforme: Las operaciones permitidas son obtención, creación, modificación y eliminación de recursos utilizando el protocolo HTTP.
La implementación de estos pilares da como resultado servicios RESTful que se basan en el protocolo HTTP, son independientes del lenguaje, pueden usarse en presencia de firewalls, las aplicaciones pueden cachearlos, son altamente escalables, etc.

La API REST tiene como propósito la implementación de servicios ligeros, inteligibles y fácilmente implementables que se definen en base a una serie de operaciones RESTful, que implica el intercambio de información acorde a los formatos de los datos REST.
Acuina API es una sencilla de usar e implementar. Simplemente tendremos que seguir unas instrucciones para generar y procesar URLs con parámetros que servirán para comunicarse entre vuestra aplicación y el servicio de Acuina API.

Funcionamiento

Formato de las solicitudes

Las solicitudes a la API se realizarán mediante los metodo GET y POST con el Charset UTF-8 y la información codificada mediante JSON.

Ejemplo de solicitud GET:

 

GET /restaurant/1/info.json 
HTTP/1.0 User-Agent: 
Wget/1.12 (linux-gnu) 
Accept: */* 
Host: api.acuina.com 
Connection: Keep-Alive

 

Formato de respuesta

Las respuesta de la API serán con el Charset UTF-8 y la información codificada mediante JSON.

Respuesta correcta

  • Codificación: UTF-8
  • Tipo de contenido: texto/json

Si la llamada se completa correctamente la respuesta xml se construirá de la siguiente manera:

HTTP/1.1 200 OK 
Date: Sat, 29 Jan 2011 00:58:32 GMT 
Server: Apache 
X-Powered-By: PHP/5.2.17 
X-Resource: RestaurantInfoResource
Apikey: xxxxx
Signature: xxxx
Timestamp: 1312414
Content-Length: 457 
Keep-Alive: timeout=2, max=200 
Connection: Keep-Alive 
Content-Type: application/json  

{
   "result":{
      "id":"1",
      "name":"Mr.Alex Pizzeria",
      "description":"P\u00edzzas Hechas con Amor",
      "category":"Pizzeria",
      "url":"http:\/\/www.mralexpizzeria.com",
      "image_url":"http:\/\/api.acuina.com\/images\/alex.png",
      "lat":"41.3875",
      "lng":"2.13751",
      "min_order_price":"8",
      "deliver_price":"0",
      "address":"Berged\u00e0,21",
      "postal_code":"8029",
      "city":"Barcelona",
      "open_time":"12:00:00",
      "close_time":"23:59:00"
   }
}

Respuesta incorrecta

  • Codificación: UTF-8
  • Tipo de contenido: texto/sin formato
  • Estado HTTP: NO 200

Si la solicitud de cuerpo del mensaje no se completa correctamente, recibirás un código de estado HTTP diferente a 200.

También es posible que recibas un mensaje de error en el cuerpo de la respuesta.

HTTP/1.1 404 
Date: Sat, 29 Jan 2011 01:05:41 GMT 
Server: Apache 
X-Powered-By: PHP/5.2.17 
X-Resource: RestaurantInfoResource 
Content-Length: 32 Keep-Alive: timeout=2, max=200 
Connection: Keep-Alive 
Content-Type: text/plain

Importante

Recureda, todas las solicitudes GET y POST tiene que tener los paramentros correctamente codificados para HTTP y el Content-Type con el valor application/json.

Creemos que RestClient puede resultar muy útil en el desarrollo y la prueba de servicios web RESTful de Acuina.