SED-CLI: Command Line Interface
SED-CLI is the command-line interface for Watch My Domains SED. You can update the application, change settings, test configurations and much more, without using a web browser.
Using sed.php
php sed.php
Watch My Domains Server Edition 6.0.6002, Jan 22 2025 Command Line Tool Options -v Show version. dropall Drop all tables. resetdb Reset all tables except the settings table. drop=Drop the specified table. wipe= Empty the specified table. reset= Reset the specified empty table to default (if any). index= table= type= columns= Create a new index, drop an existing index from table or cleanup all manually created indexes. The 'type' and 'columns' are required if creating a new index. The column names should be comma separated. Index name and extra options are not required if 'cleanup' is specified. Use cleanup=all to drop indexes on single custom domain columns too. You can also use -s option along with the 'cleanup' to only simulate and not actually drop or create indexes. list=[tables,users,audit,indexes] List all tables, indexes, users or last audit entries. Optionally specify table= when using this option to get list of indexes to get data for a specific table. report= email=[no,auto] Email a report to the configured address. When set to auto the emailing will be done only if the current time matches with the report scheduler settings. mailtest= debug=[0,1,2,3,4] Test Emailing (please make sure that all Email Settings are completed) setssl=[clean] Grab all subdomain SSL certificates and add them to the global SSL certificate table. If 'clean' is specified the table will be cleaned first by removing all the previously imported, but not manually added, data. import= (please make sure that the data provider details are already setup). add in= to= (add domains in autoquery to a category). remove in= from= (remove domains in autoquery from a category). txtscan= days=[0,1,2..30] hours=[0,1,2..24] Brute force scan for TXT records in all domains. Use days or hours to specify that the domains added in the last n days/hours alone are scanned. Use days=0 to scan all domains. Default is 7 days and 0 hours. sdscan= days=[0,1,2..30] hours=[0,1,2..24] Brute force scan for A/CNAME records in all domains. Use days or hours to specify that the domains added in the last n days/hours alone are scanned. Use days=0 to scan all domains. Default is 7 days and 0 hours. websites= days=[1,2..30] count=[0,1,2..30] Take home page webshots of domains that have valid HTTP destination URL. Optionally use days=N to specify if a new screenshot should be taken if the earlier version is older than N days (default is 7 days). The 'count' specifies the number of domains that will be processed on each pass (default is 12, setting it to 0 will process all domains). The scriptfile will be executed once for each domain with the domain name as a parameter. update [--force] [-y] Check for minor version updates. Download the latest version, if available, and unzip into the installation folder after confirming. Use --force to download even if the installation is current. Use -y to overwrite current installation folder without confirming.
Check for Minor Version Updates, Install if Available.
php sed.php update
The above will ask for installation confirmation if a new version is available. Use '-y' to install without confirming first.
php sed.php update -y
Testing Email
php sed.php mailtest=contact@softnik.com debug=2
Here is a sample output. The debug setting can be a number from 0 (no debug info) to 4 (maximum debug info).
For most practical purposes use debug=2.
php sed.php mailtest=contact@softnik.com debug=2
2019-03-22 11:37:10 SERVER -> CLIENT: 220 smtp.gmail.com ESMTP 17sm11272228pgt.0 - gsmtp
2019-03-22 11:37:10 CLIENT -> SERVER: EHLO Adria.local
2019-03-22 11:37:10 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [27.5.78.67]
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
2019-03-22 11:37:10 CLIENT -> SERVER: STARTTLS
2019-03-22 11:37:10 SERVER -> CLIENT: 220 2.0.0 Ready to start TLS
2019-03-22 11:37:10 CLIENT -> SERVER: EHLO Adria.local
2019-03-22 11:37:10 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [27.5.78.67]
250-SIZE 35882577
250-8BITMIME
250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
2019-03-22 11:37:10 CLIENT -> SERVER: AUTH LOGIN
2019-03-22 11:37:10 SERVER -> CLIENT: 334 VXNlcm5hbWU6
2019-03-22 11:37:10 CLIENT -> SERVER:
2019-03-22 11:37:11 SERVER -> CLIENT: 334 UGFzc3dvcmQ6
2019-03-22 11:37:11 CLIENT -> SERVER:
2019-03-22 11:37:11 SERVER -> CLIENT: 235 2.7.0 Accepted
2019-03-22 11:37:11 CLIENT -> SERVER: MAIL FROM:
2019-03-22 11:37:11 SERVER -> CLIENT: 250 2.1.0 OK 17sm11272228pgt.0 - gsmtp
2019-03-22 11:37:11 CLIENT -> SERVER: RCPT TO:
2019-03-22 11:37:12 SERVER -> CLIENT: 250 2.1.5 OK 17sm11272228pgt.0 - gsmtp
2019-03-22 11:37:12 CLIENT -> SERVER: DATA
2019-03-22 11:37:12 SERVER -> CLIENT: 354 Go ahead 17sm11272228pgt.0 - gsmtp
2019-03-22 11:37:12 CLIENT -> SERVER: Date: Fri, 22 Mar 2019 17:07:09 +0530
2019-03-22 11:37:12 CLIENT -> SERVER: To: contact@softnik.com
2019-03-22 11:37:12 CLIENT -> SERVER: From: Softnik Support
2019-03-22 11:37:12 CLIENT -> SERVER: Reply-To: Softnik Support
2019-03-22 11:37:12 CLIENT -> SERVER: Subject: Test Email
Listing all Unique Indexes
php sed.php list=indexes type=unique
1] wmdsed_auth_catconn
1 Name: wmdsed_auth_catconn_1_uidx
Type: unique
Columns: cid, userid
2] wmdsed_auth_groupconn
1 Name: wmdsed_auth_groupconn_1_uidx
Type: unique
Columns: gid, userid
3] wmdsed_auth_users
1 Name: wmdsed_auth_users_1_uidx
Type: unique
Columns: name
...
...
11] wmdsed_queries
1 Name: wmdsed_queries_1_uidx
Type: unique
Columns: name
12] wmdsed_report_scheduler
1 Name: wmdsed_report_scheduler_1_uidx
Type: unique
Columns: name
13] wmdsed_settings
1 Name: wmdsed_settings_1_uidx
Type: unique
Columns: name, server
14] wmdsed_api_profiles
15] wmdsed_audit_log
...
...
...
24] wmdsed_tlds
25] wmdsed_whoisservers
Listing all Indexes for a Table
php sed.php list=indexes table=domains
1] wmdsed_domains
1 Name: PRIMARY
Type: unique primary
Columns: sid
2 Name: wmdsed_domains_1_uidx
Type: unique
Columns: domain
3 Name: wmdsed_domains_2_idx
Type: simple
Columns: registry_expiry
4 Name: wmdsed_domains_3_idx
Type: simple
Columns: registrar_expiry
5 Name: wmdsed_domains_4_idx
Type: simple
Columns: created_on
6 Name: wmdsed_domains_5_idx
Type: simple
Columns: primary_whois_checked_at
7 Name: wmdsed_domains_6_idx
Type: simple
Columns: secondary_whois_checked_at
8 Name: wmdsed_domains_7_idx
Type: simple
Columns: edited
9 Name: wmdsed_domains_8_idx
Type: simple
Columns: write_protect
10 Name: wmdsed_domains_9_idx
Type: simple
Columns: status
11 Name: wmdsed_domains_10_idx
Type: simple
Columns: availability
Creating a New Index
php sed.php index=domain_new_index new table=domains columns=customer_invoice type=simple
The above will attempt to create a new simple index named domain_new_index in the domain
table for the column named customer_invoice.
You can specify more than one column (separate them with commas) for the 'column's parameter.
Deleting an Index
php sed.php index=domain_new_index drop table=domains
The above will attempt to delete the index named domain_new_index in the domain
table.
Add Domains in Auto-Query to a Category
php sed.php add in="Domains with GoDaddy as Registrar" to="GoDaddy Domains"
The above will copy the domains in the auto-query named Domains with GoDaddy as Registrar to the category named GoDaddy Domains
Please remember to wrap category or auto-query names, that have spaces in them, within quotes.
Remove Domains in Auto-Query from a Category
php sed.php remove in="Domains with GoDaddy as Registrar" from="GoDaddy Domains"
The above will remove the domains in the auto-query named Domains with GoDaddy as Registrar from the category named GoDaddy Domains
Please remember to wrap category or auto-query names, that have spaces in them, within quotes.
Web Page Screenshots
php sed.php webshot= days=[1,2..30] count=[0,1,2..30]
Take home page webshots of domains that have valid HTTP destination URL. Optionally use days=N to specify if a new screenshot should be taken if the earlier version is older than N days (default is 7 days). The 'count' specifies the number of domains that will be processed on each pass (default is 12, setting it to 0 will process all domains).
If both 'days' and 'count' is set to 0, the 'count' will be reset to 50.
The scriptfile will be executed once for each domain with the domain name as a parameter.
You need not specify a script file if you have installed Puppeteer and setup the Prerequisites
as mentioned in the following article.
You can use other methods also to take webpage screenshots. The image files may be saved as <domainname>.jpg, <domainname>.png or <domainname>.webp (Watch My Domains SED will search for these images in the same order (jpg first, then png followed by webp). The scriptfile should take a single parameter (the domain name as the input).
C:\wmdsed6>php sed.php webshot days=0 count=10
(4%) 1/23] netrobots.com
(8%) 2/23] nerdverse.com
C:\webshots\shot.js:24
throw Error(error);
^
Error: Error: Error: net::ERR_NAME_NOT_RESOLVED at http://nerdverse.com
at C:\webshots\shot.js:24:10
at processTicksAndRejections (internal/process/task_queues.js:93:5)
(13%) 3/23] reverse01.com
C:\webshots\shot.js:24
throw Error(error);
^
Error: Error: Error: net::ERR_NAME_NOT_RESOLVED at http://reverse01.com
at C:\webshots\shot.js:24:10
at processTicksAndRejections (internal/process/task_queues.js:93:5)
(17%) 4/23] searchenginelab.com
(21%) 5/23] seolab.com
(26%) 6/23] sofnik.com
(30%) 7/23] softnik.co.uk
(34%) 8/23] softnik.in
(39%) 9/23] softnik.net
(43%) 10/23] softnik.org
C:\wmdsed6>
The error messages are normal for domains that don't resolve.
