Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Web Services para Registrar o Modificar los Campos Definidos por el administrador o usuario del Sistema, para Grupos de Clientes.

Swagger open api macroswagger: '2.0' info: title: "SIFCO_REST_API" version: "1.0" description: "La presente documentación busca detallar los métodos que permite ejecutar este **Web Services**, como es Registrar o Modificar los Campos Definidos por el usuario del sistema, para un cliente en la **Aplicación SIFCO WEB** ." termsOfService: "https://sifco.org/sobre-nosotros/" contact: email: "soporte@sifco.org" license: name: "Apache 2.0" url: "http://www.apache.org/licenses/LICENSE-2.0.html" host: "<SERVER>" schemes: - https - http basePath: /<APPDIR>/rest tags: - name: "TClCalClientes" externalDocs: description: "Manual SIFCO" url: "https://sifco.atlassian.net/wiki/x/MYDU" produces: - application/json paths: /TClCalClientes/{ClCliCod}: get: tags: - TClCalClientes operationId: "GetTClCalClientes

DESCRIPCIÓN.

Este Web Service, permite el ingreso de detalles específicos del cliente (asociado / socio) en la Aplicación SIFCO WEB, permitiendo incluir, agregar o modificar solo los Campos Definidos por el Administrador del Sistema asignados a un Cliente o también llamados Calificadores Adicionales de Clientes con sus detalles respectivos.. Es importante acotar que para la correcta carga de los parámetros de un cliente en este Web Service, se deben revisar las Constantes preestablecidas asociadas a variables o parámetros de la Aplicación SIFCO WEB., dado a que ellos les permitan conocer todos los valores y convenciones preestablecidos en la Aplicación SIFCO WEB.

Swagger open api macro
swagger: '2.0'
info:
  title: "SIFCO_REST_API"
  version: "1.0"
  termsOfService: "https://sifco.org/sobre-nosotros/"
  contact:
    email: "soporte@sifco.org"
  license:
    name: "Apache 2.0"  
    summaryurl: "Consultar los Campos Definidos por el usuario del sistema, de un Cliente en el Sistema"
      parameters"http://www.apache.org/licenses/LICENSE-2.0.html"
host: "<SERVER>"
schemes:
  - https
  - http
basePath: /<APPDIR>/rest
tags:
- name: "TClCalClientes"
  externalDocs:
    description: "Manual SIFCO"
 - in: header url: "https://sifco.atlassian.net/wiki/x/MYDU"
produces:
  - application/json
paths:
  name/TClCalClientes/{ClCliCod}:
Content-Type    get:
      typetags:
        - TClCalClientes
      operationId: "stringGetTClCalClientes"
      summary: "Consultar los  required: true
     Campos Definidos por el usuario del sistema, de un Cliente en el Sistema"
    default: application/json  parameters:
        - in: header
          name: AuthorizationContent-Type
          type: "string"
          required: true
          default: OAuthapplication/json
<Access Token>         - in: header
          name: GENEXUS-AGENTAuthorization
          type: "string"
          required: true
          default: SmartDeviceOAuth <Access ApplicationToken>
        - namein: "ClCliCod"header
          inname: "path"GENEXUS-AGENT
          descriptiontype: "Código del Clientestring"
          required: true
          typedefault: "integer"SmartDevice Application
        - formatname: "int64ClCliCod"
             responsesin: "path"
       200:           description: "SuccessfulCódigo del operationCliente"
          schemarequired: true
           $reftype: "#/definitions/TClCalClientesinteger"
        400:           descriptionformat: "Bad requestint64"
      
   schema:             $ref: "#/definitions/GxJsonError"responses:
         401200:
          description: "NotSuccessful Authenticatedoperation"
          schema:
            $ref: "#/definitions/GxJsonErrorTClCalClientes"
        404400:
          description: "Data with the specified key could not be foundBad request"
          schema:
            $ref: "#/definitions/GxJsonError"
        500401:
          description: "InternalNot server errorAuthenticated"
          schema:
            $ref: "#/definitions/GxJsonError"
     post:   404:
   tags:       description: "Data with the -specified TClCalClienteskey could not be found"
  operationId: "InsertTClCalClientes"       summaryschema:
"Insertar  los Campos Definidos por el usuario del sistema, de un Cliente en el Sistema"$ref: "#/definitions/GxJsonError"
        parameters500:
         - indescription: header "Internal server error"
          nameschema:
Content-Type            type$ref: "string#/definitions/GxJsonError"

    post:
    required  tags:
true        - TClCalClientes
 default: application/json    operationId: "InsertTClCalClientes"
   - in: header summary: "Insertar los Campos Definidos por el usuario del sistema, name:de Authorizationun Cliente en el Sistema"
      typeparameters:
"string"        -   requiredin: trueheader
          defaultname: OAuthContent-Type
<Access Token>         - intype: header"string"
          namerequired: GENEXUS-AGENTtrue
          typedefault: "string"application/json
        -  requiredin: trueheader
          defaultname: SmartDeviceAuthorization
Application         - nametype: "ClCliCodstring"
          inrequired: "path"true
          descriptiondefault: "CódigoOAuth del<Access Cliente"Token>
        -  requiredin: trueheader
          typename: "integer"GENEXUS-AGENT
          formattype: "int64string"
        -  namerequired: "TClCalClientes"true
          indefault: "body"SmartDevice Application
        - descriptionname: "SDT of TClCalClientesClCliCod"
          requiredin: false"path"
          schemadescription: "Código del Cliente"
          $refrequired: "#/definitions/TClCalClientes"true
          responsestype: "integer"
        200  format: "int64"
        - descriptionname: "Successful operationTClCalClientes"
          schemain: "body"
           $refdescription: "#/definitions/SDT of TClCalClientes"
        201:
          description: "Created"  required: false
          schema:
            $ref: "#/definitions/TClCalClientes"

       400responses:
        200:
          description: "BadSuccessful requestoperation"
          schema:
            $ref: "#/definitions/GxJsonErrorTClCalClientes"
        401201:
          description: "Not AuthenticatedCreated"
          schema:
            $ref: "#/definitions/GxJsonErrorTClCalClientes"
        404400:
          description: "Data with the specified key could not be foundBad request"
          schema:
            $ref: "#/definitions/GxJsonError"
        500401:
          description: "InternalNot server errorAuthenticated"
          schema:
            $ref: "#/definitions/GxJsonError"
     put   404:
      tags:    description: "Data with the specified -key TClCalClientescould not be found"
   operationId: "UpdateTClCalClientes"      schema:
summary: "Actualizar los Campos Definidos por el usuario del sistema, de un Cliente en el Sistema"$ref: "#/definitions/GxJsonError"
        parameters500:
         - indescription: header "Internal server error"
          nameschema:
Content-Type            type$ref: "string#/definitions/GxJsonError"

    put:
     required tags:
true        - TClCalClientes
 default: application/json    operationId: "UpdateTClCalClientes"
   - in: header summary: "Actualizar los Campos Definidos por el usuario del sistema, name:de Authorizationun Cliente en el Sistema"
      typeparameters:
"string"        -   requiredin: trueheader
          defaultname: OAuthContent-Type
<Access Token>         - intype: header"string"
          namerequired: GENEXUS-AGENTtrue
          typedefault: "string"application/json
        -  requiredin: trueheader
          defaultname: SmartDeviceAuthorization
Application         - nametype: "ClCliCodstring"
          inrequired: "path"true
          descriptiondefault: "CódigoOAuth del<Access Cliente"Token>
        -  requiredin: trueheader
          typename: "integer"GENEXUS-AGENT
          formattype: "int64string"
        -  namerequired: "TClCalClientes"true
          indefault: "body"SmartDevice Application
        - descriptionname: "SDT of TClCalClientesClCliCod"
          requiredin: true"path"
          schemadescription: "Código del Cliente"
          $refrequired: "#/definitions/TClCalClientes"true
          type: "integer"
 responses:         200format: "int64"
        - descriptionname: "Successful operationTClCalClientes"
          schemain: "body"
           $refdescription: "#/definitions/SDT of TClCalClientes"
        400  required: true
          descriptionschema:
"Bad request"           schema:$ref: "#/definitions/TClCalClientes"
      
     $ref responses:
"#/definitions/GxJsonError"         401200:
          description: "NotSuccessful Authenticatedoperation"
          schema:
            $ref: "#/definitions/GxJsonErrorTClCalClientes"
        404400:
          description: "NotBad foundrequest"
          schema:
            $ref: "#/definitions/GxJsonError"
        409401:
          description: "Not Authenticated"TClCalClientes
was changed"         500schema:
          description  $ref: "#/definitions/GxJsonError"Internal
server error"       404:
   schema:       description: "Not found"
   $ref: "#/definitions/GxJsonError"      deleteschema:
      tags:      $ref: "#/definitions/GxJsonError"
 -   TClCalClientes    409:
  operationId: "DeleteTClCalClientes"       summarydescription: "Eliminar los Campos Definidos por el usuario del sistema, de un Cliente en el Sistema"TClCalClientes was changed"
        500:
          parametersdescription: "Internal server error"
     - in: header   schema:
       name: Content-Type    $ref: "#/definitions/GxJsonError"

    typedelete:
"string"      tags:
    required: true   - TClCalClientes
      defaultoperationId: application/json "DeleteTClCalClientes"
      summary: "Eliminar los Campos Definidos - in: header
     por el usuario del sistema, de un Cliente en el Sistema"
    name: Authorization parameters:
        - typein: "string"header
          requiredname: trueContent-Type
          default: OAuth <Access Token>type: "string"
          required: true
          default: application/json
        - in: header
          name: GENEXUS-AGENTAuthorization
          type: "string"
          required: true
          default: SmartDeviceOAuth <Access ApplicationToken>
        - namein: "ClCliCod"header
          inname: "path"GENEXUS-AGENT
          descriptiontype: "Código del Clientestring"
          required: true
          typedefault: "integer"SmartDevice Application
        - formatname: "int64ClCliCod"
         responses: in: "path"
          200description: "Código del Cliente"
          descriptionrequired: "Successfultrue
operation"           schematype: "integer"
           $refformat: "#/definitions/TClCalClientesint64"

       204responses:
        200:
          description: "Successful operation"
          schema:
            $ref: "#/definitions/TClCalClientes"
        400204:
          description: "BadSuccessful requestoperation"
          schema:
            $ref: "#/definitions/GxJsonErrorTClCalClientes"
        401400:
          description: "NotBad Authenticatedrequest"
          schema:
            $ref: "#/definitions/GxJsonError"
        404401:
          description: "Not foundAuthenticated"
          schema:
            $ref: "#/definitions/GxJsonError"
        404:
          description: "Not found"
          schema:
            $ref: "#/definitions/GxJsonError"
        500:
          description: "Internal server error"
          schema:
            $ref: "#/definitions/GxJsonError"


security:
  - OAuth2: []
    ApiKeyAuth1: []
securityDefinitions:
  OAuth2:
    type: oauth2
    flow: password
    tokenUrl: https://test.sifco.org/DemoCoopGT/oauth/access_token
    scopes:
      Execute: Permite el metodométodo tipo GET
      Insert: Permite el metodométodo tipo POST
      Update: Permite el metodométodo tipo PUT
      Delete: Permite el metodométodo tipo DELETE
      FullControl: Permite el manejo de los Cuatro MetodosMétodos GET, POST, PUT,DELETE, sobre el Web Service
  ApiKeyAuth1:
    type: apiKey
    in: header
    name: granttype

definitions:

  TClCalClientes:
    properties:
      ClCliCod:
        description: Código del Cliente
        type: "integer"
        format: "int64"

      ClNomSocio:
        description: Nombre del Cliente
        type: "string"

      gx_md5_hash:
        description: gx_md5_hash is an identifier for a specific version of a resource, it is used for optimistic concurrency check. It is required for update and delete operations and  ignored on insert.
        type: "string"

      Level1:
        $ref: "#/definitions/TClCalClientes.Level1Item"

    required:
      - ClCliCod

  TClCalClientes.Level1Item:
    properties:
      ApCalCod:
        description: Código
        type: "integer"
        format: "int32"

      ApCalDes:
        description: Descripción
        type: "string"

      ApCalEti:
        description: Etiqueta
        type: "string"

      ApCalTipo:
        description: Tipo de Calificador
        type: "integer"
        format: "int32"

      ApCalObligatorio:
        description: Indica si es Obligatorio
        type: "integer"
        format: "int32"

      ClCalVNum:
        description: Valor Numérico de Calificador
        type: "number"
        format: "double"

      ClCalVAlfa:
        description: Valor Alfanumérico de Califica
        type: "string"

      ClCalVFecha:
        description: Valor Fecha de Calificador
        type: "string"
        format: "date"

      ClCalVCarter:
        description: Valor Caracter Calificador
        type: "string"


    required:
      - ApCalCod
    x-gx-level: "TClCalClientes"

  GxJsonError:
    properties:
      error:
        $ref: "#/definitions/GxJsonError.error"

  GxJsonError.error:
    properties:
      code:
        description: Codigo de Error
        type: "string"

      message:
        description: Mensaje de Error
        type: "string"


    x-gx-level: "GxJsonError"   ApCalDes:
        description: Descripción
        type: "string"

      ApCalEti:
        description: Etiqueta
        type: "string"

      ApCalTipo:
        description: Tipo de Calificador
        type: "integer"
        format: "int32"

      ApCalObligatorio:
        description: Indica si es Obligatorio
        type: "integer"
        format: "int32"

      ClCalVNum:
        description: Valor Numérico de Calificador
        type: "number"
        format: "double"

      ClCalVAlfa:
        description: Valor Alfanumérico de Calificador
        type: "string"

      ClCalVFecha:
        description: Valor Fecha de Calificador
        type: "string"
        format: "date"

      ClCalVCarter:
        description: Valor Carácter Calificador
        type: "string"


    required:
      - ApCalCod
    x-gx-level: "TClCalClientes"

  GxJsonError:
    properties:
      error:
        $ref: "#/definitions/GxJsonError.error"

  GxJsonError.error:
    properties:
      code:
        description: Código de Error
        type: "string"

      message:
        description: Mensaje de Error
        type: "string"


    x-gx-level: "GxJsonError"

RELACIONES ENTRE EL MODELO DE DATOS DE ESTE WEB SERVICE, Y EL RESTO DEL API’s RESTful DE LA APLICACIÓN SIFCO WEB.

Modelo de Datos de este Web Service

Web Service a Constantes del Sistema Relacionados

TClCalClientes

>TClCalClientes.Level1

ApCalCod

WSApCamposDefinidosUsuarioLista

EJEMPLOS DE REQUEST Y RESPONSE, PARA LOS SERVICIOS RESTful BAJO PROTOCOLO HTTP.

A continuación se muestra una tabla con un ejemplo de una Solicitud y un Respuesta para este Web Service.

METODO POST

Este método para este Web Service en especifico permite agregar una Calificador Adicional a un Cliente en la Aplicación SIFCO WEB.

El siguiente ejemplo se agrega un Calificador Adicional o Campo Definidos por el Administrador a un cliente en la Aplicación SIFCO WEB.

Tipo de Mensaje HTTP

Ejemplo

REQUEST

URL:

Code Block
languagehtml
https://test.sifco.org/democoopgt/rest/tclcalclientes/3

HEADERS

Code Block
languagejson
content-type: application/json
authorization: OAuth f2a9ec34-cf83-46f5-8862-f78........
genexus-agent: SmartDevice Application

BODY:

Code Block
languagejson
{
  "ClCliCod": 0,
  "ClNomSocio": "string",
  "gx_md5_hash": "string",
  "Level1": {
    "ApCalCod": 0,
    "ApCalDes": "string",
    "ApCalEti": "string",
    "ApCalTipo": 0,
    "ApCalObligatorio": 0,
    "ClCalVNum": 0,
    "ClCalVAlfa": "string",
    "ClCalVFecha": "2019-09-24",
    "ClCalVCarter": "string"
  }
}

