Introducción
El contenedor 'colecciones' permite recuperar la lista de las varias colecciones que tiene el chef en el graph.
Para recuperar estas listas, hay 5 recursos disponibles:
recetas: contiene la coleccion de las recetas subidas por este usuario. Es una única colección.
favoritos: contiene la coleccion de favoritos. Es una única colección. Solamente aplica si el chef solicitado es el chef conectado (no se pueden ver los favoritos de los demás).
colecciones: contiene todas las colecciones públicas que el usuario ha creado.
compradas: contiene las colecciones que el chef ha comprado. Solamente aplica con el UUID del dispositivo.
porcomprar: contiene las colecciones que se pueden comprar.
todas: contiene todas las colecciones que aplican para la solicitud.
Recurso 'recetas'
Se recupera un resumen de las recetas subidas por un usuario consumiendo el recurso siguiente:
[GET] /v2/colecciones/:Chef/recetas.json
:Chef es la clave del solicitado, también puede ser el token del chef conectado.
El sistema regresará los datos de la colección de recetas si existe:
[
{
"clave":262,
"nombre":"Mis recetas",
"chef":100468,
"tipo":1,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 78
}
]
Los campos a considerar son:
clave: la clave interna de referencia de la colección en el GRAPH.
nombre: el nombre de la colección ('Mis Recetas').
chef: La clave de chef dueño de esta colección (siempre el mismo chef que la solicitud).
tipo: Tipo de colección. 1 en caso de 'mis recetas'.
creado: Formato ISO de la fecha de creación de esta colección.
cantidadrecetas: es la cantidad de recetas en esta colección.
Si el chef no tiene recetas, pueden pasar dos cosas:
- El arreglo viene vacio []
- El arreglo viene con la clave, pero el campo 'cantidadrecetas' viene con el valor 0.
Recurso 'favoritos'
Solamente el chef conectado puede solicitar su colección de recetas favoritas (es información privada).
Se recupera un resumen de las recetas favoritas del chef consumiendo el recurso siguiente:
[GET] /v2/colecciones/:Token/favoritos.json
:Token Es el token del chef conectado.
El sistema regresará los datos de la colección de recetas si existe:
[
{
"clave":263,
"nombre":"Favoritos",
"chef":100468,
"tipo":2,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 34
}
]
Los campos a considerar son:
clave: la clave interna de referencia de la colección en el GRAPH.
nombre: el nombre de la colección ('Favoritos').
chef: La clave de chef dueño de esta colección (siempre el mismo chef que la solicitud).
tipo: Tipo de colección. 2 en caso de 'favoritos'.
creado: Formato ISO de la fecha de creación de esta colección.
cantidadrecetas: es la cantidad de recetas en esta colección.
Si el chef no tiene recetas favoritas, pueden pasar dos cosas:
- El arreglo viene vacio []
- El arreglo viene con la clave, pero el campo 'cantidadrecetas' viene con el valor 0.
Recurso 'colecciones'
Se recuperan todas las colecciones públicas de un chef consumiendo el recurso siguiente:
[GET] /v2/colecciones/:Chef/colecciones.json
:Chef es la clave del solicitado, también puede ser el token del chef conectado.
El sistema regresará los datos de la colección de recetas si existe:
[
{
"clave":265,
"nombre":"Postres favoritos",
"chef":100468,
"tipo":3,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 12
},
{
"clave":266,
"nombre":"Para la Cena de navidad",
"chef":100468,
"tipo":3,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 22
}
...
]
Los campos a considerar son:
clave: la clave interna de referencia de la colección en el GRAPH.
nombre: el nombre de la colección.
chef: La clave de chef dueño de esta colección (siempre el mismo chef que la solicitud).
tipo: Tipo de colección. 3 en caso de colecciones públicas.
creado: Formato ISO de la fecha de creación de esta colección.
cantidadrecetas: es la cantidad de recetas en esta colección.
Si el chef no tiene colecciones públicas, el arreglo viene vacio []
Todas las colecciones pueden tener el campo 'cantidadrecetas' con el valor 0 si no hay recetas en ellas.
Recurso 'compradas'
Solamente se pueden consultar las colecciones compradas a través del UUID del dispositivo que lo compró.
Se recupera un resumen de las colecciones del chef consumiendo el recurso siguiente:
[GET] /v2/colecciones/:UUID/compradas.json
:UUID Es el uuid del dispositivo que solicita sus compras realizadas.
El sistema regresará los datos de las colecciones de recetas si existen:
[
{
"clave":268,
"nombre":"Postres Increibles",
"chef":100468,
"tipo":4,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 8
},
{
"clave":269,
"nombre":"Sopas Deliciosas",
"chef":100468,
"tipo":4,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 8
},
...
]
Los campos a considerar son:
clave: la clave interna de referencia de la colección en el GRAPH.
nombre: el nombre de la colección.
chef: La clave de chef dueño de esta colección (siempre el mismo chef que la solicitud).
tipo: Tipo de colección. 4 en caso de colecciones pagadas.
creado: Formato ISO de la fecha de creación de esta colección.
cantidadrecetas: es la cantidad de recetas en esta colección.
Si el chef no tiene colecciones compradas, el arreglo viene vacio []
La cantidad de recetas no puede ser 0, ya que son colecciones inmutables.
Recurso 'todas'
Se recuperan todas las colecciones de un chef consumiendo el recurso siguiente:
[GET] /v2/colecciones/:Chef/colecciones.json
:Chef es la clave del solicitado, también puede ser el token del chef conectado.
El sistema regresará todas las listas de colecciones disponibles para este chef:
[
{
"clave":262,
"nombre":"Mis recetas",
"chef":100468,
"tipo":1,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 78
},
{
"clave":263,
"nombre":"Favoritos",
"chef":100468,
"tipo":2,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 34
},
{
"clave":265,
"nombre":"Postres favoritos",
"chef":100468,
"tipo":3,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 12
}
...
]
Si la clave del chef es el token del chef conectado entonces regresará 'recetas', 'favoritos' y 'colecciones' concatenados. Si es una clave de chef normal, entonces solamente regresará 'recetas' y 'colecciones' contatenados.
Los campos a considerar son:
clave: la clave interna de referencia de la colección en el GRAPH.
nombre: el nombre de la colección.
chef: La clave de chef dueño de esta colección (siempre el mismo chef que la solicitud).
tipo: Tipo de colección. 1, 2, 3 o 4 según el tipo (ver capítulos anteriores).
creado: Formato ISO de la fecha de creación de esta colección.
cantidadrecetas: es la cantidad de recetas en esta colección.
Si el chef no tiene ninguna coleccion, el arreglo viene vacio []
Todas las colecciones pueden tener el campo 'cantidadrecetas' con el valor 0 si no hay recetas en ellas, excepto las compradas, que son inmutables.
Recurso 'porcomprar'
El sistema regresa todas las colecciones disponibles para comprar sin importar si el usuario haya o no ya comprado algo.
Se recupera el resumen de las colecciones disponibles, consumiendo el recurso siguiente:
[GET] /v2/colecciones/1/porcomprar.json
El sistema regresará los datos de las colecciones de recetas si existen:
[
{
"clave":268,
"nombre":"Postres Increibles",
"tipo":5,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 10,
"titulo":"Titulo de la coleccion",
"intro":"Introduccion de la coleccion",
"descripcion":"Descripcion de la coleccion\nen 3\nlineas.",
"video": "ID video",
"imagen": "ruta imagen"
},
{
"clave":269,
"nombre":"Sopas Deliciosas",
"tipo":6,
"creado":"2014-12-15T20:11:21.46-06",
"cantidadrecetas": 5,
"titulo":"Titulo de la coleccion",
"intro":"Introduccion de la coleccion",
"descripcion":"Descripcion de la coleccion\nen 3\nlineas."
"video": "ID video",
"imagen": "ruta imagen"
},
...
]
Los campos a considerar son:
clave: la clave interna de referencia de la colección en el GRAPH.
nombre: el nombre de la colección.
tipo: Tipo de colección. 5 en caso de colecciones de receta disponibles para comprar (10 recetas por coleccion) y 6 en caso de colecciones de recetas con video profesional (6 recetas por coleccion).
creado: Formato ISO de la fecha de creación de esta colección.
cantidadrecetas: es la cantidad de recetas en esta colección.
titulo: el titulo de la colección para comprarla.
intro: la introducción de la colección para comprarla.
descripcion: la descripción de la colección para comprarla. Puede tener saltos de linea
video: el ID del video en ooyala si existe uno. El video tiene prioridad sobre la imagen, es decir no se pone la imagen si hay un video.
imagen: la ruta de la imagen de introducción de la colección por comprar. Solamente se pone si no hay video. Si no hay video ni imagen, entonces no se pone nada, solamente el texto.
Si el chef tiene colecciones compradas, el arreglo viene sin estas, a condición que el token sea válido
Nota: la diferencia entre la coleccion de tipo 5 y tipo 6 es la fuente de las recetas. Las recetas con video profesional son recetas exclusivas para comprar (no se encuentran en otro lugar de kiwilimon)