Versions Compared

Key

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

Web Services para Registrar o Modificar Grupos de Afinidad en el 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 Grupos de Afinidad 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: "TClGruAfinidad" externalDocs: description: "Manual SIFCO" url: "https://sifco.atlassian.net/wiki/x/loDe" produces: - application/json paths: /TClGruAfinidad/{GrAfCodigo}: get: tags: - TClGruAfinidad operationId: "GetTClGruAfinidad" summary: "Consultar los los Grupos de Afinidad Registrados en el Sistema" parameters: - in: header name: Content-Type type: "string" required: true default: application/json

DESCRIPCIÓN.

Este Web Service, permite Consultar los Grupos de Afinidad en la Aplicación SIFCO WEB, el mismo permite agrupar los usuarios por Promotor y Ubicación Geográfica, siendo relevante para ello consumir los Web Service, de Web Services de Consulta de Categorías Generales.

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"  
    url: "http://www.apache.org/licenses/LICENSE-2.0.html"
host: "<SERVER>"
schemes:
  - https
  - http
basePath: /<APPDIR>/rest
tags:
- name: "TClGruAfinidad"
  externalDocs:
    description: "Manual SIFCO"
    url: "https://sifco.atlassian.net/wiki/x/loDe"
produces:
  - application/json
paths:
  /TClGruAfinidad/{GrAfCodigo}:
    get:
      tags:
        - TClGruAfinidad
      operationId: "GetTClGruAfinidad"
      summary: "Consultar los los Grupos de Afinidad Registrados en el Sistema"
      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: "GrAfCodigo"header
          inname: "path"GENEXUS-AGENT
          descriptiontype: "string"Código
del Grupo de Afinidad"           required: true
          typedefault: "integer"SmartDevice Application
        - formatname: "int64GrAfCodigo"
          in: "path"
 responses:         200description: "Código del Grupo de Afinidad"
     description     required: "Successful operation"true
          schematype: "integer"
           $refformat: "#/definitions/TClGruAfinidadint64"
      
 400:     responses:
        200:
          description: "BadSuccessful requestoperation"
          schema:
            $ref: "#/definitions/GxJsonErrorTClGruAfinidad"
        401400:
          description: "NotBad Authenticatedrequest"
          schema:
            $ref: "#/definitions/GxJsonError"
        404401:
          description: "Data with the specified key could not be foundNot Authenticated"
          schema:
            $ref: "#/definitions/GxJsonError"
        500404:
          description: "InternalData serverwith error"the specified key could not be found"
    schema:      schema:
            $ref: "#/definitions/GxJsonError"
     post:   500:
   tags:       description: "Internal -server TClGruAfinidaderror"
      operationId: "InsertTClGruAfinidad"   schema:
   summary: "Insertar los los Grupos de Afinidad Registrados en el Sistema$ref: "#/definitions/GxJsonError"

security:
  -  parametersOAuth2: []
    ApiKeyAuth1: []
securityDefinitions:
- in OAuth2:
header    type: oauth2
    flow: password
    tokenUrl: name: Content-Typehttps://test.sifco.org/DemoCoopGT/oauth/access_token
    scopes:
      typeExecute: "string"Permite el método tipo GET
      requiredInsert: truePermite el método tipo POST
      defaultUpdate: application/jsonPermite el método tipo PUT
    -  inDelete: headerPermite el método tipo DELETE
      nameFullControl: Permite Authorizationel manejo de los Cuatro Métodos GET, POST, PUT,DELETE, sobre el type: "string"Web Service
  ApiKeyAuth1:
    type: apiKey
 required: true  in: header
    name: granttype

defaultdefinitions:
OAuth
<Access Token> TClGruAfinidad:
    properties:
  - in: header  GrAfCodigo:
        namedescription: GENEXUS-AGENT
 Código del Grupo de Afinidad
        type: "stringinteger"
        format: "int64"

  required: true   GrPrmCod:
        defaultdescription: SmartDeviceCódigo Applicationde Promotor
       - nametype: "GrAfCodigostring"

      GrPrmNombre:
  in: "path"     description: Nombre de promotor
  description: "Código del Grupo de Afinidad" type: "string"

       requiredGrAfDescripcion:
true        description: Descripción del type: "integer"Grupo Afinidad
          formattype: "int64string"

       - nameGrAfCiclo:
