Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Stable API

Nota

La funcionalidad Stable API requiere MongoDB Server 5.0 o posterior.

Solo debe usar la Stable API si todos los servidores de MongoDB a los que se conecta admiten esta funcionalidad.

En esta guía, puede aprender cómo especificar la Stable API al conectarse a una instancia de MongoDB o a un set de réplicas. Puedes usar la funcionalidad Stable API para forzar que el servidor ejecute operaciones con un comportamiento compatible con la versión de API especificada. Una versión de API define el comportamiento esperado de las operaciones que cubre y el formato de las respuestas del servidor. Si cambias a una versión diferente de la API, no se garantiza que las operaciones sean compatibles y no se garantiza que las respuestas del servidor sean similares.

Cuando utilices la funcionalidad Stable API con un driver oficial de MongoDB, podrás actualizar tu driver o servidor sin preocuparte por problemas de retrocompatibilidad de los comandos cubiertos por la Stable API.

Consulta la página de referencia de MongoDB sobre la Stable API para obtener más información, incluida una lista de los comandos que cubre.

Las siguientes secciones describen cómo se puede habilitar la Stable API para el cliente de MongoDB y las opciones que se pueden especificar.

Para habilitar la Stable API, debes especificar una versión de la API en la configuración de tu cliente de MongoDB. Una vez que se instancia una instancia de MongoClient con una versión de API especificada, todos los comandos que se ejecutan con ese cliente utilizan esa versión de la Stable API.

Tip

Si necesitas ejecutar comandos usando más de una versión de la Stable API, inicia un cliente separado con esa versión.

Si necesitas ejecutar comandos que no están cubiertos por la Stable API, asegúrate de que la opción «estricta» esté desactivada. Consulte la sección sobre Opciones de Stable API para obtener más información.

El siguiente ejemplo muestra cómo puedes crear una instancia de MongoClient que establezca la versión de la Stable API y se conecte a un servidor realizando las siguientes operaciones:

  • Construya una instancia ServerApi usando la clase asistente ServerApi.Builder.

  • Especifica una Stable API usando una constante de la clase ServerApiVersion.

  • Construir una instancia de MongoClientSettings usando la clase MongoClientSettings.Builder.

  • Especifique un servidor al que conectarse usando una instancia de ServerAddress.

  • Instancia un MongoClient usando el método MongoClient.create() y pasa tu instancia MongoClientSettings como parámetro.

val serverApi = ServerApi.builder()
.version(ServerApiVersion.V1)
.build()
// Replace the uri string placeholder with your MongoDB deployment's connection string
val uri = "<connection string>"
val settings = MongoClientSettings.builder()
.applyConnectionString(ConnectionString(uri))
.serverApi(serverApi)
.build()
val client = MongoClient.create(settings)

Advertencia

Si especificas una versión de la API y te conectas a un servidor MongoDB que no admite la Stable API, tu aplicación podría generar una excepción cuando ejecute un comando en tu servidor MongoDB. Si utiliza un MongoClient que especifica la versión de la API para consultar un servidor que no la admite, su query podría fallar con un mensaje de excepción que incluya el siguiente texto:

'Unrecognized field 'apiVersion' on server...

Para obtener más información sobre los métodos y clases mencionados en esta sección, consulta la siguiente documentación de la API:

Puedes habilitar o deshabilitar el comportamiento opcional relacionado con la Stable API como se describe en la siguiente tabla.

Nombre de la opción
Descripción

Estricto

opcional. Cuando se establece, si se llama a un comando que no forma parte de la versión API declarada, el driver genera una excepción.

Por defecto: false

Errores de obsolescencia

opcional. Cuando se configura, si llamas a un comando que está obsoleto en la versión declarada de la API, el controlador genera una excepción.

Por defecto: false

El siguiente ejemplo muestra cómo se pueden establecer las dos opciones en una instancia de ServerApi encadenando métodos en el ServerApi.Builder:

val serverApi = ServerApi.builder()
.version(ServerApiVersion.V1)
.strict(true)
.deprecationErrors(true)
.build()

Para obtener más información sobre las opciones de esta sección, consulta la siguiente documentación de la API: