Métodos/Servicios de la API



1 - CrearPieza

Objetivo

Este Método se utiliza para poder dar de alta una pieza en forma lógica en Delivery (nuestro sistema) y devuelve un Identificador único de la pieza creada, para poder utilizarlo en los siguientes métodos de esta API, aunque también se pueden invocar el resto de los métodos a través del número de Pieza del cliente.

URL Pre-Productiva:(Esta URL en caso de modificarse les será notificado a los clientes)
https://www.ocageo.com.ar/OCAGEOAPITEST/CrearPieza

URL Productiva:(Esta URL en caso de modificarse les será notificado a los clientes)
https://www1.oca.com.ar/OCAGEOAPI/CrearPieza

Autenticación

Permite generar token de autenticación.

Tabla 1. Parámetros para obtener el Token de Autenticación

Parámetros Tipo Descripción
Grant Type String Password Credentials
Access Token URL Productiva String http://www1.oca.com.ar/OCAGEOAPI/login
Access Token URL Pre Productiva String http://www.ocageo.com.ar/OCAGEOAPITEST/login
Usarname String Código de Usuario Previamente Creado por OCA, por ej. DEMOAPI
Password String Password del usuario
Client Authentication String Send Client credentials in Body

Respuesta:

Status: 200 - json document containing token, etc.

    { 
        "token_type": "bearer",        
        "access_token": "string",      
        "expires_in": integer ,(600 seg.)       
        "scope": "string" 
    }

Status: 400 - json document that may contain additional details about the Failure

Body Raw:

  • Example Request
  • curl --location --request POST 'https://www1.oca.com.ar/OCAGEOAPI/CrearPieza' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiIiwiVXNlcklEIjoiMzM2NzYiLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJDT05TVUxUQSIsIm5iZiI6MTYyOTc0ODI1OSwiZXhwIjoxNjI5NzQ4ODU5LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjQwMjM3In0.sGi5WwPrMwkuWp0yfeUx5t32G8S95xqmsvKwdiujsMT5taOlD4KSiRPxvEW8hI9a0my4lBdcatZw8hNP58EmPA' \ --header 'Content-Type: application/json' \ --data-raw ' { "TipoPieza": "1", "NumeroPieza": "3000500", "Cliente": "UKQZ", "Producto": "101199", "SucursalCliente": "0", "SucursalOCA": "", "TipoDocumento": "DNI", "NumeroDocumento": "45648798", "Apellido": "Gonzalez", "Nombre": "Speedy", "Sexo": "M", "Observaciones": "", "Calle": "La Rioja", "Numero": "301", "Piso": "4", "Departamento": "yterte", "Torre": "", "Entrecalles": "", "CodigoPostal": "1214", "Localidad": "Once", "Provincia": "Caba", "Telefono": "145464678", "TelefonoLaboral": "", "TelefonoCelular": "12467891321", "Email": "", "FechaVisita": "", "CodigoRangoHorario": "1", "CodigoAccionAutomatica": "", "VinculoConPaquete":"", "ClavePiezaCliente":"3545454", "DatosAdicionalesCliente":"LIMCRE## $40.000,00#$#LIMLARGO## $35.000,00#$#"}'

Tabla 2. Parámetros para el Request

Parámetros Opcional? Descripción
TipoPieza NO Valores Posibles 1 = Pieza Individual, 4=Pieza Componente
NumeroPieza NO Numero de Pieza del Cliente
Cliente NO Código externo del Cliente en OCA
Producto NO Indica el Código de Producto que manda el cliente
SucursalCliente NO Código de Sucursal del Cliente Origen de la Pieza
SucursalOCA SI Sigla de Sucursal OCA para Asignar Directamente a la Pieza
TipoDocumento SI Tipos de Documentos por Ej DNI,CUIT, CUIL,DU,PAS,LE,etc.
NumeroDocumento SI Número de Documento
Apellido NO Apellido del Destinatario
Nombre SI Nombre del Destinatario
Sexo NO Sexo del Destinatario
Observaciones SI Aquí se manda cualquier observación que sirva para aclarar sobre el domicilio por ej.
Calle NO Calle del domicilio del destinatario
Número SI Nro. del domicilio del destinatario
Piso SI Piso del domicilio del destinatario
Departamento SI Departamento del domicilio del destinatario
Torre SI Torre del domicilio del destinatario
EntreCalles SI Las entre calles del domicilio del destinatario
CodigoPostal NO Código Postal del domicilio del destinatario
Localidad NO Localidad del domicilio del destinatario
Provincia SI Provincia del domicilio del destinatario
Telefono SI Teléfono del destinatario
TelefonoLaboral SI Teléfono laboral del destinatario
TelefonoCelular SI Teléfono celular del destinatario
Email SI Email del destinatario
CodigoRangoHorario NO Valores Posibles 1=8:30 – 18:00,2=8:30-13,3=13-18
CodigoAccionAutomatica SI Valores Posibles 19,17,32,36
VinculoConPaquete SI Nro de Pieza del Paquete al que se vincula el componente.
ClavePiezaCliente SI Este campo es utilizado por aquellos Clientes que informan alguna clave o Código de Unicidad para no crear piezas repetidas en el Sistema.
DatosAdicionalesCliente SI En este Campo se Informaría cualquier dato Adicional que el cliente requiera enviar para algún uso en particular., por ej. LIMCRE## $40.000,00#$#LIMLARGO## $35.000,00#$# separados por TAGS (Nombre Etiqueta ## VALOR #$# )
  • Example Response:
  • Status: 200 – OK (Devuelve el Identificador de Pieza Unico de OCA)

                                {
                                 "IdentificadorPiezaOCA": "G0000129693818",
      
                                  "Status": {
                                  "Codigo": 1,
                                  "Texto": "OK"
                                }
                                }

    Status: En caso de detectar duplicidad del Código de ClavePiezaCliente devolverá el siguiente mensaje

                            {
                            "IdentificadorPiezaOCA": "G0000129693818",
    
                            "Status": {
                            "Codigo": -2	,
                            "Texto": "Pieza Nro. 3000500 existente para el Campo Clave 3545454 con el identificador de OCA G0000129693818”
                            }
                            }

    Status: 401 - Unauthorized

    Status: 500 - Internal Server Error