"TClGruAfinidad"           indescription: "body"Ciclo de Grupo
        descriptiontype: "integer"SDT
of TClGruAfinidad"       format: "int64"

   required: false  GrAfEstado:
        schemadescription: Estado de Grupo
         $reftype: "#/definitions/TClGruAfinidadstring"

      responsesGrAfPaiCod:
        200:
 description: Código de País de Grupo
        descriptiontype: "Successful operationinteger"
          schemaformat: "int64"

      GrAfPaiNom:
   $ref: "#/definitions/TClGruAfinidad"    description: Nombre de País de 201:Grupo
          descriptiontype: "Createdstring"

      GrAfRegCod:
  schema:      description: Código de Región de Grupo
 $ref: "#/definitions/TClGruAfinidad"       type: "integer"
  400:      format: "int64"

  description: "Bad request"  GrAfRegDes:
        schemadescription: Descripción Región de Grupo
        $reftype: "#/definitions/GxJsonErrorstring"

       401GrAfDepCod:
 
        description: "NotCódigo Authenticated"Departamento de Grupo
        schematype: "integer"
        format:   $ref: "#/definitions/GxJsonError""int64"

      GrAfDepDes:
        description: Descripción 404:Departamento de Grupo
        descriptiontype: "string"Data
with
the specified key could not be found"GrAfMunCod:
          schemadescription: Código Municipio de Grupo
        $reftype: "#/definitions/GxJsonErrorinteger"
        500format: "int64"

      GrAfMunDes:
  description: "Internal server error"           schemadescription: Descripción Municipio de Grupo
        $reftype: "#/definitions/GxJsonErrorstring"

    put:  GrAfGeolocalizacion:
    tags:    description: Geolocalización
   - TClGruAfinidad       operationIdtype: "UpdateTClGruAfinidadstring"

      summaryGrAfSucCodigo:
"Actualizar los los Grupos de Afinidad Registrados en eldescription: Sistema"Código de Sucursal
    parameters:    type: "integer"
    - in: header  format: "int32"

      namegx_md5_hash:
Content-Type        description: gx_md5_hash is type: "string"
          required: true
          default: application/json
  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.
     - in: header type: "string"


      namerequired:
Authorization      - GrAfCodigo

  typeGxJsonError:
"string"    properties:
      requirederror:
true        $ref: "#/definitions/GxJsonError.error"

  defaultGxJsonError.error:
OAuth <Access Token>  properties:
      - incode:
header        description: Código de name: GENEXUS-AGENT
Error
          type: "string"

         requiredmessage:
true           defaultdescription: SmartDeviceMensaje Applicationde Error
       - nametype: "GrAfCodigostring"


        inx-gx-level: "path"
          description: "Código del Grupo de Afinidad"
          required: true
          type: "integer"
          format: "int64"
        - name: "TClGruAfinidad"
          in: "body"
          description: "SDT of TClGruAfinidad"
          required: true
          schema:
            $ref: "#/definitions/TClGruAfinidad"
      
      responses:
        200:
          description: "Successful operation"
          schema:
            $ref: "#/definitions/TClGruAfinidad"
        400:
          description: "Bad request"
          schema:
            $ref: "#/definitions/GxJsonError"
        401:
          description: "Not Authenticated"
          schema:
            $ref: "#/definitions/GxJsonError"
        404:
          description: "Not found"
          schema:
            $ref: "#/definitions/GxJsonError"
        409:
          description: "TClGruAfinidad was changed"
        500:
          description: "Internal server error"
          schema:
            $ref: "#/definitions/GxJsonError"

    delete:
      tags:
        - TClGruAfinidad
      operationId: "DeleteTClGruAfinidad"
      summary: "Eliminar los los Grupos de Afinidad Registrados en el Sistema"
      parameters:
        - in: header
          name: Content-Type
          type: "string"
          required: true
          default: application/json
        - in: header
          name: Authorization
          type: "string"
          required: true
          default: OAuth <Access Token>
        - in: header
          name: GENEXUS-AGENT
          type: "string"
          required: true
          default: SmartDevice Application
        - name: "GrAfCodigo"
          in: "path"
          description: "Código del Grupo de Afinidad"
          required: true
          type: "integer"
          format: "int64"

      responses:
        200:
          description: "Successful operation"
          schema:
            $ref: "#/definitions/TClGruAfinidad"
        204:
          description: "Successful operation"
          schema:
            $ref: "#/definitions/TClGruAfinidad"
        400:
          description: "Bad request"
          schema:
            $ref: "#/definitions/GxJsonError"
        401:
          description: "Not Authenticated"
          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 método tipo GET
      Insert: Permite el método tipo POST
      Update: Permite el método tipo PUT
      Delete: Permite el método tipo DELETE
      FullControl: Permite el manejo de los Cuatro Métodos GET, POST, PUT,DELETE, sobre el Web Service
  ApiKeyAuth1:
    type: apiKey
    in: header
    name: granttype

