{"_id":"56af82fd5b1f01170014dbd6","__v":64,"body":"El API de Alegra es un servicio que te permite acceder a tu cuenta para mantener tu información actualizada, conectar aplicaciones externas y tener acceso instantáneo a tus datos.  \n\nAlgunas aplicaciones que puedes construir con nuestra API son:\n\n  *   Sincronizar de manera automática tus contactos con Alegra y otra aplicación externa que utilices.\n  *   Crear automáticamente facturas en la aplicación a partir de pedidos de tu página web.\n  *   Sincronizar tus productos o servicios con Alegra.\n\nActualmente nuestra API puedes\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Recurso\",\n    \"h-1\": \"Endpoint\",\n    \"h-2\": \"Descripción\",\n    \"0-0\": \"Productos o servicios\",\n    \"0-1\": \"/items\",\n    \"0-2\": \"Consultar uno o todos los productos/servicios registrados en la aplicación. También puedes crear un producto nuevo.\",\n    \"1-0\": \"Contactos\",\n    \"2-0\": \"Facturas de venta\",\n    \"3-0\": \"Numeración de factura\",\n    \"4-0\": \"Impuestos\",\n    \"5-0\": \"Cuentas de banco\",\n    \"6-0\": \"Empresa\",\n    \"7-0\": \"Pagos\",\n    \"8-0\": \"Categorías\",\n    \"1-2\": \"Consultar uno o todos los contactos (clientes/proveedores) registrados. También puedes crear un contacto nuevo.\",\n    \"2-2\": \"Consultar una o todas las facturas de venta, crear una nueva o enviar una factura por correo.\",\n    \"3-2\": \"Permite consultar las numeraciones para facturación que tiene configurada la empresa.\",\n    \"4-2\": \"Permite consultar los impuestos de la compañía.\",\n    \"5-2\": \"Permite consultar las cuentas de banco que tiene registrada la compañía en la aplicación.\",\n    \"6-2\": \"Indica la información de la empresa como el nombre, dirección, régimen, entre otros.\",\n    \"7-2\": \"Permite consultar los pagos que se tienen registrados en la aplicación. También se puede realizar pagos a facturas de venta, facturas de compra o categorías\",\n    \"8-2\": \"Permite consultar las categorías configuradas en la aplicación.\",\n    \"1-1\": \"/contacts\",\n    \"2-1\": \"/invoices\",\n    \"3-1\": \"/number-templates\",\n    \"4-1\": \"/taxes\",\n    \"5-1\": \"/bank-accounts\",\n    \"6-1\": \"/company\",\n    \"7-1\": \"/payments\",\n    \"8-1\": \"/categories\"\n  },\n  \"cols\": 3,\n  \"rows\": 9\n}\n[/block]\n\nNuestra API está basada en principios REST que harán más fácil tu conexión y desarrollo; métodos HTTP (GET y POST) son utilizados para acceder a los recursos. El sistema procesa el request y retorna un código de respuesta en un formato de fácil compresión.\n\n###Ejemplos\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n                \\\"id\\\": 1,\\n                \\\"name\\\": \\\"Billetera\\\",\\n                \\\"description\\\": \\\"Billetera de cuero negro\\\",\\n                \\\"reference\\\": \\\"REF-005\\\",\\n                \\\"inventory\\\": {\\n                        \\\"unit\\\" : \\\"piece\\\",\\n                        \\\"availableQuantity\\\" : 150,\\n                        \\\"unitCost\\\" : 560,\\n                        \\\"initialQuantity\\\" : 320\\n                        },\\n                \\\"tax\\\" : [\\n                            {\\n                                \\\"id\\\" : 6,\\n                                \\\"name\\\" : \\\"IVA\\\",\\n                                \\\"percentage\\\" : 16,\\n                                \\\"description\\\" : \\\"Impuesto de valor agregado\\\"\\n                            }\\n                        ],\\n                \\\"category\\\" : {\\n                        \\\"id\\\": 54,\\n                        \\\"name\\\" : \\\"Ventas\\\"\\n                        },\\n                \\\"price\\\" : [\\n                            {\\n                             \\\"idPriceList\\\" : 1,\\n                            \\\"name\\\" : \\\"General\\\",\\n                            \\\"price\\\" : 1200\\n                            },\\n                            {\\n                                \\\"idPriceList\\\" : 2,\\n                                \\\"name\\\" : \\\"Distribuidor\\\",\\n                                \\\"price\\\" : 1050\\n                            }\\n                        ]\\n                \\n}\",\n      \"language\": \"json\",\n      \"name\": \"Respuesta exitosa (Código HTTP 200) \"\n    },\n    {\n      \"code\": \"{\\n\\\"code\\\" : \\\"901\\\",\\n\\\"message\\\" : \\\"Esta acción no está permitida para el usuario actual.\\\"\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Respuesta error (Código HTTP 403)\"\n    }\n  ]\n}\n[/block]\n**El formato de transferencia de datos soportado por la aplicación es JSON. Todas las respuestas se envían en formato JSON y así espera recibirlos.** \n[block:callout]\n{\n  \"type\": \"warning\",\n  \"title\": \"Toda la comunicación con el API debe hacerse utilizando https://\"\n}\n[/block]\n## Códigos de respuesta HTTP\n\nEl API puede retornar alguno de los siguientes códigos HTTP:\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Código\",\n    \"h-1\": \"Descripción\",\n    \"0-0\": \"400\",\n    \"0-1\": \"El request está mal formado. La información para crear el recurso no existe o es inválida.\",\n    \"1-0\": \"401\",\n    \"1-1\": \"Error en autenticación. La autenticación fallo o no se encontró la información para autenticar el request.\",\n    \"3-0\": \"403\",\n    \"3-1\": \"El usuario no tiene permisos para realizar la acción.\",\n    \"4-0\": \"404\",\n    \"5-0\": \"405\",\n    \"6-0\": \"201\",\n    \"7-0\": \"200\",\n    \"8-0\": \"500\",\n    \"4-1\": \"No se encontró en la aplicación el recurso que se está buscando. También se retorna cuando la cuenta se encuentra suspendida.\",\n    \"5-1\": \"Operación no permitida. Ocurre cuando el método del request  es inválido para el endpoint requerido.\",\n    \"6-1\": \"El recurso se creó exitosamente.\",\n    \"7-1\": \"Todo funcionó correctamente.\",\n    \"8-1\": \"Ocurrió un error en la aplicación.\",\n    \"2-0\": \"402\",\n    \"2-1\": \"Pago requerido.  La acción no se pudo realizar exitosamente ya que la cuenta se encuentra suspendida o el plan actual de la compañía no permite realizar la acción.\"\n  },\n  \"cols\": 2,\n  \"rows\": 9\n}\n[/block]\n##Pruebas en vivo\nEn nuestra documentación encontrarás un explorador de API que te permite realizar requests a tu cuenta y descubrir cómo funciona.\n[block:callout]\n{\n  \"type\": \"warning\",\n  \"title\": \"Debes tener en cuenta que los request que realices pueden modificar la información de tu cuenta.\",\n  \"body\": \"Para utilizar el API explorer debes utilizar tu correo y [token de acceso](/docs/limite-request).\"\n}\n[/block]\n## Lecturas recomendadas\nAntes de comenzar te recomendamos los siguientes documentos que pueden ser de ayuda:\n\n[Autenticación](doc:autenticacion) \n[Limite request](doc:limite-request)","createdAt":"2016-02-01T16:08:29.126Z","link_external":false,"type":"basic","category":"56abd2444e4b730d009eb10e","link_url":"","excerpt":"Esta página te ayudará a comenzar con el API de Alegra","hidden":false,"project":"56abd2434e4b730d009eb10a","slug":"empiezar-con-api-alegra","title":"Información general","user":"56abd213d4432d1900eed227","updates":[],"version":"56abd2434e4b730d009eb10d","api":{"url":"","auth":"required","params":[],"results":{"codes":[]},"settings":""},"githubsync":"","isReference":false,"order":0,"parentDoc":null,"sync_unique":"","childrenPages":[]}