2 - EstadoActual

Objetivo

Este Método se utiliza para poder obtener el Estado/Motivo Actual de una Pieza en nuestro sistema.

URL Pre-Productiva: (Esta URL en caso de modificarse les será notificado a los clientes)
https://www.ocageo.com.ar/OCAGEOAPITEST/EstadoActual

URL Productiva: (Esta URL en caso de modificarse les será notificado a los clientes)
https://www1.oca.com.ar/OCAGEOAPI/EstadoActual

Autenticación:

Permite generar token de autenticación.

Tabla 3. Parámetros para obtener el Token de Autenticación:

Parámetros Tipo Descripción
Grant Type String Password Credentials
Access Token URL Productiva String http://www1.oca.com.ar/OCAGEOAPI/login
Access Token URL Pre Productiva String http://www.ocageo.com.ar/OCAGEOAPITEST/login
Username String Código de Usuario Previamente Creado por OCA, por ej. DEMOAPI
Password String Password del usuario.
Client Authentication String Send Client credentials in body

Respuesta:

Status: 200 - json document containing token, etc.

            { 
                "token_type": "bearer",          
                "access_token": "string",          
                "expires_in": integer ,(600 seg.)            
                "scope": "string" 
            }

Status: 400 - json document that may contain additional details about the Failure

Body Raw:

  • Example Request
  • curl --location --request POST 'http://www.ocageo.com.ar/OCAGEOAPI/EstadoActual' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiIiwiVXNlcklEIjoiMzM2NzYiLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJDT05TVUxUQSIsIm5iZiI6MTYyOTc0ODI1OSwiZXhwIjoxNjI5NzQ4ODU5LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjQwMjM3In0.sGi5WwPrMwkuWp0yfeUx5t32G8S95xqmsvKwdiujsMT5taOlD4KSiRPxvEW8hI9a0my4lBdcatZw8hNP58EmPA' \ --header 'Content-Type: application/json' \ --data-raw '{ "Producto":"", "NumeroPieza":"", "IdentificadorPieza": "G0785300120000000007", "IdPieza":0 }'

Tabla 4. Parámetros para el Request:

