Entidades acopladas a API externa

Estoy diseñando un software que requiere una API de terceros (como Github). Esta API contiene:

  • Repositorios

Por mi parte, tengo las siguientes entidades:

  • Repositorios (representan los datos del repository API externo)
  • Cuentas (representan la cnetworkingencial API externa)
  • Usuarios (representan datos de clientes)

Hay una relación oneToMany entre usuarios y counts
Hay una relación oneToMany entre counts y repositorys

La idea aquí es administrar repositorys de usuarios desde mi software.

¿Cómo modelarías estas entidades de dominio que están acopladas en una fuente de datos externa?

  1. Mi primera idea fue crear un module que interactuara con la API y que devuelva datos convenientes a mis interactores. Y simplemente almacene los datos útiles para recuperar los datos externos (como el token oauth y los ID de Repo)

  1. Mi otra idea consiste en copyr datos de la API externa en mi database y usarla localmente.
    Pero los datos externos pueden cambiar, por lo tanto, esto no es consistente.

Intereting Posts