200 (Successful operation)

Operación Exitosa

Code Block
languagejson
{
  "ClCliCod": 0,
  "ClNomSocio": "string",
  "gx_md5_hash": "string",
  "Level1": {
    "ApCalCod": 0,
    "ApCalDes": "string",
    "ApCalEti": "string",
    "ApCalTipo": 0,
    "ApCalObligatorio": 0,
    "ClCalVNum": 0,
    "ClCalVAlfa": "string",
    "ClCalVFecha": "2019-09-24",
    "ClCalVCarter": "string"
  }
}

201 (Created)

(Registro Creado con Éxito)

Code Block
languagejson
{
  "ClCliCod": 0,
  "ClNomSocio": "string",
  "gx_md5_hash": "string",
  "Level1": {
    "ApCalCod": 0,
    "ApCalDes": "string",
    "ApCalEti": "string",
    "ApCalTipo": 0,
    "ApCalObligatorio": 0,
    "ClCalVNum": 0,
    "ClCalVAlfa": "string",
    "ClCalVFecha": "2019-09-24",
    "ClCalVCarter": "string"
  }
}

400 (Bad Request).

Solicitud Errada

Code Block
languagejson
{
  "error": {
    "code": "string",
    "message": "string"
  }
}

401 (This service needs an Authorization Header)

(No Autenticado, asociado normalmente a que no se respetaron las cabeceras obligatorias para el consumo de este Web Service, para mayores detalles consultar (Configuración de Seguridad para Obtener Token de Acceso y Consumir de los Web Services) ).

Code Block
languagejson
{
  "error": {
    "code":"0",
    "message":"This service needs an Authorization Header"
  }
}

404 (Not Found).

Respuesta Vacía (Web Service, no encontrado)

500 (Internal Server Error)

(Error Interno del Servidor de las API’s REST).

Code Block
languagejson
{
  "error": {
    "code": "string",
    "message": "string"
  }
}

Info

INFORMACIÓN

Para identificar el MENSAJE DE ERROR remitirse a la pagina de (Listado de Mensajes), donde se describe el listado de mensajes que arroja las API’s REST de la Aplicación SIFCO WEB, con su respectiva Descripción.

Note

NO DEBE OLVIDAR

NO olvide tomar en cuenta para el uso de este Web Service, el Flujo de Trabajo descrito en Web Services de Clientes, dado a que en caso de no seguirlo al pie de la letra puede generar errores inesperados en la ejecución.

Note

RESPETE LOS ENCABEZADOS OBLIGATORIOS para que pueda consumir el WEB SERVICE respectivo.

Code Block
languagejson
Content-Type: application/json
Authorization: OAuth f2a9ec34-cf83-46f5-8862-f78ac03670d1!171380a787a9152688ab61a94d66e0eb77...
GENEXUS-AGENT: SmartDevice Application
Warning

EN CASO DE ERROR HTTP 401 (Not Authenticated)

Por favor validar que esta colocando los Encabezados Adecuadamente, y de persistir el problema dirigirse a la Pagina (Configuración de Seguridad para Obtener Token de Acceso y Consumir de los Web Services), para generar nuevamente su Token de Acceso, y/o verificar problemas con su acceso al API REST.

Live Search
spaceKeyDOC
placeholderBúsqueda en esta Pagina
typepage

Enlaces Relevantes

Artículos Relacionados

Filter by label (Content by label)
showLabelsfalse
max5
showSpacefalse
cqllabel in ( "informacion" , "tecnica" , "api" , "rest" , "web" , "services" , "clientes" , "campos" , "definidos" , "usuarios" , "grupos" , "afinidad" ) and type = "page" and space = "DOC"

Artículos Actualizados Recientemente

Recent updates
typespage
max5
spacesDOC
themeconcise
hideHeadingtrue
Change History