Parámetros Opcional? Descripción
Producto SI Indica el Código de Producto que manda el cliente
NumeroPieza SI Numero de Pieza del Cliente
IdentificadorPieza SI Identificador de Pieza OCA para seguimiento WEB
IDPieza SI ID Interno de Pieza OCA
  • Example Response:
  • Status: 200 – OK (Devuelve el Estado/Motivo Actual de una Pieza)

    Status: 401 - Unauthorized

    Status: 500 - Internal Server Error

                    { 
                        { 
                          "Piezas": [ 
                            { 
                              "NumeroPiezaCliente": "3000500",
                              "EstadoMotivo": "Al Aguardo del Físico",
                              "FechaEstado": "11/09/2020 09:30:39",
                              "Operativa": "101199-SOBRES CON ACUSE",
                              "Producto": "101199-Sobres Con Acuses-Dietas Cormillot",
                              "Recibo": "",
                              "Carta": "",
                              "FechaRendicion": "",
                              "Cliente": "UKQZ - INTERNET DIETA SRL",
                              "Subservicio": "SAZ",
                              "SucursalOCA": "",
                              "SucursalCliente": "0000000000",
                              "IdPieza": 210035870,
                              "Destinatario": "Gonzalez Speedy",
                              "TipoPieza": "Pieza Normal",
                              "FechaInclusion": "", 
                              "FechaEnvioCliente": "", 
                              "PlanillaEnvio": "", 
                              "FechaPlanillaEnvio": "", 
                              "EstadoMotivoOCA": "Lógico Recibido/Sin Motivo", 
                              "CodigoEstadoCliente": "0",     
                              "IDEstadoPiezaOCA": 29, 
                              "IDMotivoPiezaOCA": 0,
                              "IdentificadorPiezaOCA": "G0000129693818",
                              "CodigoProducto": "310",
                              "EstadoWebOCA": "Entregado ",
                              "CodigoEstadoWebOCA": 9,
                              "CodigoEstadoMotivoUnificadoOCA": 99,
                              "DescripcionEstadoMotivoUnificado": "Entregada"
                            } 
                          ], 
                          "Status": { 
                            "Codigo": 1, 
                            "Texto": "OK" 
                          } 
                        }
  • Códigos de Errores:
Código Mensaje
1 Ok
2 No se encontraron piezas
3 Usuario bloqueado
4 Usuario inexistente
5 El Usuario no tiene asignado un perfil
6 Debe especificar un Numero de Pieza, Identificador de Pieza, o Idpieza a buscar
7 No existe el producto ingresado
8 El Numero de Idpieza es Inexistente
9 El Identificador de Idpieza es Inexistente
10 El Número de Pieza es Inexistente
3 - HistorialSeguimiento

Objetivo

Este Método se utiliza para poder obtener el tracking completo (Historial de Seguimiento) de una o más Piezas en el caso de encontrar más de una pieza para un mismo número de pieza del cliente.

URL Pre-Productiva: (Esta URL en caso de modificarse les será notificado a los clientes)
https://www.ocageo.com.ar/OCAGEOAPITEST/HistorialSeguimiento

URL Productiva: (Esta URL en caso de modificarse les será notificado a los clientes)
https://www1.oca.com.ar/OCAGEOAPI/HistorialSeguimiento

Autenticación :

Permite generar token de autenticación.

Tabla 5. Parámetros para obtener el Token de Autenticación:

Parámetros Tipo Descripción
Grant Type String Password Credentials
Access Token URL Productiva String http://www1.oca.com.ar/OCAGEOAPI/login
Access Token URL Pre Productiva String http://www.ocageo.com.ar/OCAGEOAPITEST/login
Username String Código de Usuario Previamente Creado por OCA, por ej. DEMOAPI
Password String Password del usuario.
Client Authentication String Send Client credentials in Body

Respuesta:

Status: 200 - json document containing token, etc.

        { 
          "token_type": "bearer",       
          "access_token": "string",        
          "expires_in": integer ,(600 seg.)         
          "scope": "string" 
        }

Status: 400 - json document that may contain additional details about the Failure

Body Raw :

  • Example Request

curl --location --request POST 'https://www.ocageo.com.ar/OCAGEOAPI/HistorialSeguimiento' \
--header 'Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiIiwiVXNlcklEIjoiMzM2NzYiLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJDT05TVUxUQSIsIm5iZiI6MTYyOTc0ODI1OSwiZXhwIjoxNjI5NzQ4ODU5LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjQwMjM3In0.sGi5WwPrMwkuWp0yfeUx5t32G8S95xqmsvKwdiujsMT5taOlD4KSiRPxvEW8hI9a0my4lBdcatZw8hNP58EmPA' \ --header 'Content-Type: application/json' \
--data-raw ' { "IdentificadorPieza":"G0785300120000000007", "IdPieza":0 }'

Tabla 6. Parámetros para el Request: “Uno de los Parámetros si o si debe venir especificado”

Código Acciones Posibles Tipo Long
IdentificadorPieza SIIdentificador de Pieza OCA para seguimiento WEB
IDPiezaSI ID Interno de Pieza OCA
NumeroPiezaSINumero de Pieza del Cliente
  • Example Response :

Status: 200 – OK (Devuelve el tracking completo de una Pieza o de más de una Pieza en el caso de encontrar 2 o más piezas iguales al consultar por Número de Pieza del cliente)

Status: 401 - Unauthorized

Status: 500 - Internal Server Error

"Historiales": [
        {
            "IdPieza": 129662194,
            "Historial": [
                {
                    "FechaEstadoSolicitud": "05/09/2016 19:05:07",
                    "EstadoDescripcion": "Lógico Recibido",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "Usuario para inclusión. TJN, SISTEMAS(SISTEMAS)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 29,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 1,
                    "EstadoWebOCA": "En proceso de Retiro",
                    "CodigoEstadoMotivoUnificadoOCA": 10,
                    "DescripcionEstadoMotivoUnificado": "Al Aguardo del Físico"
                },
                {
                    "FechaEstadoSolicitud": "06/09/2016 13:35:50",
                    "EstadoDescripcion": "Fisico Recibido",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "CARRERA, CHRISTIAN(999501)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 42,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 3,
                    "EstadoWebOCA": "En Proceso en OCA",
                    "CodigoEstadoMotivoUnificadoOCA": 14,
                    "DescripcionEstadoMotivoUnificado": "En Proceso en Plantas de OCA"
                },
                {
                    "FechaEstadoSolicitud": "06/09/2016 13:49:40",
                    "EstadoDescripcion": "A Enviar a Sucursal Oca",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "CARRERA, CHRISTIAN(999501)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 43,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 3,
                    "EstadoWebOCA": "En Proceso en OCA",
                    "CodigoEstadoMotivoUnificadoOCA": 14,
                    "DescripcionEstadoMotivoUnificado": "En Proceso en Plantas de OCA"
                },
                {
                    "FechaEstadoSolicitud": "06/09/2016 14:31:56",
                    "EstadoDescripcion": "Despachada a Sucursal Oca",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "CARRERA, CHRISTIAN(999501)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 41,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 4,
                    "EstadoWebOCA": "En viaje a Sucursal de Destino",
                    "CodigoEstadoMotivoUnificadoOCA": 13,
                    "DescripcionEstadoMotivoUnificado": "En viaje a Sucursal de Destino"
                },
                {
                    "FechaEstadoSolicitud": "07/09/2016 19:32:00",
                    "EstadoDescripcion": "Recepcionada en Sucursal",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 38,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 5,
                    "EstadoWebOCA": "Arribado a Sucursal de Destino",
                    "CodigoEstadoMotivoUnificadoOCA": 12,
                    "DescripcionEstadoMotivoUnificado": "Arribado a Sucursal de Destino"
                },
                {
                    "FechaEstadoSolicitud": "07/09/2016 19:32:00",
                    "EstadoDescripcion": "Programación p/Despacho",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 8,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 6,
                    "EstadoWebOCA": "Procesado en OCA",
                    "CodigoEstadoMotivoUnificadoOCA": 1,
                    "DescripcionEstadoMotivoUnificado": "En Distribución "
                },
                {
                    "FechaEstadoSolicitud": "07/09/2016 23:00:00",
                    "EstadoDescripcion": "A Despachar a Calle",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 9,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 6,
                    "EstadoWebOCA": "",
                    "CodigoEstadoMotivoUnificadoOCA": 1,
                    "DescripcionEstadoMotivoUnificado": "En Distribución "
                },
                {
                    "FechaEstadoSolicitud": "09/09/2016 08:31:00",
                    "EstadoDescripcion": "A Despachar a Calle",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 9,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 6,
                    "EstadoWebOCA": "",
                    "CodigoEstadoMotivoUnificadoOCA": 1,
                    "DescripcionEstadoMotivoUnificado": "En Distribución "
                },
                {
                    "FechaEstadoSolicitud": "09/09/2016 16:07:00",
                    "EstadoDescripcion": "En Calle",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 45,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 7,
                    "EstadoWebOCA": "Visita a Domicilio en Curso",
                    "CodigoEstadoMotivoUnificadoOCA": 1,
                    "DescripcionEstadoMotivoUnificado": "En Distribución "
                },
                {
                    "FechaEstadoSolicitud": "09/09/2016 16:11:00",
                    "EstadoDescripcion": "Visita",
                    "MotivoDescripcion": "Entregada",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 10,
                    "IdMotivoPiezaOCA": 99,
                    "CodigoEstadoWebOCA": 9,
                    "EstadoWebOCA": "Entregado",
                    "CodigoEstadoMotivoUnificadoOCA": 4,
                    "DescripcionEstadoMotivoUnificado": "Visita:Entregada"
                },
                {
                    "FechaEstadoSolicitud": "09/09/2016 18:25:00",
                    "EstadoDescripcion": "Tramitación Finalizada en Sucursal Oca",
                    "MotivoDescripcion": "Entregada",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 11,
                    "IdMotivoPiezaOCA": 99,
                    "CodigoEstadoWebOCA": 9,
                    "EstadoWebOCA": "Entregado ",
                    "CodigoEstadoMotivoUnificadoOCA": 99,
                    "DescripcionEstadoMotivoUnificado": "Entregada"
                },
                {
                    "FechaEstadoSolicitud": "09/09/2016 18:25:00",
                    "EstadoDescripcion": "Enviada a Digitalizadora",
                    "MotivoDescripcion": "Entregada",
                    "Usuario": "Sistema, Usuario(sistema)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 203,
                    "IdMotivoPiezaOCA": 99,
                    "CodigoEstadoWebOCA": 9,
                    "EstadoWebOCA": "Entregado ",
                    "CodigoEstadoMotivoUnificadoOCA": 99,
                    "DescripcionEstadoMotivoUnificado": "Entregada"
                }
            ]

        },
        {
            "IdPieza": 129693818,
            "Historial": [
                    "FechaEstadoSolicitud": "05/09/2016 19:05:07",
                    "EstadoDescripcion": "Lógico Recibido",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "Usuario para inclusión. TJN, SISTEMAS(SISTEMAS)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 29,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 1,
                    "EstadoWebOCA": "En proceso de Retiro",
                    "CodigoEstadoMotivoUnificadoOCA": 10,
                    "DescripcionEstadoMotivoUnificado": "Al Aguardo del Físico"
                },
                {
                    "FechaEstadoSolicitud": "06/09/2016 13:35:50",
                    "EstadoDescripcion": "Fisico Recibido",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "CARRERA, CHRISTIAN(999501)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 42,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 3,
                    "EstadoWebOCA": "En Proceso en OCA",
                    "CodigoEstadoMotivoUnificadoOCA": 14,
                    "DescripcionEstadoMotivoUnificado": "En Proceso en Plantas de OCA"
                },
                {
                    "FechaEstadoSolicitud": "06/09/2016 13:49:40",
                    "EstadoDescripcion": "A Enviar a Sucursal Oca",
                    "MotivoDescripcion": "Sin Motivo",
                    "Usuario": "CARRERA, CHRISTIAN(999501)",
                    "FechaEjecucion": "",
                    "Respuesta": "",
                    "Motivo": "",
                    "Tipo": "ESTADO",
                    "IdEstadoPiezaOCA": 43,
                    "IdMotivoPiezaOCA": 0,
                    "CodigoEstadoWebOCA": 3,
                    "EstadoWebOCA": "En Proceso en OCA",
                    "CodigoEstadoMotivoUnificadoOCA": 14,
                    "DescripcionEstadoMotivoUnificado": "En Proceso en Plantas de OCA"
                },
   {
                    "FechaEstadoSolicitud": "19/08/2021 18:18:37",
                    "EstadoDescripcion": "Rescatar",
                    "MotivoDescripcion": "",
                    "Usuario": UKSQ - Consulta x Web Services",
                    "FechaEjecucion": "",
                    "Respuesta": "Ingresada",
                    "Motivo": "",
                    "Tipo": "ACCION",
                    "IdEstadoPiezaOCA": null,
                    "IdMotivoPiezaOCA": null,
                    "CodigoEstadoWebOCA": null,
                    "EstadoWebOCA": "",
                    "CodigoEstadoMotivoUnificadoOCA": null,
                    "DescripcionEstadoMotivoUnificado": ""
                }

            ]
        }
    ],
    "Status": {
        "Codigo": 1,
        "Texto": "OK"
    }
}
  • Códigos de Errores:
