Documentación de la API clickline.com



Documentos relacionados
Manual OWAControl. Contenido. Manual OWAControl

INFORMES CON REPORTS BUILBER

LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO

Documentación Técnica

MANUAL TÉCNICO WEB SERVICE PROTOCOLO SOAP

Pasarela para envíos de faxes a través de interfaz HTTPS

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd

HTTP Introducción. Redes de Datos Ing. Marcelo Utard / Ing. Pablo Ronco FACULTAD DE INGENIERIA UNIVERSIDAD DE BUENOS AIRES

Envío de mensajes MMS. IMPLEMENTACIÓN SERVICIO DE PASARELA MMS-push (http)

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

ATEL ASESORES C.A IP Multimedia Subsystem Prof. Diógenes Marcano

Servicio Web de Timbrado

Botón de Pago Instapago versión 1.1 TECNOLOGÍA INSTAPAGO C.A.

Anexo B. Comunicaciones entre mc y PC

Servicio WEB Declaraciones de Aduanas e II.EE.

Manual Intranet Área de Sistemas

Redes de área local: Aplicaciones y servicios WINDOWS

SMPP Server http GATEWAY

Pasarela de desarrollo API DTMF (marcación por tonos).

Servicio de Notificaciones Electrónicas y Dirección Electrónica Habilitada

Implementación del servicio de envío masivo de mensajes SMS HTTP/s API -

MANUAL DE ACTUALIZACIÓN DEL DEA. Versión del DEA del 10/04/2012

ORBERE. Memoria Técnica del Aplicativo de Gestión de la producción para ADIMDE

ENVÍO DE POR MEDIO DE SMTP

Conexión inalámbrica a un CNC (con puerto Serie RS232C)

Carpeta Virtual de Expedientes

Obtener status de un mensaje... 2

Índice. Página 2 de 14

Clase 22 Nivel de Aplicación WWW Tema 6.- Nivel de aplicación en Internet

Tabla de contenido. 1. Objetivo Asignación de responsabilidades Alcance Procedimientos relacionados...4

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB

Documentación Técnica Conector

Fuente:

INTRODUCCION. Tema: Protocolo de la Capa de aplicación. FTP HTTP. Autor: Julio Cesar Morejon Rios

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

EDITRAN/TX. Windows/Unix. Manual de Usuario e Instalación

Tema 4: Tecnologías Web Java

Reconocimiento de Créditos Automatizado. Módulo de Gestión

INSTRUCTIVO: SISTEMA DE CONSULTA PARA CLIENTES

Obtener status de un mensaje... 3

Ubuntu Server HOW TO : SQUID. EN ESTE SE REALIZA LO SIGUIENTE: En este how to se le va a enseñar como instalar servidor proxi Squid.

HP iquote. Introducción

Sistema de Contabilidad General. Contenido. ACTUALIZACION A PROCONTA 6.0

COMPRAS CEPAS A TRAVÉS DE INTERNET PORTAL CEPAS

MANUAL DE USUARIO FACTURACIÓN ELECTRÓNICA

La web (el servicio WWW)

Manual para realizar compras on-line

Manual de usuario Noticias y Accesos Directos en Facultades ÍNDICE

Práctica GESTIÓN Y UTILIZACIÓN DE REDES LOCALES. Curso 2001/2002. TCP/IP: protocolo TCP


MIGRACIÓN NEXUS 8 A A3ERP 9

WEB SERVICE FACTORUMCFDISERVICE

Capa de Aplicación (Parte 2 de 2)

MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora

PRESENTACIÓN TELEMÁTICA DE CUENTAS ANUALES

comunicaciones IP al servicio de su empresa configuración de clientes de correo para Hosted Exchange

CORREO PERSONAL OUTLOOK 2007 POP3

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

FOROS. Manual de Usuario

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

6. Aplicaciones Facturación electrónica Contratos Módulos adicionales... 13

Qué son los Web Services?

Guía rápida del usuario DoliShop

SISTEMA DE GESTIÓN DE INCIDENTES Manual de usuario

Manual del Protocolo XML-RPC de Mensajería Negocios

URL. Después de los dos puntos: se interpreta según el método de acceso. Suele contener direcciones y puntos de acceso en una máquina. Esquema URL.

Instalación del Escritorio SSC

INSTALACIÓ N A3ERP. Informática para empresas INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

Eurowin 8.0 SQL. Manual del módulo TALLAS Y COLORES

(Certificado de Empresa): guía para las empresas

arquitectura que maneja. Encontraremos también los diferentes servidores que

Ejercicios de AJAX y REST

Especificación WebService para:

SINAUTO. (Captura Requirimientos) GRUPO 03

