Almacena la configuración de exportación de trazas OTLP a nivel de proyecto. Solo se hace referencia al secreto de autenticación (headers_secret_ref); el valor sin procesar nunca se acepta ni se almacena. Incrementa el contador de generación y marca la configuración como pendiente para su entrega posterior. El ámbito del proyecto se define mediante el parámetro de ruta del ID de ruta y la organización se deriva de dicho proyecto.
Cuerpo
Requerido
Configuración JSON tipificada
-
ContentMode selecciona la censura del contenido del span. Vacío significa metadata_only.
Los valores son
metadata_onlyofull. -
EgressMode selecciona dónde se entregan los tramos. Vacío significa platform_only.
Los valores son
platform_only,platform_and_customer_mirrorocustomer_only. -
Enabled es un puntero para que el controlador pueda distinguir un campo omitido (nil, rechazado) de un falso explícito (una solicitud válida de "deshabilitar exportación").
-
El punto final es el punto final OTLP/HTTP del cliente. Es obligatorio cuando está habilitado. Debe ser https y no debe apuntar a una dirección interna/de bucle invertido (ver Validar).
La longitud máxima es
2048. -
La columna Headers contiene los encabezados de exportación NO SECRETOS que requiere un preset (por ejemplo, un ID de espacio de trabajo). Los valores secretos nunca deben colocarse aquí; utilice HeadersSecretRef.
-
HeadersSecretRef es un puntero al secreto de autenticación único almacenado (normalmente una clave API). Es una referencia, nunca el valor del secreto. Debe estar limitado al proyecto del llamador (ver Validate).
La longitud máxima es
512. -
InsecureSkipVerify desactiva la verificación TLS del punto final del cliente. Un puntero nulo (verify, el valor predeterminado) es distinto de una exclusión explícita; la interfaz de usuario muestra que habilitar esta opción implica una reducción deliberada de la seguridad.
-
El protocolo es el protocolo OTLP de salida. v1 solo admite http/protobuf.
El valor es
http/protobuf. -
Los ResourceAttributes son atributos de recursos OTLP adicionales que se añaden a cada segmento enviado al punto final del cliente (por ejemplo, un identificador de proyecto/modelo requerido por el destino). Las claves que requiere un destino determinado provienen de su configuración predefinida (véase pkg/traceexportconfig/presets); los valores siempre los proporciona el cliente, ya que normalmente nombran un proyecto en el propio destino que esta plataforma no puede consultar.
-
SamplingPolicy selecciona el muestreador de cabecera que se aplica antes de la exportación.
-
SecretHeaderName es el nombre del encabezado con el que se envía el valor del secreto referenciado (por ejemplo, "api_key"), tomado de secret_header_keys del preajuste o introducido por el usuario para un destino personalizado. La plataforma compone la línea de encabezado de salida ": ", por lo que el secreto almacenado siempre es el valor sin formato (nunca una línea de encabezado preformateada). Obligatorio cuando se establece HeadersSecretRef (ver Validar).
La longitud máxima es
128.
Respuestas
-
Versión de API no compatible o con formato incorrecto, operación no disponible en el contrato publicado seleccionado o representación inaceptable (incluidos parámetros de tipo de medio no compatibles o SSE excluidos). Los fallos de autenticación, autorización y límite de velocidad existentes tienen prioridad.
-
OK
-
Invalid config
-
Credenciales faltantes o no válidas
-
La persona que llama no tiene permiso del propietario del proyecto.
-
La configuración supera los 16 KB
curl \
--request PUT 'https://agentengine.mongodb.com/api/v1/projects/{id}/trace-export/config' \
--header "Authorization: $API_KEY" \
--header "Content-Type: application/json" \
--data '{
"content_mode": "metadata_only",
"egress_mode": "platform_only",
"enabled": true,
"endpoint": "string",
"headers": {
"additionalProperty1": "string",
"additionalProperty2": "string"
},
"headers_secret_ref": "string",
"insecure_skip_verify": true,
"protocol": "http/protobuf",
"resource_attributes": {
"additionalProperty1": "string",
"additionalProperty2": "string"
},
"sampling_policy": {
"ratio": 42.0,
"type": "always_on"
},
"secret_header_name": "string"
}'
{
"content_mode": "metadata_only",
"egress_mode": "platform_only",
"enabled": true,
"endpoint": "string",
"headers": {
"additionalProperty1": "string",
"additionalProperty2": "string"
},
"headers_secret_ref": "string",
"insecure_skip_verify": true,
"protocol": "http/protobuf",
"resource_attributes": {
"additionalProperty1": "string",
"additionalProperty2": "string"
},
"sampling_policy": {
"ratio": 42.0,
"type": "always_on"
},
"secret_header_name": "string"
}
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "This operation supports text/event-stream, which the Accept header excludes. Remove unsupported media-type parameters or accept this type with a positive q value.",
"error": 406,
"errorCode": "UNACCEPTABLE_MEDIA_TYPE",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "The requested API version is not supported. Supported versions: 2026-09-20-preview.",
"error": 406,
"errorCode": "UNSUPPORTED_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"generation": 42,
"updated_at": "string"
}
{
"generation": 42,
"updated_at": "string"
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}