Código Mensaje
1 Ok
2 No se encontraron piezas
3 Usuario bloqueado
4 Usuario inexistente
6 Debe especificar un Numero de Pieza, Identificador de Pieza, o Idpieza a buscar
7 No existe el producto ingresado
8 El Numero de Idpieza es Inexistente
9 El Identificador de Idpieza es Inexistente
10 El Número de Pieza es Inexistente
4- PiezasPorDocumento

Objetivo

Este Método se utiliza para poder obtener todas las piezas en Distribución por Nro. de Documento del Destinatario.

URL Pre-Productiva: (Esta URL en caso de modificarse les será notificado a los clientes)
https://www.ocageo.com.ar/OCAGEOAPITEST/PiezasPorDocumento

URL Productiva : (Esta URL en caso de modificarse les será notificado a los clientes)
https://www1.oca.com.ar/OCAGEOAPI/PiezasPorDocumento

Autenticación :

Permite generar token de autenticación.

Tabla 7. Parámetros para obtener el Token de Autenticación:

Parámetros Tipo Descripción
Grant Type String Password Credentials
Access Token URL Productiva String http://www1.oca.com.ar/OCAGEOAPI/login
Access Token URL Pre Productiva String http://www.ocageo.com.ar/OCAGEOAPITEST/login
Username String Código de Usuario Previamente Creado por OCA, por ej. DEMOAPI
Password String Password del usuario.
Client Authentication String Send Client credentials in Body

