Method: echo

Vuelve a reproducir el clientMessage que se pasa.

El propósito de este método es probar la conectividad básica entre el integrador de pagos y Google.

Google puede llamar a este método varias veces por minuto con parámetros válidos o no válidos para probar que las restricciones de seguridad se apliquen correctamente. Google también llama a este método ad hoc según la dirección del integrador y también de Google. Google nunca llamará a este método más rápido de una vez cada 10 s y nunca más de 30 veces en un período de 15 minutos.

Estos son algunos ejemplos de pruebas de restricciones de seguridad:

  • Realiza pruebas para asegurarte de que el extremo del integrador de pagos no negocie con conjuntos de algoritmos de cifrado débiles.
  • Realiza pruebas para asegurarte de que el extremo del integrador de pagos solo negocie con TLS 1.2
  • Realiza pruebas para asegurarte de que el extremo del integrador de pagos no sea compatible con HTTP.
  • Realiza pruebas para asegurarte de que el extremo del integrador de pagos exija al menos una clave de firma de PGP conocida.
  • Realiza pruebas para asegurarte de que el extremo del integrador de pagos admita varias firmas de clave de PGP, conocidas y desconocidas, tanto vencidas como activas.
  • Realiza pruebas para asegurarte de que el integrador de pagos solo admita el análisis estricto de JSON.

Si el extremo encuentra un error mientras procesa la solicitud, el cuerpo de la respuesta de este extremo debe ser del tipo ErrorResponse.

A continuación, se muestra una solicitud de ejemplo:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "ZWNobyB0cmFuc2FjdGlvbg",
    "requestTimestamp": "1481899949606"
  },
  "clientMessage": "client message"
}

Esta es una respuesta de ejemplo:


{
  "responseHeader": {
    "responseTimestamp": "1481900013178"
  },
  "clientMessage": "client message",
  "serverMessage": "server message"
}

Solicitud HTTP

POST https://www.integratorhost.example.com/v1/echo

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "clientMessage": string
}
Campos
requestHeader

object (RequestHeader)

OBLIGATORIO: Encabezado común para todas las solicitudes

clientMessage

string

OBLIGATORIO: Es el mensaje que se debe repetir en la respuesta.

Cuerpo de la respuesta

Objeto de respuesta del método echo.

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

Representación JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "clientMessage": string,
  "serverMessage": string
}
Campos
responseHeader

object (ResponseHeader)

OBLIGATORIO: Encabezado común para todas las respuestas

clientMessage

string

OBLIGATORIO: Mensaje recibido en la solicitud.

serverMessage

string

OPCIONAL: Es el mensaje del servidor, independiente de la clientMessage que se repite.

RequestHeader

Es un objeto de encabezado que se define en todas las solicitudes que se envían al servidor.

Representación JSON
{
  "requestId": string,
  "requestTimestamp": string,
  "userLocale": string,
  "protocolVersion": {
    object (Version)
  }
}
Campos
requestId

string

REQUIRED: Es el identificador único de esta solicitud.

Es una cadena que tiene una longitud máxima de 100 caracteres y solo contiene los caracteres "a-z", "A-Z", "0-9", ":", "-" y "_".

requestTimestamp

string (int64 format)

OBLIGATORIO: Es la marca de tiempo de esta solicitud representada en milisegundos desde el ciclo de entrenamiento. El receptor debe verificar que la marca de tiempo sea de ± 60 s de "ahora". Esta marca de tiempo de solicitud no es idempotente en los reintentos.

userLocale
(deprecated)

string

OBSOLETO: Un código de idioma ISO 639-2 Alfa 3 de dos o tres letras, opcionalmente seguido de un guion y un código de país ISO 3166-1 alfa-2, p.ej., "pt", "pt-BR", "fil" o "fil-PH". Úsalo para ayudar a controlar los campos userMessage en la respuesta.

protocolVersion

object (Version)

OBLIGATORIO: Es la versión de esta solicitud.

Versión

Un objeto Version, que es una forma estructurada de la estructura de versión clásica de a.b.c. Se garantiza que las versiones principales de la misma cantidad son compatibles. Ten en cuenta que las revisiones menores y las revisiones pueden cambiar con frecuencia y sin previo aviso. El integrador debe admitir todas las solicitudes de la misma versión principal.

Representación JSON
{
  "major": integer,
  "minor": integer,
  "revision": integer
}
Campos
major

integer

OBLIGATORIO: Es la versión principal. Esto se marca cuando no se garantiza la compatibilidad de las solicitudes de compatibilidad con diferentes versiones.

minor

integer

OBLIGATORIO: Versión secundaria. Esto indica que se corrigieron errores importantes.

revision

integer

OBLIGATORIO: Versión secundaria. Esto implica correcciones de errores menores.