ملی پیامک مستندات وب‌سرویس پیامک
ملی پیامک مستندات وب‌سرویس پیامک
ملی پیامک مستندات وب‌سرویس پیامک

حذف الگوی خدماتی

آخرین به‌روزرسانی: 18 آبان 1405

آدرس وب سرویس

متد DeleteBody

این متد برای حذف منطقی الگوی متعلق به حساب کاربری استفاده می‌شود. در این فرایند، وضعیت رکورد به Deleted تغییر می‌کند و الگو از فهرست خارج می‌شود.

  • امکان حذف الگوی متعلق به حساب کاربری، در تمام وضعیت‌های آن وجود دارد.

  • حذف الگو به‌صورت منطقی انجام می‌شود و رکورد و لیست‌ سیاه آن به‌صورت فیزیکی پاک نمی‌شوند.

  • اگر درخواست حذف برای الگویی که قبلاً حذف شده و متعلق به همان حساب است دوباره ارسال شود، عملیات همچنان موفقیت‌آمیز خواهد بود.

پارامتر های ورودی

نام پارامترنوع پارامترتوضیحات
username String اجباری نام کاربری پنل پیامکی شما در سامانه.
password String اجباری مقدار API Key شما در سامانه، در بدنۀ JSON.
bodyId Intاجباری

شناسۀ عددی و مثبت الگوی خدماتی متعلق به حساب کاربری (در بازۀ عدد صحیح ۳۲ بیتی).

مقدار بازگشتی

نام پارامترنوع پارامترتوضیحات
Value String در موفقیت مقدار «1» است؛ تعداد رکوردها نیست.

0: نام کاربری یا APIKey صحیح نیست؛ احراز هویت موفق نیست. (RetStatus: 0 / UserNameAndPasswordFailed)

4-: شناسۀ نامعتبر، ناموجود یا متعلق به حساب دیگر است؛ الگوی حذف‌شده نیز قابل ویرایش نیست. (RetStatus: 35 / InvalidData)

100-: خطای داخلی. (RetStatus: 9 / InternalError)

108-: کنترل امنیتی نرخ درخواست یا مسدودسازی. (RetStatus: 35 / InvalidData)

109-: الزام تنظیم IP مجاز تأمین نشده است. (RetStatus: 35 / InvalidData)

110-: استفاده از API Key الزامی است. (RetStatus: 35 / InvalidData)

111-: IP درخواست مجاز نیست. (RetStatus: 35 / InvalidData)

112-: دسترسی وب‌سرویس حساب فعال نیست. (RetStatus: 35 / InvalidData)

RetStatus Int وضعیت عمومی پاسخ؛ مستقل از Value و BodyStatus:

1: عملیات موفق (Ok).

0: نام کاربری یا APIKey صحیح نیست؛ احراز هویت موفق نیست. (RetStatus: 0).

35: داده یا محدودیت امنیتی نامعتبر(InvalidData).

9: خطای داخلی (InternalError).

StrRetStatus String  نام انگلیسی وضعیت RetStatus را نشان می‌دهد و متن فارسی پیام خطا نیست.
$payload = [
    'username' => "YOUR_USERNAME",
    'password' => "YOUR_API_KEY",
    'bodyId' => 12345,
];
$ch = curl_init('https://rest.payamak-panel.com/api/ShareService/DeleteBody');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ['Content-Type: application/json; charset=utf-8', 'Accept: application/json'],
    CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE | JSON_THROW_ON_ERROR),
]);
$response = curl_exec($ch);
if ($response === false) { throw new RuntimeException(curl_error($ch)); }
curl_close($ch);
print_r(json_decode($response, true, 512, JSON_THROW_ON_ERROR));
درحال‌حاضر این متد از SOAP پشتیبانی نمی‌کند.
const response = await fetch("https://rest.payamak-panel.com/api/ShareService/DeleteBody", {
  method: "POST",
  headers: { "Content-Type": "application/json; charset=utf-8", "Accept": "application/json" },
  body: JSON.stringify({
  "username": "YOUR_USERNAME",
  "password": "YOUR_API_KEY",
  "bodyId": 12345
}),
});
const result = await response.json();
console.log(result);
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

var json = """
{
  "username": "YOUR_USERNAME",
  "password": "YOUR_API_KEY",
  "bodyId": 12345
}
""";
var request = HttpRequest.newBuilder(URI.create("https://rest.payamak-panel.com/api/ShareService/DeleteBody"))
    .header("Content-Type", "application/json; charset=utf-8")
    .header("Accept", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(json))
    .build();
var response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
using System;
using System.Net.Http;
using System.Net.Http.Json;

using var client = new HttpClient();
client.DefaultRequestHeaders.Accept.ParseAdd("application/json");
var payload = new
{
    username = "YOUR_USERNAME",
    password = "YOUR_API_KEY",
    bodyId = 12345
};
using var response = await client.PostAsJsonAsync("https://rest.payamak-panel.com/api/ShareService/DeleteBody", payload);
Console.WriteLine(await response.Content.ReadAsStringAsync());
import requests

payload = {
  "username": "YOUR_USERNAME",
  "password": "YOUR_API_KEY",
  "bodyId": 12345
}
response = requests.post(
    "https://rest.payamak-panel.com/api/ShareService/DeleteBody",
    json=payload,
    headers={"Accept": "application/json"},
    timeout=30,
)
print(response.json())
curl --request POST "https://rest.payamak-panel.com/api/ShareService/DeleteBody" \
  --header "Content-Type: application/json; charset=utf-8" \
  --header "Accept: application/json" \
  --data '{
  "username": "YOUR_USERNAME",
  "password": "YOUR_API_KEY",
  "bodyId": 12345
}'
package main

import (
    "bytes"
    "fmt"
    "io"
    "net/http"
)

func main() {
    payload := []byte(`{
  "username": "YOUR_USERNAME",
  "password": "YOUR_API_KEY",
  "bodyId": 12345
}`)
    request, err := http.NewRequest(http.MethodPost, "https://rest.payamak-panel.com/api/ShareService/DeleteBody", bytes.NewReader(payload))
    if err != nil { panic(err) }
    request.Header.Set("Content-Type", "application/json; charset=utf-8")
    request.Header.Set("Accept", "application/json")
    response, err := http.DefaultClient.Do(request)
    if err != nil { panic(err) }
    defer response.Body.Close()
    body, err := io.ReadAll(response.Body)
    if err != nil { panic(err) }
    fmt.Println(string(body))
}
//نمونۀ پاسخ موفق

{
  "Value": "1",
  "RetStatus": 1,
  "StrRetStatus": "Ok"
}

//نمونۀ خطای اختصاصی متد
{
  "Value": "-4",
  "RetStatus": 35,
  "StrRetStatus": "InvalidData"
}