Respuesta:

Status: 200 - json document containing token, etc.

    { 
      "token_type": "bearer",       
      "access_token": "string",       
      "expires_in": integer ,(600 seg.)      
      "scope": "string" 
    }

Status: 400 - json document that may contain additional details about the Failure

Body Raw :

  • Example Request:

  • curl --location --request POST 'https://www1.oca.com.ar/OCAGEOAPI/PiezasPorDocumento' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiIiwiVXNlcklEIjoiMzM2NzYiLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJDT05TVUxUQSIsIm5iZiI6MTYyOTc0ODI1OSwiZXhwIjoxNjI5NzQ4ODU5LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjQwMjM3In0.sGi5WwPrMwkuWp0yfeUx5t32G8S95xqmsvKwdiujsMT5taOlD4KSiRPxvEW8hI9a0my4lBdcatZw8hNP58EmPA' \ --header 'Content-Type: application/json' \
    --data-raw '{ "TipoDocumento":"", "NumeroDocumento":"20403624", "Producto":"", "Operativa":"","CantidadMeses":"2","EstadosNoTerminal":1 }'

Tabla 8. Parámetros para obtener el Token de Autenticación:

Parámetros Opcional? Descripción
TipoDocumento SI Tipos de Documentos por Ej DNI,CUIT, CUIL,DU,PAS,LE,etc.
NumeroDocumento NO Número de Documento del destinatario a consultar.
Producto SI Código de Producto del cliente
Operativa SI Código de la Operativa comercial con OCA
CantidadMeses SI Cantidad de Meses de la Fecha de Ingreso de la Pieza a recuperar para la consulta. Sino se especifica el parámetro, el default traerá lo que encuentre de los últimos 6 meses.
EstadosNoTerminal SI Pasar como valor Númerico, sin comillas. Valores Posibles 1=Trae Piezas con estados que se encuentren como NO finalizadas, 0=Trae Piezas con todos los estados Finales o No Finales.
  • Example Response :

  • Status: 200 – OK (Devuelve las Piezas para el Nro. de Documento del Destinatario en Distribución en OCA)

    Status: 401 - Unauthorized

    Status: 500 - Internal Server Error

    {
        "Piezas": [
            {
                "NumeroPieza": "0000000157895972",
                "Destinatario": "POLASTRO CARLOS FEDERICO",
                "Operativa": "03 DELV  REEMPLAZA 23225",
                "IdPieza": 125518966,
                "FechaInclusion": "12/07/2016 07:09:03",
                "EstadoMotivoOCA": "Archivada/Entregada",
                "FechaEstado": "24/08/2016 00:00:00",
                "Producto": "VISAIN-Visa Internacional            ",
                "CodigoEstadoCliente": "0",
                "EstadoCliente": "",
                "IdEstadoPiezaOCA": 17,
                "IdMotivoPiezaOCA": 99,
                "CodigoProducto": "VISAIN",
                "IdentificadorPiezaOCA": "G0000125518966",
                "CodigoEstadoWebOCA": 9,
                "EstadoWebOCA": "Entregado ",
                "CodigoEstadoMotivoUnificadoOCA": 99,
                "DescripcionEstadoMotivoUnificado": "Entregada"
            },
            {
                "NumeroPieza": "4055160001954682",
                "Destinatario": "POLASTRO CARLOS FEDERICO",
                "Operativa": "Banelco Gral. ",
                "IdPieza": 124792851,
                "FechaInclusion": "01/07/2016 07:07:45",
                "EstadoMotivoOCA": "Visita/No Responde",
                "FechaEstado": "07/09/2016 14:54:00",
                "Producto": "VDBHRC- BANELCO GENERAL",
                "CodigoEstadoCliente": "0",
                "EstadoCliente": "",
                "IdEstadoPiezaOCA": 10,
                "IdMotivoPiezaOCA": 7,
                "CodigoProducto": "VDBHRC",
                "IdentificadorPiezaOCA": "G0000124792851",
                "CodigoEstadoWebOCA": 10,
                "EstadoWebOCA": "No entregado",
                "CodigoEstadoMotivoUnificadoOCA": 2,
                "DescripcionEstadoMotivoUnificado": "Visita: Imposible de Entregar"
            }
        ],
        "Status": {
            "Codigo": 1,
            "Texto": "Ok"
        }
    }
  • Códigos de Errores:
