/*
 * Zernio API
 *
 * API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
 *
 * The version of the OpenAPI document: 1.0.1
 * Contact: support@zernio.com
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

/// CreateStandaloneAdRequestBrandIdentity : TikTok only. Synthetic Brand Identity used when the ad attributes to a CUSTOMIZED_USER (instead of a real TT_USER @username). Required on the FIRST CUSTOMIZED_USER ad on a `tiktokads` SocialAccount with no cached identity; omit on subsequent ads (the identity is cached on the account after first creation). Non-TikTok platforms ignore this field.  Alternative: configure once via `PATCH /v1/connect/tiktok-ads`, then create ads without this field.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CreateStandaloneAdRequestBrandIdentity {
    /// Brand name shown above the ad on TikTok.
    #[serde(rename = "displayName")]
    pub display_name: String,
    /// Public URL of a square brand image (≥98×98 px, JPG/PNG). Used as the brand avatar on the ad.
    #[serde(rename = "imageUrl")]
    pub image_url: String,
}

impl CreateStandaloneAdRequestBrandIdentity {
    /// TikTok only. Synthetic Brand Identity used when the ad attributes to a CUSTOMIZED_USER (instead of a real TT_USER @username). Required on the FIRST CUSTOMIZED_USER ad on a `tiktokads` SocialAccount with no cached identity; omit on subsequent ads (the identity is cached on the account after first creation). Non-TikTok platforms ignore this field.  Alternative: configure once via `PATCH /v1/connect/tiktok-ads`, then create ads without this field.
    pub fn new(display_name: String, image_url: String) -> CreateStandaloneAdRequestBrandIdentity {
        CreateStandaloneAdRequestBrandIdentity {
            display_name,
            image_url,
        }
    }
}
