# Copyright (c) Meta Platforms, Inc. and affiliates.
# All rights reserved.

# This source code is licensed under the license found in the
# LICENSE file in the root directory of this source tree.

# FB:AUTOGEN

module FacebookAds
  # This class is auto-generated.

  # For any issues or feature requests related to this class, please let us know
  # on github and we'll fix in our codegen framework. We'll not be able to accept
  # pull request for this class.

  class AdAccountTargetingUnified < AdObject
    LIMIT_TYPE = [
      "behaviors",
      "college_years",
      "education_majors",
      "education_schools",
      "education_statuses",
      "ethnic_affinity",
      "family_statuses",
      "generation",
      "home_ownership",
      "home_type",
      "home_value",
      "household_composition",
      "income",
      "industries",
      "interested_in",
      "interests",
      "life_events",
      "location_categories",
      "moms",
      "net_worth",
      "office_type",
      "politics",
      "relationship_statuses",
      "user_adclusters",
      "work_employers",
      "work_positions",
    ]

    REGULATED_CATEGORIES = [
      "CREDIT",
      "EMPLOYMENT",
      "FINANCIAL_PRODUCTS_SERVICES",
      "HOUSING",
      "ISSUES_ELECTIONS_POLITICS",
      "NONE",
      "ONLINE_GAMBLING_AND_GAMING",
    ]

    REGULATED_COUNTRIES = [
      "AC",
      "AD",
      "AE",
      "AF",
      "AG",
      "AI",
      "AL",
      "AM",
      "AN",
      "AO",
      "AQ",
      "AR",
      "AS",
      "AT",
      "AU",
      "AW",
      "AX",
      "AZ",
      "BA",
      "BB",
      "BD",
      "BE",
      "BF",
      "BG",
      "BH",
      "BI",
      "BJ",
      "BL",
      "BM",
      "BN",
      "BO",
      "BQ",
      "BR",
      "BS",
      "BT",
      "BV",
      "BW",
      "BY",
      "BZ",
      "CA",
      "CC",
      "CD",
      "CF",
      "CG",
      "CH",
      "CI",
      "CK",
      "CL",
      "CM",
      "CN",
      "CO",
      "CR",
      "CU",
      "CV",
      "CW",
      "CX",
      "CY",
      "CZ",
      "DE",
      "DJ",
      "DK",
      "DM",
      "DO",
      "DZ",
      "EC",
      "EE",
      "EG",
      "EH",
      "ER",
      "ES",
      "ET",
      "FI",
      "FJ",
      "FK",
      "FM",
      "FO",
      "FR",
      "GA",
      "GB",
      "GD",
      "GE",
      "GF",
      "GG",
      "GH",
      "GI",
      "GL",
      "GM",
      "GN",
      "GP",
      "GQ",
      "GR",
      "GS",
      "GT",
      "GU",
      "GW",
      "GY",
      "HK",
      "HM",
      "HN",
      "HR",
      "HT",
      "HU",
      "ID",
      "IE",
      "IL",
      "IM",
      "IN",
      "IO",
      "IQ",
      "IR",
      "IS",
      "IT",
      "JE",
      "JM",
      "JO",
      "JP",
      "KE",
      "KG",
      "KH",
      "KI",
      "KM",
      "KN",
      "KP",
      "KR",
      "KW",
      "KY",
      "KZ",
      "LA",
      "LB",
      "LC",
      "LI",
      "LK",
      "LR",
      "LS",
      "LT",
      "LU",
      "LV",
      "LY",
      "MA",
      "MC",
      "MD",
      "ME",
      "MF",
      "MG",
      "MH",
      "MK",
      "ML",
      "MM",
      "MN",
      "MO",
      "MP",
      "MQ",
      "MR",
      "MS",
      "MT",
      "MU",
      "MV",
      "MW",
      "MX",
      "MY",
      "MZ",
      "NA",
      "NC",
      "NE",
      "NF",
      "NG",
      "NI",
      "NL",
      "NO",
      "NP",
      "NR",
      "NU",
      "NZ",
      "OM",
      "PA",
      "PE",
      "PF",
      "PG",
      "PH",
      "PK",
      "PL",
      "PM",
      "PN",
      "PR",
      "PS",
      "PT",
      "PW",
      "PY",
      "QA",
      "RE",
      "RO",
      "RS",
      "RU",
      "RW",
      "SA",
      "SB",
      "SC",
      "SD",
      "SE",
      "SG",
      "SH",
      "SI",
      "SJ",
      "SK",
      "SL",
      "SM",
      "SN",
      "SO",
      "SR",
      "SS",
      "ST",
      "SV",
      "SX",
      "SY",
      "SZ",
      "TC",
      "TD",
      "TF",
      "TG",
      "TH",
      "TJ",
      "TK",
      "TL",
      "TM",
      "TN",
      "TO",
      "TR",
      "TT",
      "TV",
      "TW",
      "TZ",
      "UA",
      "UG",
      "UM",
      "US",
      "UY",
      "UZ",
      "VA",
      "VC",
      "VE",
      "VG",
      "VI",
      "VN",
      "VU",
      "WF",
      "WS",
      "XK",
      "YE",
      "YT",
      "ZA",
      "ZM",
      "ZW",
    ]

    WHITELISTED_TYPES = [
      "adgroup_id",
      "age_max",
      "age_min",
      "age_range",
      "alternate_auto_targeting_option",
      "app_install_state",
      "audience_network_positions",
      "behaviors",
      "brand_safety_content_filter_levels",
      "brand_safety_content_severity_levels",
      "cafe_ca_contraction_targeting_signal",
      "cafe_ca_expansion_targeting_signal",
      "catalog_based_targeting",
      "cities",
      "city_keys",
      "college_years",
      "conjunctive_user_adclusters",
      "connections",
      "contextual_targeting_categories",
      "countries",
      "country",
      "country_groups",
      "custom_audiences",
      "device_platforms",
      "direct_install_devices",
      "dt_consolidation_state",
      "dynamic_audience_ids",
      "education_majors",
      "education_schools",
      "education_statuses",
      "effective_audience_network_positions",
      "effective_device_platforms",
      "effective_facebook_positions",
      "effective_instagram_positions",
      "effective_messenger_positions",
      "effective_oculus_positions",
      "effective_publisher_platforms",
      "effective_threads_positions",
      "effective_whatsapp_positions",
      "engagement_specs",
      "ethnic_affinity",
      "exclude_previous_days",
      "exclude_reached_since",
      "excluded_brand_safety_content_types",
      "excluded_connections",
      "excluded_custom_audiences",
      "excluded_dynamic_audience_ids",
      "excluded_engagement_specs",
      "excluded_geo_locations",
      "excluded_mobile_device_model",
      "excluded_product_audience_specs",
      "excluded_publisher_categories",
      "excluded_publisher_list_ids",
      "excluded_user_adclusters",
      "excluded_user_device",
      "exclusions",
      "expanded_implicit_custom_audiences",
      "facebook_positions",
      "family_statuses",
      "fb_deal_id",
      "flexible_spec",
      "follow_profiles",
      "follow_profiles_negative",
      "format",
      "friends_of_connections",
      "gatekeepers",
      "genders",
      "generation",
      "geo_locations",
      "home_ownership",
      "home_type",
      "home_value",
      "household_composition",
      "household_income",
      "id",
      "income",
      "industries",
      "instagram_hashtags",
      "instagram_positions",
      "install_state_application",
      "instream_video_skippable_excluded",
      "instream_video_sponsorship_placements",
      "interest_defaults_source",
      "interested_in",
      "interests",
      "is_instagram_destination_ad",
      "is_whatsapp_destination_ad",
      "keywords",
      "life_events",
      "locales",
      "location_categories",
      "location_cluster_ids",
      "location_expansion",
      "marketing_message_channels",
      "marketplace_product_categories",
      "messenger_positions",
      "mobile_device_model",
      "moms",
      "net_worth",
      "oculus_positions",
      "office_type",
      "page_types",
      "place_page_set_ids",
      "political_views",
      "politics",
      "product_audience_specs",
      "prospecting_audience",
      "publisher_platforms",
      "radius",
      "region_keys",
      "regions",
      "relationship_statuses",
      "rtb_flag",
      "site_category",
      "subscriber_universe",
      "tafe_ca_mitigation_strategy",
      "targeting_automation",
      "targeting_optimization",
      "targeting_relaxation_types",
      "threads_positions",
      "timezones",
      "topic",
      "trending",
      "user_adclusters",
      "user_age_unknown",
      "user_device",
      "user_event",
      "user_os",
      "user_page_threads",
      "user_page_threads_excluded",
      "whatsapp_positions",
      "wireless_carrier",
      "work_employers",
      "work_positions",
      "zips",
    ]

    APP_STORE = [
      "amazon_app_store",
      "apk_mirror",
      "apk_monk",
      "apk_pure",
      "aptoide_a1_store",
      "bemobi_mobile_store",
      "digital_turbine_store",
      "does_not_exist",
      "fb_android_store",
      "fb_canvas",
      "fb_gameroom",
      "galaxy_store",
      "google_play",
      "instant_game",
      "itunes",
      "itunes_ipad",
      "neon_android_store",
      "none",
      "oculus_app_store",
      "oppo",
      "roku_channel_store",
      "uptodown",
      "vivo",
      "windows_10_store",
      "windows_store",
      "xiaomi",
    ]

    OBJECTIVE = [
      "APP_INSTALLS",
      "BRAND_AWARENESS",
      "CONVERSIONS",
      "EVENT_RESPONSES",
      "LEAD_GENERATION",
      "LINK_CLICKS",
      "LOCAL_AWARENESS",
      "MESSAGES",
      "OFFER_CLAIMS",
      "OUTCOME_APP_PROMOTION",
      "OUTCOME_AWARENESS",
      "OUTCOME_ENGAGEMENT",
      "OUTCOME_LEADS",
      "OUTCOME_SALES",
      "OUTCOME_TRAFFIC",
      "PAGE_LIKES",
      "POST_ENGAGEMENT",
      "PRODUCT_CATALOG_SALES",
      "REACH",
      "STORE_VISITS",
      "VIDEO_VIEWS",
    ]

    MODE = [
      "best_performing",
      "recently_used",
      "related",
      "suggestions",
    ]


    field :audience_size_lower_bound, 'int'
    field :audience_size_upper_bound, 'int'
    field :conversion_lift, 'double'
    field :description, 'string'
    field :id, 'string'
    field :img, 'string'
    field :info, 'string'
    field :info_title, 'string'
    field :is_recommendation, 'bool'
    field :key, 'string'
    field :link, 'string'
    field :name, 'string'
    field :parent, 'string'
    field :partner, 'string'
    field :path, { list: 'string' }
    field :performance_rating, 'int'
    field :raw_name, 'string'
    field :recommendation_model, 'string'
    field :search_interest_id, 'string'
    field :source, 'string'
    field :spend, 'double'
    field :type, 'string'
    field :valid, 'bool'
    has_no_get
    has_no_post
    has_no_delete

  end
end
