package com.smyhub.infogenie.infogeniebackendjava.dto.request;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

/**
 * Request body for PUT /api/admin/site/ai-runtime.
 * Matches Go {@code putAIRuntimeBody} and the admin UI ({@code snake_case} JSON).
 * If api_key is blank or masked with "****", the existing key is preserved.
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class AdminAIRuntimeRequest {

    @JsonProperty("api_base")
    private String apiBase;

    @JsonProperty("api_key")
    private String apiKey;

    @JsonProperty("default_model")
    private String defaultModel;

    @JsonProperty("default_provider")
    private String defaultProvider;
}