POLÍTICA DE PRIVACIDAD PARA APLICACIONES MÓVILES GRUPOCOPESA. 1. información que se obtiene la aplicación y su utilización

INSTALACIÓN A3ERP INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

ÍNDICE 1 DESCRIPCIÓN 3 2 OPERATIVA DE LA FUNCIÓN 3 3 REGISTRO DE FACTURAS 4 4 REGISTRO MASIVO DE FACTURAS 10

DIPLOMADO EN SEGURIDAD INFORMATICA

Manual de Comunicación de Ofertas de Empleo a través de Internet

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA

Sistema de Venta de Servicios Recargas y Paquetes promocionales

Manual de Proveedores. Ingreso al Sistema

UNIVERSIDAD DE SALAMANCA

Curso de PHP con MySQL Gratis

Especificaciones de la Pasarela SMS NÚMEROS LARGOS

Nuevas funcionales del tramitador. Uso de la utilidad Comunicaciones. Área Web y Administración Electrónica

Servicio de publicación de información web (HTTP)

Manual de Timbrado FEL

Guía nuevo panel de clientes Hostalia

WINDOWS : COPIAS DE SEGURIDAD

Guía para usar APIs de SMS Masivos

Transcripción:

Documentación de la API clickline.com Esta parte de la documentación incluye la descripción del protocolo y las muestras de herramientas que se utilizan para interactuar con el servidor de Clickline.com a través de la API. El capítulo Protocolo API-RPC (2.1) establece los conceptos de tecnología. Explica lo que es la API, por qué es necesaria, como puede ser utilizada para la interacción entre Clikline y software de terceros, y los principios de interacción principal. 1. Prerrequisitos para el documento Para entender este documento debe de estar familiarizado con: 1. Mensajes HTTP (types, structure). RFC 2616 (http://www.ietf.org/rfc/rfc2616.txt). 2. Tener una idea básica de que es y cómo se utilizan los ficheros XML (http://www.w3schools.com/xml/default.asp) 2. Protocolo API-RPC Para apoyar la interacción entre Clickline.com y software de terceros, Clikline ofrece una API basada en XML, para facilitar dicha integración los paquetes XML se enviarán mediante protocolo HTTP cifrado con un formato y forma específica. Quién puede usar la API? Por el momento, el uso de dicha API se le permite a clientes de Clikline y desarrolladores, teniendo estos últimos que registrarse para recibir su acceso. No hay versiones específicas del API para Linux o Windows, ya que ambos sistemas operativos comparten la misma API. La última versión del API de Clikline está establecida en 1.0.0.0 2.1 Modelo Cliente - Servidor La interacción entre Clikline y software de terceros se basa en el modelo cliente-servidor: Figura 1: Interacción entre Clikline y software de terceros La parte del servidor está representada por la API de Clikline (en adelante Servidor) que es una parte de Clickline.com. El software de terceros debe de ser desarrollado por una empresa terciaria (en adelante cliente). La parte cliente envía un paquete de solicitud XML añadiendo una cabecera HTTP estándar, y la envía al servidor. Por el lado del servidor el paquete llega y es validado y procesado, el servidor realiza las operaciones solicitadas y responde con otro paquete XML que puede contener un resultado erróneo o correcto, dependiendo de lo sucedido en la ejecución. Ejemplo de envío de paquete:

Código POST /includes/api.php HTTP/1.1 Host: www.clickline.com Accept: */* HTTP_AUTH_LOGIN: usuario HTTP_AUTH_PASSWD: contraseña Pragma: no-cache Content-Length: 1398 Content-Type: text/xml <?xml version= 1.0 encoding= UTF-8 standalone= no?> <packet version= 1.0.0.0 > <action> get_country_list</action> Descripción Se envía una petición POST al servidor localizado en /includes/api.php La versión es HTTP 1.1 Los encabezados HTTP_AUTH_LOGIN y HTTP_AUTH_PASSWD contendrán el usuario y contraseña que está intentando consultar. El content-type debe de ser XML Inicio del fichero XML Indicamos en el atributo que versión del API vamos a utilizar, generalmente la última disponible. Indica la acción a procesar por la API. Fin del paquete. Ejemplo de respuesta del API: Código HTTP/1.1 200 OK Connection: close Content-Length: 161 Content-Type: text/xml Date: Mon, 3 Jul 2011 10:55:08 GMT Server: Clickline.com Descripción Inicio del encabezado HTTP de respuesta. El tipo MIME es text/xml. <?xml version= 1.0 encoding= UTF-8 standalone= no?> <packet version= 1.0.0.0 > < country> <country_id>es</country_id> <country_name>españa</country_name> </ country> Inicio del fichero XML Indica en el atributo que versión del API está respondiendo, generalmente la última disponible. En Status nos indica si ha sido correcto o erróneo, si es diferente de success es erróneo. Luego nos devuelve los datos consultados. Fin del paquete. Envío de una petición en PHP: Para enviar una petición en PHP utilizaremos CURL, al simplificar el protocolo la acción no ocupará más de 20 líneas.

define ( HOST, www.clickline.com ); define ( PORT, 80); define ( PATH, /includes/api.php ); $url = https://. HOST. :. PORT. /. PATH; $headers = array( HTTP_AUTH_LOGIN: usuario, HTTP_AUTH_PASSWD: contraseña, Content-Type: text/xml ); $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_URL, $url); $packet = <<<EOP <action>put_order</action> EOP; curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_exec($ch); curl_close($ch); 3. Operaciones disponibles en la API Hasta el momento, las operaciones disponibles son: get_balance_inquiry Consulta de saldo disponible para el cliente que consulta la API. get_shipping_quote Cotización de un transporte con pesos y medidas. get_shipping_quote_no_mesure Cotización de un transporte sin medidas. get_carriers_list Lista los transportistas disponibles en el sistema. get_carriers_list_customer Lista los transportistas asociados a la cuenta de usuario que consulta. get_orders Trae un listado de pedidos realizados por el cliente. get_orders_status_id Trae el status de un id de orden. get_order_status Trae un listado de los diferentes status de los pedidos. get_country_list Trae un listado de países válidos en el sistema. put_carriers Graba los transportistas que usará el cliente. put_order Graba un pedido al sistema, debemos comprobar primero si el cliente tiene saldo. 3.1 Envíos y respuesta según función de la API Detallaremos el contenido que debe de enviar el cliente y la respuesta según función descrita. Los valores en cursiva serán opciones y utilizados en forma de filtro.

Get_balance_inquiry <action>get_balance_inquiry</action> <balance>999</balance> Donde balance es el saldo a favor, siendo 0 un valor nulo y cualquier otro valor numérico su saldo real. Get_country_list <action> get_country_list</action> < country> <country_id>es</country_id> <country_name>españa</country_name> </ country> < country> <country_id>pt</country_id> <country_name>portugal</country_name> </ country> Get_carriers_list <action>get_carriers_list</action>

<carrier_id>1</carrier_id> <carrier>asm</carrier> </carriers > <carrier_id>2</carrier_id> <carrier>asm Internacional</carrier> </carriers > Get_carriers_list_customer <action> get_carriers_list_customer</action> <carrier_id>1</carrier_id> <carrier>asm</carrier> </carriers > <carrier_id>2</carrier_id> <carrier>asm Internacional</carrier> </carriers > Get_orders <action>get_orders</action> <order_status>processing</order_status> <start_date>2011-01-01</start_date> <end_date>2011-12-31</end_date> <orders> <order_id>1</order_id> <order_status>processing</order_status> <order_price>100.000</order_price> <order_date>2011-07-11 09:26:31</order_date> <order_shipping_name>nombre cliente</order_shipping_name> </orders> <orders> <order_id>2</order_id>

<order_status>processing</order_status> <order_price>120.000</order_price> <order_date>2011-07-11 10:40:13</order_date> <order_shipping_name>nombre cliente</order_shipping_name> </orders> Get_order_status <action> get_order_status</action> <orders_status> <orders_status_id>canceled</orders_status_id> <order_status_name>canceled</order_status_name> </orders_status> <orders_status> <orders_status_id>closed</orders_status_id> <order_status_name>closed</order_status_name> </orders_status> Get_orders_status_id <action>get_orders_status_id</action> <order_id>100</order_id> <orders> <order_id>100</order_id> <order_status>processing</order_status> <order_price>100.000</order_price> <order_date>2011-07-11 09:26:31</order_date> <order_shipping_name>nombre cliente</order_shipping_name> </orders> Put_carriers

<action> put_carriers</action> <carrier_id>3</carrier_id> </carriers> <carrier_id>5</carrier_id> </carriers> <total_carriers>2</total_carriers> Get_shipping_quote <action>get_shipping_quote</action> <shipping_cp_from>08004</shipping_cp_from> <shipping_cp_to>28001</shipping_cp_to> <country_from>es</country_from> <country_to>es</country_to> <packages>1</packages> <shippings> <shipping_width>3</shipping_width> <shipping_height>4</shipping_height> <shipping_length>5</shipping_length> <shipping_weight>6</shipping_weight> </shippings> <shippings> <shipping_width>3</shipping_width> <shipping_height>4</shipping_height> <shipping_length>9</shipping_length> <shipping_weight>12</shipping_weight> </shippings> <total_shippings>1</total_shippings> <shippings> <shipping_id_carrier>6</shipping_id_carrier> <shipping_id_service>8</shipping_id_service> <shipping_logo>http://www.url.com/media/logos/tnt.png</shipping _logo> <shipping_charge>6.55</shipping_charge> <shipping_code_carrier>tnt24</shipping_code_carrier> <shipping_name_carrier>tnt</shipping_name_carrier> <shipping_tax>18</shipping_tax> <shipping_saturday>0</shipping_saturday>

</shippings> Get_shipping_quote_no_mesure <action>get_shipping_quote_no_mesure</action> <shipping_cp_from>08004</shipping_cp_from> <shipping_cp_to>28001</shipping_cp_to> <country_from>es</country_from> <country_to>es</country_to> <weight>5</weight> <packages>es</packages> <total_shippings>1</total_shippings> <shippings> <shipping_id_carrier>6</shipping_id_carrier> <shipping_id_service>8</shipping_id_service> <shipping_logo>http://www.url.com/media/logos/tnt.png</shipping _logo> <shipping_charge>6.55</shipping_charge> <shipping_code_carrier>tnt24</shipping_code_carrier> <shipping_name_carrier>tnt</shipping_name_carrier> <shipping_tax>18</shipping_tax> <shipping_saturday>0</shipping_saturday> </shippings> Put_order Este método no dejará finalizar al no ser que el cliente disponga de saldo positivo en su cuenta, de igual modo, no es aconsejable recargar el saldo para realizar pruebas ya que las expediciones se cursarán en real. Para poder enviar una petición de pruebas, añada la etiqueta <testmode>1</testmode> al XML y el sistema le enviará una respuesta de pruebas. <action> put_order</action> <testmode> 0</testmode> <transporter_id>1</transporter_id> <service_id>100</service_id> <service_name>asm24</service_name> <hour_min_collection>4</hour_min_collection> <product_code>asm</product_code> <payment_method>bolsapaymentmethod</payment_method> <client_ip>0.0.0.0</client_ip> <comments>comentario del envío</comments>

<code_from>es</code_from> <code_to>es</code_to> <billing> <firstname_billing>nombre</firstname_billing> <lastname_billing>apellido 1</lastname_billing> <lastname2_billing>apellido 2</lastname2_billing> <company_billing>empresa</company_billing> <taxvat>18</taxvat> <road_type_billing>street</road_type_billing> <street_billing>dirección</street_billing> <road_number_billing>6</road_number_billing> <portal_billing></portal_billing> <floor_billing>8</floor_billing> <door_billing>2</door_billing> <postcode_billing>08206</postcode_billing> <city_billing>sabadell</city_billing> <country_billing>es</country_billing> <telephone_billing>000000000</telephone_billing> <fax_billing>930000000</fax_billing> <email_billing>email@email.com</email_billing> </billing> <from> <firstname_from>nombre</firstname_from> <lastname_from>apellido 1</lastname_from> <lastname2_from>apellido 2</lastname2_from> <company_from>empresa</company_from> <road_type_from>street</road_type_from> <street_from>dirección</street_from> <road_number_from>6</road_number_from> <portal_from></portal_from> <floor_from>8</floor_from> <door_from>2</door_from> <postcode_from>08004</postcode_from> <city_from>sabadell</city_from> <country_from>es</country_from> <telephone_from>000000000</telephone_from> <fax_from>930000000</fax_from> <email_from>email@email.com</email_from> <data_collection_from>6/9/2011</data_collection_from> <hour_range_from>1</hour_range_from> <merchandise_value>66,24</merchandise_value> <merchandise_desc></merchandise_desc> <merchandise_type></merchandise_type> </from> <to> <firstname_to>nombre</firstname_to> <lastname_to>apellido 1</lastname_to> <lastname2_to>apellido 2</lastname2_to> <company_to></company_to> <road_type_to>street</road_type_to> <street_to>dirección</street_to> <road_number_to></road_number_to> <portal_to></portal_to> <floor_to></floor_to> <door_to></door_to> <postcode_to>00000</postcode_to> <city_to>ciudad</city_to> <country_to>es</country_to> <telephone_to>000000000</telephone_to> <fax_to></fax_to> <email_to>email@email.com</email_to> </to> <packages> <width>21</width> <height>1</height> <length>3</length> <weight>4</weight> <charge>7.44</charge>

<bultos>1</bultos> <taxes_percentage>18</taxes_percentage> </packages> <order>1</order> <proforma_pdf>http://www.clickline.com/media/pdf/order/order_20 11-09-08_17-00-58.pdf</proforma_pdf> <consignment_pdf>http://www.clickline.com/media/pdf/order/order _2011-09-08_17-00-58.pdf</consignment_pdf>