Come questo:
Campaign:
type: object
properties:
id:
type: string
description: "A GUID identifier"
referenceId:
type: string
description: "A consumers identifier they have used to map their own systems logic to this object."
name:
type: string
description: "'Great Campaign 2017' as an example"
Sono preoccupato per il riferimentoId .
Il dominio di sistema è una piattaforma che è integrata con terze parti in molti modi attraverso l'esportazione e l'importazione di dati di vari formati (XML, Excel). È abbastanza maturo per consentire a terze parti di integrarsi con il nostro sistema tramite un'API e la progettazione di questa API è ciò che fa sorgere questa domanda.
Abbiamo un oggetto, una campagna, che ha un ID che può essere utilizzato per identificare e recuperare la risorsa. I consumatori della nostra API possono avere il proprio codice di riferimento a quella che considerano una campagna all'interno del proprio dominio.
Ci sono altri oggetti nel nostro sistema con campi di riferimento di terze parti come questo ed è previsto dai nostri consumatori esistenti. Tuttavia, mi preoccupo che ci pesa sulla mappatura e non sappiamo quale sia questo riferimento (numero, testo, json?) E aggiunge un'altra proprietà confusa all'API per i nuovi consumatori.
È considerata una cattiva pratica o una cattiva progettazione consentire i campi ID di riferimento di terze parti nelle definizioni degli oggetti pubblici per un'API?