v1, y sólo cambia de forma compatible. Esto es lo
que podés dar por sentado, y lo que tu cliente tiene que tolerar.
Lo que no cambia dentro de v1
- Los paths y los métodos de las cinco operaciones.
- Los campos requeridos de cada request y de cada respuesta: no se quitan ni cambian de tipo.
- Los seis momentos (
surface) y los siete tipos de señal. - La forma común de los errores:
type,title,status,detail,code,request_id, con las extensiones al nivel raíz. - Los prefijos de los ids.
Lo que puede cambiar sin aviso
El SDK ya lo hace: los tipos dejan pasar campos desconocidos,
CrossUpApiError guarda en extensions lo que no conoce, y reason_codes es
string[].
Lo incompatible, y cómo se avisa
Quitar un campo, cambiar un tipo, un path o el significado de un valor. Nada de eso entra env1. Si hace falta, sale como v2 en otro path, v1 sigue viva,
y el cambio se anuncia en Cambios antes de salir.
Qué versión del contrato estás mirando
Esta referencia se genera del contrato OpenAPI 3.1, y cada cambio queda en Cambios con la fecha y la operación que tocó.Errores
Los once tipos, con su forma exacta.
Cambios
El historial del contrato y de los paquetes.