Información general

Esta página te ayudará a comenzar con el API de Alegra

El API de Alegra es un servicio que te permite acceder a tu cuenta para mantener tu información actualizada, conectar aplicaciones externas y tener acceso instantáneo a tus datos. Algunas aplicaciones que puedes construir con nuestra API son: * Sincronizar de manera automática tus contactos con Alegra y otra aplicación externa que utilices. * Crear automáticamente facturas en la aplicación a partir de pedidos de tu página web. * Sincronizar tus productos o servicios con Alegra. Actualmente nuestra API puedes [block:parameters] { "data": { "h-0": "Recurso", "h-1": "Endpoint", "h-2": "Descripción", "0-0": "Productos o servicios", "0-1": "/items", "0-2": "Consultar uno o todos los productos/servicios registrados en la aplicación. También puedes crear un producto nuevo.", "1-0": "Contactos", "2-0": "Facturas de venta", "3-0": "Numeración de factura", "4-0": "Impuestos", "5-0": "Cuentas de banco", "6-0": "Empresa", "7-0": "Pagos", "8-0": "Categorías", "1-2": "Consultar uno o todos los contactos (clientes/proveedores) registrados. También puedes crear un contacto nuevo.", "2-2": "Consultar una o todas las facturas de venta, crear una nueva o enviar una factura por correo.", "3-2": "Permite consultar las numeraciones para facturación que tiene configurada la empresa.", "4-2": "Permite consultar los impuestos de la compañía.", "5-2": "Permite consultar las cuentas de banco que tiene registrada la compañía en la aplicación.", "6-2": "Indica la información de la empresa como el nombre, dirección, régimen, entre otros.", "7-2": "Permite consultar los pagos que se tienen registrados en la aplicación. También se puede realizar pagos a facturas de venta, facturas de compra o categorías", "8-2": "Permite consultar las categorías configuradas en la aplicación.", "1-1": "/contacts", "2-1": "/invoices", "3-1": "/number-templates", "4-1": "/taxes", "5-1": "/bank-accounts", "6-1": "/company", "7-1": "/payments", "8-1": "/categories" }, "cols": 3, "rows": 9 } [/block] Nuestra API está basada en principios REST que harán más fácil tu conexión y desarrollo; métodos HTTP (GET y POST) son utilizados para acceder a los recursos. El sistema procesa el request y retorna un código de respuesta en un formato de fácil compresión. ###Ejemplos [block:code] { "codes": [ { "code": "{\n \"id\": 1,\n \"name\": \"Billetera\",\n \"description\": \"Billetera de cuero negro\",\n \"reference\": \"REF-005\",\n \"inventory\": {\n \"unit\" : \"piece\",\n \"availableQuantity\" : 150,\n \"unitCost\" : 560,\n \"initialQuantity\" : 320\n },\n \"tax\" : [\n {\n \"id\" : 6,\n \"name\" : \"IVA\",\n \"percentage\" : 16,\n \"description\" : \"Impuesto de valor agregado\"\n }\n ],\n \"category\" : {\n \"id\": 54,\n \"name\" : \"Ventas\"\n },\n \"price\" : [\n {\n \"idPriceList\" : 1,\n \"name\" : \"General\",\n \"price\" : 1200\n },\n {\n \"idPriceList\" : 2,\n \"name\" : \"Distribuidor\",\n \"price\" : 1050\n }\n ]\n \n}", "language": "json", "name": "Respuesta exitosa (Código HTTP 200) " }, { "code": "{\n\"code\" : \"901\",\n\"message\" : \"Esta acción no está permitida para el usuario actual.\"\n}", "language": "json", "name": "Respuesta error (Código HTTP 403)" } ] } [/block] **El formato de transferencia de datos soportado por la aplicación es JSON. Todas las respuestas se envían en formato JSON y así espera recibirlos.** [block:callout] { "type": "warning", "title": "Toda la comunicación con el API debe hacerse utilizando https://" } [/block] ## Códigos de respuesta HTTP El API puede retornar alguno de los siguientes códigos HTTP: [block:parameters] { "data": { "h-0": "Código", "h-1": "Descripción", "0-0": "400", "0-1": "El request está mal formado. La información para crear el recurso no existe o es inválida.", "1-0": "401", "1-1": "Error en autenticación. La autenticación fallo o no se encontró la información para autenticar el request.", "3-0": "403", "3-1": "El usuario no tiene permisos para realizar la acción.", "4-0": "404", "5-0": "405", "6-0": "201", "7-0": "200", "8-0": "500", "4-1": "No se encontró en la aplicación el recurso que se está buscando. También se retorna cuando la cuenta se encuentra suspendida.", "5-1": "Operación no permitida. Ocurre cuando el método del request es inválido para el endpoint requerido.", "6-1": "El recurso se creó exitosamente.", "7-1": "Todo funcionó correctamente.", "8-1": "Ocurrió un error en la aplicación.", "2-0": "402", "2-1": "Pago requerido. La acción no se pudo realizar exitosamente ya que la cuenta se encuentra suspendida o el plan actual de la compañía no permite realizar la acción." }, "cols": 2, "rows": 9 } [/block] ##Pruebas en vivo En nuestra documentación encontrarás un explorador de API que te permite realizar requests a tu cuenta y descubrir cómo funciona. [block:callout] { "type": "warning", "title": "Debes tener en cuenta que los request que realices pueden modificar la información de tu cuenta.", "body": "Para utilizar el API explorer debes utilizar tu correo y [token de acceso](/docs/limite-request)." } [/block] ## Lecturas recomendadas Antes de comenzar te recomendamos los siguientes documentos que pueden ser de ayuda: [Autenticación](doc:autenticacion) [Limite request](doc:limite-request)