Đại Lý

Hướng dẫn tích hợp TenTen Domain API – Quản lý tên miền tự động 2025

Hướng dẫn tích hợp TenTen Domain API - Quản lý tên miền tự động 2025

Mục lục

Tổng quan

Dự án này cung cấp các API để tương tác với dịch vụ tên miền của TenTen, bao gồm tìm kiếm, đăng ký, quản lý và gia hạn tên miền. API được thiết kế để dễ dàng tích hợp vào các hệ thống quản lý tên miền hiện có.

Cấu hình

Thiết lập API Credentials

Trong file apitenten.php, bạn cần cấu hình các thông tin sau:

<?php
define("API_KEY", "api key lay tu trang cau hinh");
define("API_USER", "api user lay tu trang cau hinh");  
define("API_URL", "url ket noi api lay tu trang cau hinh");
?>

Class API Core

File apitenten.php chứa class apiTenTen với phương thức callApi() để thực hiện các cuộc gọi API thông qua cURL.

Các API Endpoints

1. Tìm kiếm tên miền (search.php)

Mục đích: Kiểm tra tên miền đã được đăng ký hay chưa
Endpoint: search.json

Parameters:

Tham số Mô tả Bắt buộc
api_key Key truy cập API
api_user User truy cập API
domainName Tên miền cần kiểm tra
$cmd = "search.json";
$dataRequest["api_key"] = API_KEY;
$dataRequest["api_user"] = API_USER;
$dataRequest["domainName"] = "tenten.vn";

2. Tra cứu thông tin Whois (whois.php)

Mục đích: Lấy thông tin whois của tên miền đã được đăng ký
Endpoint: whois.json

Parameters:

Tham số Mô tả Bắt buộc
api_key Key truy cập API
api_user User truy cập API
domainName Tên miền cần xem thông tin whois
$cmd = "whois.json";
$dataRequest["api_key"] = API_KEY;
$dataRequest["api_user"] = API_USER;
$dataRequest["domainName"] = "tenten.com";

3. 🇻🇳 Đăng ký tên miền .vn (registerdomainvn.php)

Mục đích: Đăng ký tên miền .vn
Endpoint: create.json

Parameters chính:

Tham số Mô tả Giá trị
domainType Loại đăng ký “I” = cá nhân, “R” = tổ chức
domainName Tên miền cần đăng ký example.vn
domainYear Số năm đăng ký 1, 2, 3…

DNS Settings:

  • domainDNS1, domainIP1: DNS Primary
  • domainDNS2, domainIP2: DNS Secondary 1
  • domainDNS3, domainIP3: DNS Secondary 2

Thông tin chủ sở hữu (Owner):

Tham số Mô tả Format
ownerName Tên người sử dụng Nguyễn Văn A
ownerAddress Địa chỉ Số 1 Đào Duy Anh, Đống Đa
ownerBirthday Ngày sinh YYYY-MM-DD
ownerPersonID Số CMND/CCCD 1111111111
ownerMail Email info@example.com
ownerPhone Số điện thoại +84-71089999
ownerCity Mã tỉnh thành HNI (Hà Nội)
ownerCountry Mã quốc gia VN (Việt Nam)

Lưu ý:

Thông tin người quản lý (Admin) có các trường tương tự như Owner nhưng với prefix admin

4. Đăng ký tên miền quốc tế (registerdomainqt.php)

Mục đích: Đăng ký tên miền quốc tế (.com, .net, .org, v.v.)
Endpoint: create.json

Lưu ý:

Parameters tương tự như đăng ký .vn nhưng không yêu cầu thông tin admin

5. Gia hạn tên miền (renew.php)

Mục đích: Gia hạn tên miền đã đăng ký
Endpoint: renew.json

Parameters:

Tham số Mô tả Bắt buộc
api_key Key truy cập API
api_user User truy cập API
domainName Tên miền cần gia hạn
domainYear Số năm cần gia hạn