definitions:

  TClGruAfinidad:
    properties:
      GrAfCodigo:
        description: Código del Grupo de Afinidad
        type: "integer"
        format: "int64"

      GrPrmCod:
        description: Codigo de Promotor
        type: "string"

      GrPrmNombre:
        description: Nombre de promotor
        type: "string"

      GrAfDescripcion:
        description: Descripción del Grupo Afinidad
        type: "string"

      GrAfCiclo:
        description: Ciclo de Grupo
        type: "integer"
        format: "int64"

      GrAfEstado:
        description: Estado de Grupo
        type: "string"

      GrAfPaiCod:
        description: Codigo de País de Grupo
        type: "integer"
        format: "int64"

      GrAfPaiNom:
        description: Nombre de País de Grupo
        type: "string"

      GrAfRegCod:
        description: Codigo de Region de Grupo
        type: "integer"
        format: "int64"

      GrAfRegDes:
        description: Descripción Region de Grupo
        type: "string"

      GrAfDepCod:
        description: Codigo Departamento de Grupo
        type: "integer"
        format: "int64"

      GrAfDepDes:
        description: Descripción Departamento de Grupo
        type: "string"

      GrAfMunCod:
        description: Codigo Municipio de Grupo
        type: "integer"
        format: "int64"

      GrAfMunDes:
        description: Descripción Municipio de Grupo
        type: "string"

      GrAfGeolocalizacion:
        description: Geolocalización
        type: "string"

      GrAfSucCodigo:
        description: Codigo de Sucursal
        type: "integer"
        format: "int32"

      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"


    required:
      - GrAfCodigo

  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"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

TApTipIdentificacion

GrPrmCod

WSApUsuariosSistemaLista

GrAfPaiCod

WSApPaisLista

GrAfRegCod

WSApDepartamentoLista

GrAfDepCod

WSApMunicipioLista

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 GET

Este método para este Web Service en especifico permite consultar los Grupos de Afinidad en la Aplicación SIFCO WEB.

El siguiente ejemplo consultar un Grupo de Afinidad en la Aplicación SIFCO WEB.

Tipo de Mensaje HTTP

Ejemplo

REQUEST

URL:

Code Block
languagehtml
https://test.sifco.org/democoopgt/rest/TClGruAfinidad/1

HEADERS

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

201 (Created)

(Registro Creado con Éxito)

Code Block
languagejson
{
  "GrAfCodigo": 1,
  "GrPrmCod": "admin",
  "GrPrmNombre": "Administrator User",
  "GrAfDescripcion": "GRUPO ZONA 1",
  "GrAfCiclo": 5,
  "GrAfEstado": "A",
  "GrAfPaiCod": 320,
  "GrAfPaiNom": "GUATEMALA",
  "GrAfRegCod": 7,
  "GrAfRegDes": "Quiché",
  "GrAfDepCod": 1,
  "GrAfDepDes": "Santa Cruz el Quiche",
  "GrAfMunCod": 0,
  "GrAfMunDes": "",
  "GrAfGeolocalizacion": "",
  "GrAfSucCodigo": 1,
  "gx_md5_hash": "81436744B495A71FBC05C5FC315B3D1C"
}

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 que este Web Service, NO REQUIERE seguir algún Flujo de Trabajo especifico por ende se puede utilizar de forma independiente al Flujo de Trabajo descrito en el Web Services de Clientes.

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

Artículos Relacionados

Artículos Relacionados

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

Artículos Actualizados Recientemente

Recent updates
typespage
max5
spacesDOC
themeconcise
hideHeadingtrue
Change History