File: checker-responses.md

package info (click to toggle)
python-pyfunceble 4.2.29.dev-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 4,108 kB
  • sloc: python: 27,413; sh: 142; makefile: 27
file content (168 lines) | stat: -rw-r--r-- 4,326 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# Checker Responses

This page tries to document the response that you may expect from the different
checker types.

## Syntax Checker

```json
{
  "checker_type": "SYNTAX",
  "idna_subject": "example.com",
  "params": null,
  "status": "VALID",
  "status_source": "SYNTAX",
  "subject": "example.com",
  "tested_at": "2021-03-09T17:43:24.477977"
}
```

### checker_type

The checker type describes the kind of the checker that was used to provide the given response.

It should be set to `SYNTAX`, `AVAILABILITY` or `REPUTATION`

### idna_subject

The IDNA encoded subject that has been used to perform the tests.

### params

The parameters describes the parameter that has been applied to the checker.
Most of the time, if you are using the Python API, you should be able to control most of them through the class constructor or their property setters.

For the syntax checker, this parameter is set to `null`.

### status

The status describes the (final) status that has been gathered by the checker.

For the syntax checker, it should be set to `VALID` or `INVALID`.

### status_source

The status source describes the last test method that led to the decision of the given status.

For the syntax checker, it should always be set to `SYNTAX`.


### subject

The subject describes the subject that you supplied to PyFunceble.

## Availability Checker

```json
{
    "checker_type": "AVAILABILITY",
    "dns_lookup": {
        "NS": [
            "a.iana-servers.net.",
            "b.iana-servers.net."
        ]
    },
    "dns_lookup_record": {
        "dns_name": "example.com.",
        "follow_nameserver_order": true,
        "nameserver": "9.9.9.9",
        "port": 53,
        "preferred_protocol": "UDP",
        "query_record_type": "NS",
        "query_timeout": 5.0,
        "response": [
            "a.iana-servers.net.",
            "b.iana-servers.net."
        ],
        "subject": "example.com",
        "used_protocol": "UDP"
    },
    "domain_syntax": true,
    "expiration_date": null,
    "http_status_code": null,
    "idna_subject": "example.com",
    "ip_syntax": false,
    "ipv4_range_syntax": false,
    "ipv4_syntax": false,
    "ipv6_range_syntax": false,
    "ipv6_syntax": false,
    "netinfo": null,
    "netloc": "example.com",
    "params": {
        "do_syntax_check_first": false,
        "use_dns_lookup": true,
        "use_extra_rules": true,
        "use_http_code_lookup": true,
        "use_netinfo_lookup": true,
        "use_reputation_lookup": false,
        "use_whois_db": true,
        "use_whois_lookup": false,
        "use_platform": false
    },
    "registrar": null,
    "second_level_domain_syntax": true,
    "status": "ACTIVE",
    "status_after_extra_rules": null,
    "status_before_extra_rules": null,
    "status_source": "DNSLOOKUP",
    "status_source_after_extra_rules": null,
    "status_source_before_extra_rules": null,
    "subdomain_syntax": false,
    "subject": "example.com",
    "tested_at": "2021-03-09T17:42:15.771647",
    "url_syntax": false,
    "whois_lookup_record": {
        "expiration_date": null,
        "port": 43,
        "query_timeout": 5.0,
        "record": null,
        "server": null,
        "subject": "example.com",
        "registrar": null
    },
    "whois_record": null
}
```

## Reputation Checker

```json
{
    "checker_type": "REPUTATION",
    "dns_lookup": [
        "93.184.216.34"
    ],
    "dns_lookup_record": {
        "dns_name": "example.com.",
        "follow_nameserver_order": true,
        "nameserver": "9.9.9.9",
        "port": 53,
        "preferred_protocol": "UDP",
        "query_record_type": "A",
        "query_timeout": 5.0,
        "response": [
            "93.184.216.34"
        ],
        "subject": "example.com",
        "used_protocol": "UDP"
    },
    "domain_syntax": true,
    "idna_subject": "example.com",
    "ip_syntax": false,
    "ipv4_range_syntax": false,
    "ipv4_syntax": false,
    "ipv6_range_syntax": false,
    "ipv6_syntax": false,
    "params": {
        "do_syntax_check_first": false,
        "use_platform": false
    },
    "second_level_domain_syntax": true,
    "status": "SANE",
    "status_source": "REPUTATION",
    "subdomain_syntax": false,
    "subject": "example.com",
    "tested_at": "2021-03-09T17:44:02.908452",
    "url_syntax": false
}
```