Código Mensaje
1 Ok
2 No se encontraron piezas
3 Usuario bloqueado
4 Usuario inexistente
7 No existe el producto ingresado
11 El parámetro Numero de Documento es obligatorio
12 El parámetro Numero de Documento debe ser valido
5- IngresarAccion:

Objetivo

Este método sirve para ingresar alguna acción (Rescate a una sucursal del cliente, Repactado (Cambio de Domicilio), Reenvio con pactado de nueva Fecha y rango horario de visita, Entrega en una sucursal de OCA, Destrucción). La cual hace si dicha acción puede ejecutarse exitosamente, que se modifique el circuito de distribución de una pieza.

URL Pre-Productiva: (Esta URL en caso de modificarse les será notificado a los clientes)
https://www.ocageo.com.ar/OCAGEOAPITEST/IngresarAccion

URL Productiva: (Esta URL en caso de modificarse les será notificado a los clientes)
https://www1.oca.com.ar/OCAGEOAPI/IngresarAccion

Autenticación:

Permite generar token de autenticación.

Tabla 9. Parámetros para obtener el Token de Autenticación:

Parámetros Tipo Descripción
Grant Type String Password Credentials
Access Token URL Productiva String http://www1.oca.com.ar/OCAGEOAPI/login
Access Token URL Pre Productiva String http://www.ocageo.com.ar/OCAGEOAPITEST/login
Username String Código de Usuario Previamente Creado por OCA, por ej. DEMOAPI
Password String Password del Usuario.
Client Authentication String Send Client credentials in Body

Respuesta:

Status: 200 - json document containing token, etc.

      { 
        "token_type": "bearer",         
        "access_token": "string",        
        "expires_in": integer ,(600 seg.)         
        "scope": "string"       
      }

Status: 400 - json document that may contain additional details about the Failure

