using System; using System.Net.Http; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json; using Newtonsoft.Json.Linq; class ShahkarApi { // این تابع معادل callShahkarApi در PHP است // پارامترهای ورودی: شماره موبایل و کد ملی به صورت رشته public static async Task CallShahkarApi(string mobile, string nationalCode) { string url = "https://shabanic.ir/api/v1/shahkar"; // آدرس API string apiKey = "کلید Api دریافت شده از پنل شبانیک را اینجا قرار دهید"; // کلید API using (HttpClient client = new HttpClient()) { try { // تنظیم هدرهای درخواست client.DefaultRequestHeaders.Add("SHABANIC-API-KEY", apiKey); // ساخت شیء JSON برای ارسال var payload = new { mobile = mobile, national_code = nationalCode }; // تبدیل داده‌ها به فرمت JSON string jsonPayload = JsonConvert.SerializeObject(payload); // ارسال درخواست POST به API HttpContent content = new StringContent(jsonPayload, Encoding.UTF8, "application/json"); HttpResponseMessage response = await client.PostAsync(url, content); // دریافت پاسخ از API string responseBody = await response.Content.ReadAsStringAsync(); // بررسی وضعیت پاسخ if (response.IsSuccessStatusCode) { // تبدیل پاسخ به شیء JSON return JObject.Parse(responseBody); } else { // در صورت بروز خطا، اطلاعات خطا را باز می‌گرداند JObject errorResponse = new JObject { { "error", true }, { "status", response.StatusCode.ToString() }, { "message", responseBody } }; return errorResponse; } } catch (Exception ex) { // مدیریت خطا JObject errorResponse = new JObject { { "error", true }, { "status", "500" }, { "message", ex.Message } }; return errorResponse; } } } // مثال استفاده از تابع بالا public static async Task Main(string[] args) { // شماره موبایل و کد ملی مورد نظر را وارد کنید JObject result = await CallShahkarApi("09156012678", "0829940049"); // نمایش نتیجه در کنسول Console.WriteLine(result.ToString()); } }