当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


PHP WHMCS CreateOrUpdateTLD用法及代码示例

创建或更新 TLD 扩展。如果存在 TLD,则将更新现有记录。如果没有,将创建一个新的 TLD。允许配置 TLD 相关的销售参数、定价、宽限期和显示顺序。可以以任何有效货币提供定价,并将自动转换为 WHMCS 安装中的所有有效货币。

请求参数

参数 类型 说明 必需的
action string “CreateOrUpdateTLD” Required
extension string 添加或更新的扩展名,例如:.com、.net 等…… Required
id_protection bool 为扩展程序提供 ID 保护 Optional
dns_management bool 为扩展提供 DNS 管理 Optional
email_forwarding bool 为扩展程序提供电子邮件转发 Optional
epp_required bool 域名转移是否需要 EPP Optional
auto_registrar string 扩展程序应在付款时自动注册的活跃注册商 Optional
group string 指定组标签。 “HOT”、“NEW”或“SALE”之一。留空为无。 Optional
currency_code string 定价所用的货币代码。在定义定价、宽限费或赎回费时需要。价格将转换为所有活跃货币。货币必须存在于目标 WHMCS 安装中,并使用汇率进行配置。 Optional
grace_period_days int 宽限期的天数 Optional
grace_period_fee float 延期的宽限期费用。 -1 将禁用宽限期 Optional
redemption_period_days int 赎回天数 Optional
redemption_period_fee float 延期的赎回期费用。 -1 将禁用赎回期 Optional
register array 一系列注册定价。有关格式,请参见下面的示例。 Optional
renew array 一系列续订定价。有关格式,请参见下面的示例。任何延期的最长续订期为 9 年。 Optional
transfer array 一系列转让定价。有关格式,请参见下面的示例。只能定义最短注册周期的传输。 Optional
display_after string 可用于修改 TLD 显示顺序。指定此 TLD 应遵循的现有 TLD。 Optional

响应参数

参数 类型 说明
result string 操作结果:成功或错误
extension string 已创建或更新的扩展
id int 数据库中扩展程序的唯一 ID。

示例请求 (CURL)

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.example.com/includes/api.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
    http_build_query(
        array(
            'action' => 'CreateOrUpdateTLD',
            // See https://developers.whmcs.com/api/authentication
            'username' => 'IDENTIFIER_OR_ADMIN_USERNAME',
            'password' => 'SECRET_OR_HASHED_PASSWORD',
            'extension' => '.com',
            'id_protection' => true,
            'dns_management' => true,
            'email_forwarding' => true,
            'epp_required' => true,
            'auto_registrar' => 'enom',
            'currency_code' => 'USD',
            'grace_period_days' => '0',
            'grace_period_fee' => '-1',
            'redemption_period_fee' => '75.00',
            'register[1]' => '10',
            'register[2]' => '20',
            'register[3]' => '30',
            'register[4]' => '40',
            'register[5]' => '50',
            'register[6]' => '60',
            'register[7]' => '70',
            'register[8]' => '80',
            'register[9]' => '90',
            'register[10]' => '100',
            'renew[1]' => '10',
            'renew[2]' => '20',
            'renew[3]' => '30',
            'renew[4]' => '40',
            'renew[5]' => '50',
            'renew[6]' => '60',
            'renew[7]' => '70',
            'renew[8]' => '80',
            'renew[9]' => '90',
            'transfer[1]' => '10',
            'responsetype' => 'json',
        )
    )
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);

示例请求(本地 API)

$command = 'CreateOrUpdateTLD';
$postData = array(
    'extension' => '.com',
    'id_protection' => true,
    'dns_management' => true,
    'email_forwarding' => true,
    'epp_required' => true,
    'auto_registrar' => 'enom',
    'currency_code' => 'USD',
    'grace_period_days' => '0',
    'grace_period_fee' => '-1',
    'redemption_period_fee' => '75.00',
    'register[1]' => '10',
    'register[2]' => '20',
    'register[3]' => '30',
    'register[4]' => '40',
    'register[5]' => '50',
    'register[6]' => '60',
    'register[7]' => '70',
    'register[8]' => '80',
    'register[9]' => '90',
    'register[10]' => '100',
    'renew[1]' => '10',
    'renew[2]' => '20',
    'renew[3]' => '30',
    'renew[4]' => '40',
    'renew[5]' => '50',
    'renew[6]' => '60',
    'renew[7]' => '70',
    'renew[8]' => '80',
    'renew[9]' => '90',
    'transfer[1]' => '10',
);
$adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later

$results = localAPI($command, $postData, $adminUsername);
print_r($results);

示例响应 JSON

{
    "result": "success",
    "extension": ".com",
    "id": "1"
}

错误响应

可能的错误条件响应包括:

  • 需要延期
  • 无活动注册器 - 无法定义 auto_registrar 值
  • auto_registrar 值无效。必须为空或以下之一:enom、resellerclub...
  • 定义定价时需要变量currency_code
  • 假设 currency_code 值不存在。必须是以下之一:美元、英镑……
  • 参数 register、renew 和 transfer 必须是数组
  • 最长注册期限为10年
  • 最长续订期为 9 年
  • 只能定义一个传输周期
  • 最长转让期限为10年
  • 无效的组参数:GROUP。应该是 HOT、NEW、SALE 之一

相关用法


注:本文由纯净天空筛选整理自whmcs.com大神的英文原创作品 CreateOrUpdateTLD。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。