HEX
Server: LiteSpeed
System: Linux php-prod-3.spaceapp.ru 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: sarli3128 (1010)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //usr/local/CyberCP/install/dns_cyberpanel.sh
#!/usr/bin/env sh
# shellcheck disable=SC2034
dns_myapi_info='CyberPanel script for ACME to add records to PDNS
 A sample custom DNS API script.
Domains: example.com
Site: github.com/acmesh-official/acme.sh/wiki/DNS-API-Dev-Guide
Docs: github.com/acmesh-official/acme.sh/wiki/dnsapi#dns_duckdns
Options:
 MYAPI_Token API Token. Get API Token from https://example.com/api/. Optional.
Issues: github.com/usmannasir/cyberpanel
Author: Neil Pang <usman@cyberpersons.com>
'

# This file name is "dns_myapi.sh"
# So, here must be a method dns_myapi_add()
# Which will be called by acme.sh to add the txt record to your API system.
# Returns 0 means success, otherwise error.

########  Public functions #####################

# Please Read this guide first: https://github.com/acmesh-official/acme.sh/wiki/DNS-API-Dev-Guide

# Usage: dns_myapi_add _acme-challenge.www.domain.com "XKrxpRBosdIKFzxW_CT3KLZNf6q0HG9i01zxXp5CPBs"
dns_cyberpanel_add() {
  fulldomain=$1
  txtvalue=$2
  _info "Using CyberPanel ACME API"
  _debug fulldomain "$fulldomain"
  _debug txtvalue "$txtvalue"
  _info "cyberpanel createDNSRecord --domainName $fulldomain --name $fulldomain --recordType TXT --value $txtvalue --priority 0 --ttl 3600"

  cyberpanel createDNSRecord --domainName $fulldomain --name $fulldomain --recordType TXT --value $txtvalue --priority 0 --ttl 3600

  return 0
}

# Usage: fulldomain txtvalue
# Remove the txt record after validation.
dns_cyberpanel_rm() {
  fulldomain=$1
  txtvalue=$2
  _info "Using myapi"
  _debug fulldomain "$fulldomain"
  _debug txtvalue "$txtvalue"

  return 0
}

####################  Private functions below ##################################
# You can add private helper functions here if needed