{
    "company": {
        "name": "required|max:64",
        "domain": "nullable|max:32|domain",
        "custom_domain": "max:255|url",
        "email": "required|email:rfc,filter|max:64",
        "options": "numeric",
        "plan": "numeric",
        "default_iso_lang": "string|size:2",
        "country_iso": "max:2|string",
        "time_zone_offset": {
            "string": true,
            "regex": "/^[\\+\\-]([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
        },
        "settings": {
            "uid": "string|max:64",
            "slogan": "string|max:80",
            "mail_footer": "string|max:255",
            "mail_from": "email:rfc,filter|max:64",
            "pay_in_store": "boolean",
            "enable_multi_providers": "boolean",
            "enable_invoices": "boolean",
            "enable_phone_login": "boolean",
            "enable_coupons": "boolean",
            "invoice_format": {
                "head": "required_with:invoice_format|string",
                "body": "required_with:invoice_format|string",
                "item": "required_with:invoice_format|string",
                "date_format": "required_with:invoice_format|string",
                "paper": "required_with:invoice_format|string|max:32",
                "orientation": "required_with:invoice_format|string|in:portrait,landscape"
            },
            "terms_of_service": "string",
            "nearby_branches_distance": "integer|min:1000",
            "nearby_providers_distance": "integer|min:1000",
            "provider_collecting_distance": "integer|min:5",
            "provider_arriving_distance": "integer|min:5",
            "tip_threshold": "integer|min:0",
            "min_nearby_branches_count": "integer|min:1",
            "max_nearby_branches_count": "integer|min:1|gte:min_nearby_branches_count",
            "subcategories_count": "integer|min:1",
            "branch_invoice_tax_name": "nullable|string|min:1",
            "branch_invoice_tax_prc": "nullable|numeric|min:0.0|max:1.0",
            "branch_closing_soon_message_delay": "nullable|integer|min:5|max:60",
            "assignable_orders_mask": "integer|min:0",
            "auto_assign_delay_minutes": "integer|min:0",
            "auto_assign_prepared_mode": "boolean",
            "auto_assign_bid_count": "integer|min:0",
            "auto_assign_bid_attempts": "integer|min:0",
            "order_expiration_minutes": "integer|min:0",
            "cancel_on_payment_failure": "boolean",
            "contact_phone": "string|max:32",
            "contact_phone_whatsapp": "string|max:32",
            "disable_reports": "boolean",
            "default_promoted_banner": "image|mimes:jpeg,png|max:8192",
            "disable_balance": "boolean",
            "sms_providers": "array",
            "sms_notifications_enabled": "boolean",
            "sms_expiration_in_minutes": "integer|min:2",
            "sms_cooldown_in_seconds": "integer|min:15",
            "sms_enabled_for_clients_tracking": "boolean",
            "telegram_token": "string",
            "whatsapp_phone_id": "string",
            "whatsapp_messaging_token": "string",
            "checkout_disclaimer": "string",
            "qr_logo": "nullable|string",
            "use_providers_balance_payouts": "nullable|boolean",
            "google_account_json": "nullable|array",
            "bancamiga_settings": {
                "host": "required_with:bancamiga_settings|url|max:255",
                "dni": "required_with:bancamiga_settings|string|regex:/^[J][0-9]{9}$/",
                "password": "required_with:bancamiga_settings|string|min:8",
                "default_token": {
                    "token": "required_with:bancamiga_settings.default_token|string|min:40"
                }
            },
            "optimal_route_settings": {
                "is_enabled": "required_with:optimal_route_settings|bool",
                "step_duration_in_seconds": "integer|min:1",
                "quantizer_exp": "numeric|min:0.01|max:20",
                "delay_umbral_in_seconds": "integer|min:1",
                "weight_in_seconds": "integer|min:1",
                "pickup_weight_in_seconds": "integer|min:1",
                "max_delivery_time_deviation_in_minutes": "integer|min:1",
                "max_wait_in_minutes": "integer|min:1",
                "allow_same_destination_umbral_in_seconds": "integer|min:1",
                "allow_same_destination_umbral_in_meters": "integer|min:1",
                "allow_same_origin_umbral_in_meters": "integer|min:1",
                "optimize_by": "string|in:time,distance"
            },
            "delivery_actions": {
                "enabled": "nullable|boolean",
                "auto_set_in_destination_enabled": "nullable|boolean",
                "auto_set_on_the_way_enabled": "nullable|boolean",
                "auto_set_arrived_enabled": "nullable|boolean",
                "distance_to_auto_set_actions_in_meters": "nullable|integer|min:5|max:2000",
                "min_action_interval_in_seconds": "nullable|integer|min:0|max:1800",
                "idle_speed_in_meters_per_second": "nullable|numeric|min:0|max:5",
                "idle_speed_in_kmh": "nullable|numeric|min:0|max:18"
            },
            "linked_servers": [
                {
                    "host": "required|url",
                    "id": "required|integer|min:1",
                    "alias": "required|string|max:24"
                }
            ],
            "first_purchase_bonus_e2": "integer|min:0",
            "system_expiration_hours": "integer|min:0",
            "disable_payment_emails": "boolean",
            "is_verification_required": "boolean",
            "is_full_verification_required": "boolean",
            "payout_accounts": [
                {
                    "type": "required_with:payout_accounts.*|string|in:national_bank_account,mobile_payment",
                    "document": "required_if:type,national_bank_account|required_if:type,mobile_payment|string|regex:/^[VEJGP].{7,15}$/",
                    "name": "required_if:type,national_bank_account|string",
                    "account": "required_if:type,national_bank_account|string|min:20",
                    "bank_name": "required_if:type,national_bank_account|string|min:3|max:64",
                    "bank_code": "required_if:type,mobile_payment|string|size:4",
                    "phone": "required_if:type,mobile_payment|string|max:32",
                    "email": "nullable|email:rfc,filter",
                    "alias": "nullable|string|max:40"
                }
            ],
            "sockette_keys": "array",
            "service_app_name": "nullable|string",
            "legal_info": "nullable|array",
            "hot_tag_days": "nullable|integer|min:1",
            "hot_tag_sales": "nullable|integer|min:1",
            "service_app_modifiers": [
                {
                    "is_enabled": "boolean",
                    "name": "required|string|max:32",
                    "label": "string|max:32",
                    "description": "string",
                    "layer": "integer|min:0|max:255",
                    "price_min_e2": "integer|min:0",
                    "human_price_min_e2": "numeric|min:0.0",
                    "price_max_e2": "integer",
                    "human_price_max_e2": "numeric",
                    "hour_beg": {
                        "string": true,
                        "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                    },
                    "hour_end": {
                        "string": true,
                        "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                    },
                    "conditions": "array",
                    "payment_methods": [
                        "required|string"
                    ],
                    "payment_currencies": [
                        "required|string"
                    ]
                }
            ],
            "taxes": [
                {
                    "is_enabled": "boolean",
                    "name": "required|string|max:32",
                    "label": "string|max:32",
                    "description": "string",
                    "layer": "integer|min:0|max:255",
                    "price_min_e2": "integer|min:0",
                    "human_price_min_e2": "numeric|min:0.0",
                    "price_max_e2": "integer",
                    "human_price_max_e2": "numeric",
                    "hour_beg": {
                        "string": true,
                        "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                    },
                    "hour_end": {
                        "string": true,
                        "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                    },
                    "conditions": "array",
                    "payment_methods": [
                        "required|string"
                    ],
                    "payment_currencies": [
                        "required|string"
                    ]
                }
            ],
            "sms_default_provider": "string|in:interconectados,plivo,twilio,twilio_whatsapp,roraima_conectium,whatsapp_phone_validation",
            "sms_login_provider": "string|in:interconectados,plivo,twilio,twilio_whatsapp,roraima_conectium,whatsapp_phone_validation",
            "template": "string|in:store,marketplace,deliverer,delivery_marketplace,delivery_client,ecommerce_provider,ecommerce_merchant",
            "facebook_app_id": "string",
            "facebook_secret_token": "string",
            "apple_id": "string",
            "apple_team_id": "string",
            "apple_client_id": "string",
            "apple_private_key": "string",
            "apple_redirect": "string",
            "directions_api": "nullable|string|in:zuppermaps,openstreetmaps",
            "directions_key": "string",
            "directions_url": "nullable|string",
            "auto_provider_invoice_config": {
                "enabled": "required_with:auto_provider_invoice_config|boolean",
                "conciliation_enabled": "boolean",
                "day_sunday": "boolean",
                "day_monday": "boolean",
                "day_tuesday": "boolean",
                "day_wednesday": "boolean",
                "day_thursday": "boolean",
                "day_friday": "boolean",
                "day_saturday": "boolean",
                "min_balance_e2": "integer|min:1",
                "time_at": {
                    "string": true,
                    "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                },
                "conciliate_at": {
                    "string": true,
                    "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                },
                "email_sending_enabled": "boolean",
                "email_list": [
                    "email:rfc,filter"
                ]
            },
            "auto_branch_invoice_config": {
                "enabled": "required_with:auto_branch_invoice_config|boolean",
                "conciliation_enabled": "boolean",
                "day_sunday": "boolean",
                "day_monday": "boolean",
                "day_tuesday": "boolean",
                "day_wednesday": "boolean",
                "day_thursday": "boolean",
                "day_friday": "boolean",
                "day_saturday": "boolean",
                "min_balance_e2": "integer|min:1",
                "time_at": {
                    "string": true,
                    "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                },
                "conciliate_at": {
                    "string": true,
                    "regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
                },
                "email_sending_enabled": "boolean",
                "email_list": [
                    "email:rfc,filter"
                ]
            },
            "unidigital_settings": {
                "host": "required_with:unidigital_settings|url|max:255",
                "username": "required_with:unidigital_settings|email:rfc,filter|max:255",
                "password": "required_with:unidigital_settings|string|min:8"
            },
            "unidigital_config": {
                "enabled": "required_with:unidigital_config|bool",
                "enabled_for_branches": "required_with:unidigital_config|bool",
                "enabled_for_providers": "required_with:unidigital_config|bool",
                "enabled_for_clients": "required_with:unidigital_config|bool",
                "extract_for_branches": "required_with:unidigital_config|string|max:255",
                "extract_for_providers": "required_with:unidigital_config|string|max:255",
                "extract_for_clients": "required_with:unidigital_config|string|max:255"
            },
            "sypago_settings": {
                "access_token": "required_with:sypago_settings|string|max:255",
                "host": "nullable|url|max:255",
                "bank_account": "nullable|string|min:20"
            },
            "event_ranges": {
                "starts_at": "required_with:|date",
                "ends_at": "nullable|date",
                "is_enabled": "nullable|boolean",
                "name": "required_with:|string|max:32",
                "description": "nullable|string|max:160",
                "sub_events": [
                    {
                        "starts_at": "required_with:event_ranges.|date",
                        "ends_at": "nullable|date",
                        "name": "required_with:event_ranges.|string|max:32",
                        "description": "nullable|string|max:160"
                    }
                ]
            }
        },
        "can_providers_pick_deliveries_from_pool": "nullable|boolean",
        "can_providers_confirm_deliveries_from_clients": "nullable|boolean",
        "can_clients_pick_providers_for_deliveries": "nullable|boolean",
        "can_clients_choose_deliveries_after_provider_confirmation": "nullable|boolean",
        "can_providers_confirm_deliveries_from_admins": "nullable|boolean",
        "can_admins_choose_deliveries_after_provider_confirmation": "nullable|boolean",
        "enable_delivery_orders_confirmation_by_admins_before_payment": "nullable|boolean",
        "can_providers_forfeit_from_assigned_deliveries": "nullable|boolean",
        "enable_pickups": "nullable|boolean",
        "disable_deliveries": "nullable|boolean",
        "disable_deliveries_scheduling": "nullable|boolean",
        "enable_bot_for_deliveries": "nullable|boolean",
        "can_providers_pick_services_from_pool": "nullable|boolean",
        "can_providers_confirm_services_from_clients": "nullable|boolean",
        "can_clients_pick_providers_for_services": "nullable|boolean",
        "can_clients_choose_services_after_provider_confirmation": "nullable|boolean",
        "can_providers_confirm_services_from_admins": "nullable|boolean",
        "can_admins_choose_services_after_provider_confirmation": "nullable|boolean",
        "enable_service_orders_confirmation_by_admins_before_payment": "nullable|boolean",
        "can_providers_forfeit_from_assigned_services": "nullable|boolean",
        "enable_services_on_branch_location": "nullable|boolean",
        "disable_services_on_client_location": "nullable|boolean",
        "disable_services_scheduling": "nullable|boolean",
        "enable_bot_for_services": "nullable|boolean",
        "enable_pod_code": "nullable|boolean",
        "enable_pod_pictures": "nullable|boolean",
        "enable_pod_forms": "nullable|boolean",
        "enable_pod_signature": "nullable|boolean",
        "enabled_pods": "nullable|integer|min:0|max:15",
        "enable_bot_for_shoppers": "nullable|boolean"
    },
    "user": {
        "name": "nullable|max:64",
        "email": "nullable|email:rfc,filter",
        "phone": "required"
    },
    "company_id": "nullable|integer"
}