6. Thay đổi DNS (changednsdomain.php)

Mục đích: Thay đổi thông tin DNS của tên miền
Endpoint: nameserver.json

Parameters:

Tham số Mô tả
domainName Tên miền cần thay đổi DNS
domainDNS1, domainIP1 DNS Primary mới
domainDNS2, domainIP2 DNS Secondary 1 mới
domainDNS3, domainIP3 DNS Secondary 2 mới

7. Lấy thông tin chi tiết tên miền (infodomain.php)

Mục đích: Lấy thông tin chi tiết của tên miền
Endpoint: info.json

8. Danh sách tên miền (listdomain.php)

Mục đích: Lấy danh sách tên miền trong tài khoản
Endpoint: list.json

Dữ liệu tham chiếu

Mã tỉnh thành Việt Nam

File: listProvinceVietnam.php

HNI: Hà Nội HCM: Hồ Chí Minh HPG: Hải Phòng DNK: Đà Nẵng

Mã quốc gia

File: listCountry.php/listCountry.json

VN: Việt Nam US: United States GB: United Kingdom JP: Japan

Dữ liệu địa danh hành chính

Thư mục dia_danh_hanh_chinh/ chứa các file dữ liệu về địa danh hành chính Việt Nam:

  • location_provinces.csv/json: Danh sách tỉnh thành
  • location_districts.csv/json: Danh sách quận/huyện
  • location_wards.csv/json: Danh sách phường/xã

 Cách sử dụng

  1. Cấu hình API: Thiết lập API_KEY, API_USER, và API_URL trong file apitenten.php
  2. Include file chính:
    require_once "apitenten.php";
  3. Tạo request: Tạo mảng dữ liệu với các parameters cần thiết
  4. Gọi API: Sử dụng phương thức $api->callApi($cmd, $request)
  5. Xử lý response: Parse JSON response và xử lý kết quả

Ví dụ code mẫu

Ví dụ hoàn chỉnh – Kiểm tra tên miền

<?php
require_once "apitenten.php";

// Kiểm tra tên miền
$cmd = "search.json";
$dataRequest = array(
    "api_key" => API_KEY,
    "api_user" => API_USER,
    "domainName" => "example.vn"
);

$result = $api->callApi($cmd, $dataRequest);
$dataResult = json_decode($result, true);

if ($dataResult['status'] == 'success') {
    echo "Tên miền có thể đăng ký";
} else {
    echo "Tên miền đã được đăng ký";
}
?>

Lưu ý quan trọng

Các điểm cần chú ý:

  1. Format số điện thoại: Phải theo định dạng quốc tế +84-xxxxxxxx
  2. Format ngày sinh: Phải theo định dạng YYYY-MM-DD
  3. Mã tỉnh thành và quốc gia: Phải sử dụng đúng mã trong các file tham chiếu
  4. DNS Settings: Cần cung cấp đầy đủ thông tin DNS khi đăng ký tên miền
  5. Domain Type: “I” cho cá nhân, “R” cho tổ chức

Xử lý lỗi

Tất cả các API sẽ trả về response dạng JSON. Cần kiểm tra trường status để xác định kết quả thành công hay thất bại.

$dataResult = json_decode($result, true);

if ($dataResult['status'] == 'success') {
    // Xử lý khi thành công
    echo "Thao tác thành công: " . $dataResult['message'];
} else {
    // Xử lý khi có lỗi
    echo "Lỗi: " . $dataResult['error_message'];
}

Bảo mật

Các nguyên tắc bảo mật:

  • Không chia sẻ API_KEYAPI_USER công khai
  • Sử dụng HTTPS cho tất cả các cuộc gọi API
  • Validate dữ liệu đầu vào trước khi gửi request
  • Lưu trữ credentials trong file cấu hình riêng biệt
  • Sử dụng rate limiting để tránh spam API

Bài viết liên quan

Back to top button