Body Raw:

  • Example Request
  • curl --location --request POST 'https://www1.oca.com.ar/OCAGEOAPI/IngresarAccion' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiIiwiVXNlcklEIjoiMzM2NzYiLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJDT05TVUxUQSIsIm5iZiI6MTYyOTc0ODI1OSwiZXhwIjoxNjI5NzQ4ODU5LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjQwMjM3In0.sGi5WwPrMwkuWp0yfeUx5t32G8S95xqmsvKwdiujsMT5taOlD4KSiRPxvEW8hI9a0my4lBdcatZw8hNP58EmPA' \ --header 'Content-Type: application/json' \
    --data-raw

            '{                                                                         
              "PiezasAcciones": [                                                                 
                {                                                                                        
                  "Cliente": "XXX",                                                                      
                  "Producto": "103172",                                                                   
                  "NumeroPieza": "501042000032743011",                                                    
                  "IdentificadorPieza": "",                                                       
                  "IdPieza": "0",                                                                         
                  "IdAccion": "17",                                                                      
                  "FillerAccion": "Rescate Automatico Test"                                       
                },                                                                                       
            {                                                                                            
                  "Cliente": "XXX",                                                               
                  "Producto": "103172",                                                                   
                  "NumeroPieza": "501042000032743012",                                            
                  "IdentificadorPieza": "",                                                               
                  "IdPieza": "0",                                                                         
                  "IdAccion": "18",                                                                      
                  "FillerAccion": "0000001234Rescate Automatico Test"                                    
                }                                                                                         
              ],                                                                                          
              "CantidadAcciones": "2",                                                                   
              "CancelaAccionPrevia": "true"                                                              
            }'

Tabla 10. Parámetros para el Request: “Uno de los Parámetros NumeroPieza, IdentificadorPieza o IdPieza si o si debe venir especificado”

Parámetros Opcional? Descripción
Cliente NO Código de Cliente.
Producto NO Código de Producto del cliente
NumeroPieza SI Número de la Pieza del cliente
IdentificadorPieza SI Identificador de Pieza OCA para seguimiento WEB
IdPieza SI Interno de Pieza OCA
IdAccion NO Código de Acción a ingresar (Ver Listado de Acciones Posibles)
FillerAccion SI Filler variable en función de la Acción que se quiere ingresar, es un String de ancho fijo.(Ver datos adicionales de cada acción)

Código Acciones Posibles Tipo Long Opcional Comentarios
17 - Rescatar a sucursal origen (Devolver al Cliente)
ObservacionesCaracter100SI
18 - Rescatar (Devolver al Cliente)
Sucursal del ClienteCaracter10NO
ObservacionesCaracter100SI
19 - Rescatar a casa central (Devolver al Cliente)
ObservacionesCaracter100SI
51 – Entrega por Mostrador Sucursal OCA
Sigla de Sucursal OCA Caracter3NOPor ej. Sucursal BNO que es la Sigla de Suc. Belgrano
92 - Repactar(Pactar Cambio de Domicilio y nuevo Horario de Visita)
CalleCaracter50NOPuede venir todo el domicilio junto en este campo calle
NúmeroCaracter5SICompletar con espacios
TorreCaracter1SICompletar con espacios
PisoCaracter2SICompletar con espacios
DepartamentoCaracter4SICompletar con espacios
LocalidadCaracter35NO
ProvinciaCaracter20SICompletar con espacios
Código PostalCaracter8NOCódigo Postal de 4 dígitos por ej 5000
PaísCaracter30SICompletar con espacios
TeléfonoCaracter30SIPrefentemente Informar Teléfono Celular sino completar con Espacios en blanco
LunesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
MartesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
MiércolesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
JuevesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
ViernesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
SábadoCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
Hora DesdeCaracter5SIHora en que se realizará la entrega. De 09 a 18 hs.- El rango horario entre hora desde y hasta debe ser al menos 4 hs.
Hora HastaCaracter5SIHora en que se realizará la entrega. De 09 a 18 hs.- El rango horario entre hora desde y hasta debe ser al menos 4 hs.
ObservacionesCaracter100SI
Fecha Pactada VisitaCaracter10SIFecha de Pactación de la Visita si la hay - Formato DD/MM/AAAA.- Obviamente si se informa esta Fecha son Obligatorios los rangos Horarios.
Semana a Visitar comienzaCaracter10SICompletar con espacios
91 - Reenviar (Pactar nueva visita)
LunesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
MartesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
MiércolesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
JuevesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
ViernesCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
SábadoCaracter1SIDías de la semana en que se realizará la entrega si está prefijada sino marcar todos los días con "X"
Hora DesdeCaracter5SIHora en que se realizará la entrega. De 09 a 18 hs.- El rango horario entre hora desde y hasta debe ser al menos 4 hs.
Hora HastaCaracter5SIHora en que se realizará la entrega. De 09 a 18 hs.- El rango horario entre hora desde y hasta debe ser al menos 4 hs.
ObservacionesCaracter100SI
Fecha Pactada VisitaCaracter10SIFecha de Pactación de la Visita si la hay - Formato DD/MM/AAAA.- Obviamente si se informa esta Fecha son Obligatorios los rangos Horarios.
Semana a Visitar comienzaCaracter10SICompletar con espacios
  • Ejemplos de FillerAccion por cada Acción:

IDAccion FillerAccion
17DEVOLVER URGENTE
180000000050DEVOLVER URGENTE
19DEVOLVER URGENTE
51BNO
91X X XX10:0015:00 X 09:0018:00
18/02/2021
92Bº CHILE M-H C-12 12 BAHIA BLANCA BAHIA BLANCA 8000 ARGENTINA
XXXXXX09:0018:00
  • Example Response :

Status: 200 – OK (Significa que la transacción pudo realizarse y además devuelve la lista de Piezas que se enviaron para ingresarle acciones, y en cada caso devuelve su propio StatusAccion donde código 1 es OK y -1 que no pudo ingresarse la acción para esa Pieza y en “Texto” informa el motivo del porqué no pudo

Al final envía Status con Código “1” Texto “OK” Código “-1” Texto “Mensaje de error”

Status: 401 - Unauthorized

Status: 500 - Internal Server Error

Ejemplo 1: “2 Acciones enviadas 1 ingresada exitosamente”

        { 
          "Piezas": [         
            {         
              "Cliente": "XXX",         
              "Producto": "103172",         
              "NumeroPieza": "501042000032743011",         
              "IdentificadorPieza": "",         
              "IdPieza": 0,        
              "IdAccion": 17,        
              "FillerAccion": "Rescate Automatico Test",         
              "StatusAccion": {        
                "Codigo": 1,        
                "Texto": "OK"         
              }         
            },         
            {        
              "Cliente": "XXX", 
              "Producto": "103172",        
              "NumeroPieza": "501042000032743012",         
              "IdentificadorPieza": "",         
              "IdPieza": 0,         
              "IdAccion": 18,        
              "FillerAccion": "0000001234Rescate Automatico Test",         
              "StatusAccion": {         
                "Codigo": -1, 
                "Texto": "No existe una Pieza con este Producto y Numero de Pieza."        
              }         
            } 
          ],         
          "CantidadAccionesEnviadas": 2,         
          "CantidadAccionesRechazadas": 1, 
          "Status": {         
            "Codigo": -1,         
            "Texto": "Algunas acciones no pudieron ingresarse, revise en la lista de resultado." 
          }        
        }

Ejemplo 2: “2 Acciones enviadas 2 ingresadas exitosamente”

        { 
          "Piezas": [      
              {       
                  "Cliente": "XXX",       
                  "Producto": "103172",      
                  "NumeroPieza": "501042000132743011",       
                  "IdentificadorPieza": "",       
                  "IdPieza": 0,       
                  "IdAccion": 17,       
                  "FillerAccion": "Rescate Automatico Test",      
                  "StatusAccion": {       
                      "Codigo": 1, 
                      "Texto": "OK"       
                  }       
              }, 
              {       
                  "Cliente": "XXX",       
                  "Producto": "103172",      
                  "NumeroPieza": "501042013256870007",       
                  "IdentificadorPieza": "",      
                  "IdPieza": 0,       
                  "IdAccion": 18,       
                  "FillerAccion": "0000000001Rescate Automatico Test", 
                  "StatusAccion": {      
                      "Codigo": 1,       
                      "Texto": "OK"       
                  }       
              }       
          ],       
          "CantidadAccionesEnviadas": 2, 
          "CantidadAccionesRechazadas": 0,      
          "Status": {       
              "Codigo": 1,      
              "Texto": "OK"       
          }       
      } 
  • Códigos de Errores:

Código Mensaje
1Ok
2No se encontraron piezas
3Usuario bloqueado
4Usuario inexistente
6Debe Especificar un Numero de Pieza, Identificador de Pieza, o IdPieza a buscar
7No existe el producto ingresado
8El Nro. De Idpieza es Inexistente
9El Identificador de Pieza es Inexistente
13El Atributo Cliente es obligatorio
14El Atributo Cliente es invalido
15El parámetro Código de Producto es obligatorio
16El Código de Acción es inválido
17Existe más de una pieza con ese Producto y Numero de Pieza
18No existe una Pieza con ese Producto y Numero de Pieza
19La Pieza a Accionar no Existe
20La Pieza a Acciones debe ser del tipo Titular o de Tipo Paquete
21La Pieza tiene una Acción pendiente, debe cancelarla si desea volver a accionar
22Error no se puede ingresar la Accion en el estado actual de la pieza
6- Especificaciones Extras:

Arquitectura: REST
Protocolo standard de autorización: OAuth 2.0
Protocolo web de transmisión: Https://
Informe de request a la API: Códigos standard http (por ejemplo: 200: OK-CORRECTO).
Autorización de la entidad consumidora: OAuth 2. Password Credentials grant, (envío de credenciales previamente por vía email). Validez del token: 600 segundos

7- Credenciales

Para obtener las credenciales y acceder a los webservices debes ponerte en contacto con nuestra area de sistemas. Lo podes solicitar en la siguiente casilla de correo: integraciones@oca.com.ar