¿Puede un cliente de seguimiento GraphQL de Windward ejecutarse en Dockflow y qué hay que cambiar?

Mi cliente envía GraphQL a la API de seguimiento oceánico de Windward. ¿Pueden mantenerse las consultas?

Sí, las consultas y las mutaciones pueden mantenerse. La URL y la credencial cambian, y esas dos son diseño propio de Dockflow, porque Windward no las publica:

  1. Envía a https://api.dockflow.com/compat/windward/graphql
  2. Envía una clave de API de Dockflow en x-api-key, o como token Bearer. Si tu cliente llama a publicAPIToken, pon la clave en clientSecret.

El primer paso a esta superficie se realiza junto con Dockflow, a modo de validación, así que contacta con soporte para planificarlo.

Un caso práctico, con una clave ficticia:

POST /compat/windward/graphql
x-api-key: prod_acme_FAKE-TOKEN

{"query":"mutation($s:[TrackedShipmentInput!]!){upsertTrackedShipments(shipments:$s){id}}",
 "variables":{"s":[{"bol":"BL-7741","metadata":{"jobNumber":"PO-5521"}}]}}

La respuesta contiene el id:

{"data":{"upsertTrackedShipments":[{"id":"000000000000000000012345"}]}}

Los ids emitidos por Windward no resuelven, así que haz upsert de cada envío una sola vez. La lista solo filtra por id y número de contenedor. Los argumentos sort y orderBy se aceptan y se ignoran. El cribado de buques y empresas no está cubierto. Cada entrega de webhook incluye una cabecera X-Dockflow-Signature.

Asignación completa de campos y la comprobación de la firma: