Debido al auge que tiene Internet en estos tiempos y a la facilidad de poder acceder a este servicio, una de las necesidades más grandes de los empresarios es el poder sincronizar la información de una manera más rápida y sencilla, ya sea para poder mostrarla a sus clientes (a través de una página web o aplicación móvil) o para tomas de decisiones en tiempo real.
Es aquí donde [Drupal](https://drupal.org/) nos ofrece el módulo [Services](https://drupal.org/project/services), el cual brinda la posibilidad de crear nuevos contenidos (nodos), hay que tener en cuenta el tipo de campo de los elementos que la conforman (por ejemplo: campo tipo texto, fecha, referencia a taxonomías, entre otros)
A continuación veremos los diferentes parámetros que se deben usar para poder agregar nuevos contenidos.
**- Módulo a usar: [Services](https://drupal.org/project/services) versión 7.x-3.3**
Una vez instalado procedemos a activarlo, junto con [REST Server](http://en.wikipedia.org/wiki/Representational_state_transfer),el cual se encuentra incluido en el módulo Services.
1. Creación del servicio: Accedemos a nuestro sitio http://drupal_site/admin/structure/services y procedemos a agregar un nuevo servicio, los datos a usar para esta prueba son:
- Machine-readable name of the endpoint: test_services.
- Server: REST.
- Path to endpoint: endpoint_services.
- Seleccionamos la opción Session Authentication.
- Guardamos.
![Add Services](https://cms.rootstack.com/sites/default/files/blog/img/rootstack_add_new_services.jpg)
2. Configuración:
a) Pestaña de servicios:
- Formatos: json.
- Analizador de peticiones: application/json, application/x-www-form-urlencoded.
b) Pestaña de recursos:
- Nodos.
- Usuarios.
Para las siguientes pruebas, usaremos la extensión [Postman](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&ved=0CCoQFjAA&url=https%3A%2F%2Fchrome.google.com%2Fwebstore%2Fdetail%2Fpostman-rest-client%2Ffdmmgilgnpjigdojojpjoooidkmcomcm%3Fhl%3Den&ei=ycaDUvbfBeXA4AON14HADQ&usg=AFQjCNHaecLwAKk91gpdCY_y1x_ViIrHwQ&bvm=bv.56343320,d.dmg) en Chrome
1. Login:
- URL: http://drupal_site/endpoint_services/user/login.json
- Keys:
- username
- password
![Login](https://cms.rootstack.com/sites/default/files/blog/img/rootstack_login_services.jpg)
2. Creación de contenidos:
- URL: http://drupal_site/?q=endpoint_services/node.json
- Keys:
- node[type] = page
- node[language] = es (“en” para ingles)
- node[title] = Primer nodo
- node[body][und][0][value] = Este es nuestro primer nodo
**Para tener en cuenta:**
1. Al momento de introducir los valores en los campos, hay que tener en cuenta el tipo de campo, ya que de eso dependerán los parámetros:
- Campo texto: node[body][es][0][value]=$text
- Campo fecha: node[campo_fecha][es][0][value][date]= $date
- Campo referencia a entidad: node[campo_referencia][es] = $target_id
- Campo referencia a taxomía: node[campo_referencia][es] = $tid
- Campo archivo: node[field_inspection_image][es][0][fid] = $fid
2. En el caso de querer subir más valores del mismo campo, se hace aumentado uno de los parámetros, ejemplo:
- node[body][es][0][value]=$first_text
- node[body][es][1][value]=$second_text
- node[body][es][2][value]=$third_text
**Conclusión**
El papel que juega el módulo [Services](https://drupal.org/project/services) en estos tiempos es de gran importancia, en especial para aquellos que buscan automatizar los procesos (relacionados a la creación de contenidos), los cuales posiblemente se realicen de manera manual, ahorrando así en horas-trabajo.