ts-mailcow-api 0.8.5 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +186 -147
- package/dist/Endpoints/address-rewriting-endpoint.d.ts +35 -0
- package/dist/Endpoints/address-rewriting-endpoint.js +26 -0
- package/dist/Endpoints/address-rewriting-endpoint.js.map +1 -0
- package/dist/Endpoints/alias-endpoints.js +2 -3
- package/dist/Endpoints/alias-endpoints.js.map +1 -1
- package/dist/Endpoints/antispam-endpoints.js +2 -3
- package/dist/Endpoints/antispam-endpoints.js.map +1 -1
- package/dist/Endpoints/domain-endpoints.js +2 -3
- package/dist/Endpoints/domain-endpoints.js.map +1 -1
- package/dist/Endpoints/forwarding-endpoints.js +2 -3
- package/dist/Endpoints/forwarding-endpoints.js.map +1 -1
- package/dist/Endpoints/log-endpoints.js +2 -3
- package/dist/Endpoints/log-endpoints.js.map +1 -1
- package/dist/Endpoints/mailbox-endpoint.d.ts +2 -1
- package/dist/Endpoints/mailbox-endpoint.js +2 -3
- package/dist/Endpoints/mailbox-endpoint.js.map +1 -1
- package/dist/Endpoints/syncjob-endpoints.js +2 -3
- package/dist/Endpoints/syncjob-endpoints.js.map +1 -1
- package/dist/index.d.ts +9 -2
- package/dist/index.js +11 -4
- package/dist/index.js.map +1 -1
- package/dist/request-factory.d.ts +1 -2
- package/dist/request-factory.js +4 -5
- package/dist/request-factory.js.map +1 -1
- package/dist/types.d.ts +105 -5
- package/dist/types.js.map +1 -1
- package/package.json +20 -21
- package/src/Endpoints/address-rewriting-endpoint.ts +74 -0
- package/src/Endpoints/alias-endpoints.ts +54 -71
- package/src/Endpoints/antispam-endpoints.ts +8 -17
- package/src/Endpoints/domain-endpoints.ts +6 -25
- package/src/Endpoints/forwarding-endpoints.ts +7 -15
- package/src/Endpoints/log-endpoints.ts +12 -43
- package/src/Endpoints/mailbox-endpoint.ts +14 -34
- package/src/Endpoints/syncjob-endpoints.ts +9 -20
- package/src/index.ts +22 -14
- package/src/request-factory.ts +6 -6
- package/src/types.ts +1489 -1393
package/README.md
CHANGED
|
@@ -1,147 +1,186 @@
|
|
|
1
|
-
# TypeScript wrapper for the mailcow API
|
|
2
|
-
|
|
3
|
-
Provides typing and a easy to use interface for the [Mailcow API](https://mailcow.docs.apiary.io/#).
|
|
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
|
-
- [x]
|
|
49
|
-
- [x]
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
- [x]
|
|
55
|
-
- [x]
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
- [x]
|
|
61
|
-
- [x]
|
|
62
|
-
- [x]
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
- [x] Get
|
|
66
|
-
- [x]
|
|
67
|
-
- [x] Get
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
- [x]
|
|
72
|
-
- [x]
|
|
73
|
-
- [x]
|
|
74
|
-
- [x] Get
|
|
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
|
-
### Address Rewriting
|
|
103
|
-
|
|
104
|
-
- [
|
|
105
|
-
- [
|
|
106
|
-
- [
|
|
107
|
-
- [
|
|
108
|
-
- [
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
- [ ]
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
- [ ]
|
|
125
|
-
- [ ] Get
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
- [ ]
|
|
130
|
-
- [ ]
|
|
131
|
-
- [ ]
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
- [ ]
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
- [ ]
|
|
140
|
-
- [ ] Get
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
- [ ]
|
|
145
|
-
- [ ]
|
|
146
|
-
- [ ]
|
|
147
|
-
|
|
1
|
+
# TypeScript wrapper for the mailcow API
|
|
2
|
+
|
|
3
|
+
Provides typing and a easy to use interface for the [Mailcow API](https://mailcow.docs.apiary.io/#).
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
Create a new wrapper using the base url and API_KEY.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import MailCowClient from "./index";
|
|
11
|
+
|
|
12
|
+
// Create MailCowClient based on BASE_URL and API_KEY
|
|
13
|
+
const mcc = new MailCowClient(
|
|
14
|
+
"https://demo.mailcow.email/",
|
|
15
|
+
"390448-22B69F-FA37D9-19701B-6F033F",
|
|
16
|
+
);
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Then you can use the created wrapper for promised-based API calls according to the Mailcow API specification.
|
|
20
|
+
|
|
21
|
+
```ts
|
|
22
|
+
// Get all the mailboxes available.
|
|
23
|
+
mcc.mailbox
|
|
24
|
+
.get()
|
|
25
|
+
.then((e) => {
|
|
26
|
+
// Print all mailboxes.
|
|
27
|
+
console.log(JSON.stringify(e, null, 4));
|
|
28
|
+
})
|
|
29
|
+
.catch((e) => {
|
|
30
|
+
// Error handling.
|
|
31
|
+
console.log(e);
|
|
32
|
+
});
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Why it's not auto-generated
|
|
36
|
+
|
|
37
|
+
The [Mailcow OpenAPI spec](https://github.com/mailcow/mailcow-dockerized/blob/master/data/web/api/openapi.yaml) doesn’t pass validation and isn’t RESTful (e.g. `POST /api/v1/add/domain`).
|
|
38
|
+
If Mailcow ever fixes the naming or structure, a generated client would break.
|
|
39
|
+
This wrapper acts as a middleman, so those changes can be patched internally without ruining the client interface.
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## API implementation progress
|
|
43
|
+
|
|
44
|
+
### Domains
|
|
45
|
+
|
|
46
|
+
- [x] Create domain
|
|
47
|
+
- [x] Delete domain
|
|
48
|
+
- [x] Update domain
|
|
49
|
+
- [x] Get domain
|
|
50
|
+
|
|
51
|
+
### Domain antispam policies
|
|
52
|
+
|
|
53
|
+
- [x] Create domain policy
|
|
54
|
+
- [x] Delete domain policy
|
|
55
|
+
- [x] List blacklist/whitelist domain policy
|
|
56
|
+
|
|
57
|
+
### Mailboxes
|
|
58
|
+
|
|
59
|
+
- [x] Create mailbox
|
|
60
|
+
- [x] Delete mailbox
|
|
61
|
+
- [x] Update mailbox
|
|
62
|
+
- [x] Update Pushover settings
|
|
63
|
+
- [x] Quarantine Notifications
|
|
64
|
+
- [x] Update mailbox ACL
|
|
65
|
+
- [x] Get mailboxes
|
|
66
|
+
- [x] Edit mailbox spam filter score
|
|
67
|
+
- [x] Get Active User Sieve
|
|
68
|
+
|
|
69
|
+
### Aliases
|
|
70
|
+
|
|
71
|
+
- [x] Create alias
|
|
72
|
+
- [x] Delete alias
|
|
73
|
+
- [x] Update alias
|
|
74
|
+
- [x] Get aliases
|
|
75
|
+
|
|
76
|
+
### Sync Jobs
|
|
77
|
+
|
|
78
|
+
- [x] Create sync job
|
|
79
|
+
- [x] Delete sync job
|
|
80
|
+
- [x] Update sync job
|
|
81
|
+
- [x] Get sync jobs
|
|
82
|
+
|
|
83
|
+
### Forwarding Hosts
|
|
84
|
+
|
|
85
|
+
- [x] Add Forward Host
|
|
86
|
+
- [x] Delete Forward Host
|
|
87
|
+
- [x] Get Forwarding Hosts
|
|
88
|
+
|
|
89
|
+
### Logs
|
|
90
|
+
|
|
91
|
+
- [x] Get ACME logs
|
|
92
|
+
- [x] Get Api logs
|
|
93
|
+
- [x] Get Autodiscover logs
|
|
94
|
+
- [x] Get Dovecot logs
|
|
95
|
+
- [x] Get Netfilter logs
|
|
96
|
+
- [x] Get Postfix logs
|
|
97
|
+
- [x] Get Ratelimit logs
|
|
98
|
+
- [x] Get Rspamd logs
|
|
99
|
+
- [x] Get SOGo logs
|
|
100
|
+
- [x] Get Watchdog logs
|
|
101
|
+
|
|
102
|
+
### Address Rewriting
|
|
103
|
+
|
|
104
|
+
- [x] Create BCC Map
|
|
105
|
+
- [x] Create Recipient Map
|
|
106
|
+
- [x] Delete BCC Map
|
|
107
|
+
- [x] Delete Recipient Map
|
|
108
|
+
- [x] Get BCC Map
|
|
109
|
+
- [x] Get Recipient Map
|
|
110
|
+
|
|
111
|
+
### Queue Manager
|
|
112
|
+
|
|
113
|
+
- [ ] Delete Queue
|
|
114
|
+
- [ ] Flush Queue
|
|
115
|
+
- [ ] Get Queue
|
|
116
|
+
|
|
117
|
+
### Quarantine
|
|
118
|
+
|
|
119
|
+
- [ ] Delete mails in Quarantaine
|
|
120
|
+
- [ ] Get mails in Quarantaine
|
|
121
|
+
|
|
122
|
+
### Fail2Ban
|
|
123
|
+
|
|
124
|
+
- [ ] Edit Fail2Ban
|
|
125
|
+
- [ ] Get Fail2Ban Config
|
|
126
|
+
|
|
127
|
+
### DKIM
|
|
128
|
+
|
|
129
|
+
- [ ] Generate DKIM key
|
|
130
|
+
- [ ] Duplicate DKIM key
|
|
131
|
+
- [ ] Delete DKIM key
|
|
132
|
+
- [ ] Get DKIM key
|
|
133
|
+
|
|
134
|
+
### Domain Admin
|
|
135
|
+
|
|
136
|
+
- [ ] Create Domain Admin user
|
|
137
|
+
- [ ] Edit Domain Admin ACL
|
|
138
|
+
- [ ] Edit Domain Admin user
|
|
139
|
+
- [ ] Delete Domain Admin
|
|
140
|
+
- [ ] Get Domain Admins
|
|
141
|
+
|
|
142
|
+
### Outgoing TLS Policy Map Overrides
|
|
143
|
+
|
|
144
|
+
- [ ] Create TLS Policy Map
|
|
145
|
+
- [ ] Delete TLS Policy Map
|
|
146
|
+
- [ ] Get TLS Policy Map
|
|
147
|
+
|
|
148
|
+
### oAuth Clients
|
|
149
|
+
|
|
150
|
+
- [ ] Create oAuth client
|
|
151
|
+
- [ ] Delete oAuth client
|
|
152
|
+
- [ ] Get oAuth Clients
|
|
153
|
+
|
|
154
|
+
### Routing
|
|
155
|
+
|
|
156
|
+
- [ ] Create Sender-Dependent Transports
|
|
157
|
+
- [ ] Create Transport Maps
|
|
158
|
+
- [ ] Delete Sender-Dependent Transports
|
|
159
|
+
- [ ] Delete Transport Maps
|
|
160
|
+
- [ ] Get Sender-Dependent Transports
|
|
161
|
+
- [ ] Get Transport Maps
|
|
162
|
+
|
|
163
|
+
### Resources
|
|
164
|
+
|
|
165
|
+
- [ ] Create Resources
|
|
166
|
+
- [ ] Delete Resources
|
|
167
|
+
- [ ] Get Resources
|
|
168
|
+
|
|
169
|
+
### App Passwords
|
|
170
|
+
|
|
171
|
+
- [ ] Create App Passwords
|
|
172
|
+
- [ ] Delete App Passwords
|
|
173
|
+
- [ ] Get App Passwords
|
|
174
|
+
|
|
175
|
+
### Status
|
|
176
|
+
|
|
177
|
+
- [ ] Get container status
|
|
178
|
+
- [ ] Get solr status
|
|
179
|
+
- [ ] Get vmail status
|
|
180
|
+
|
|
181
|
+
### Ratelimits
|
|
182
|
+
|
|
183
|
+
- [ ] Get mailbox ratelimits
|
|
184
|
+
- [ ] Get domain ratelimits
|
|
185
|
+
- [ ] Edit domain ratelimits
|
|
186
|
+
- [ ] Edit mailbox ratelimits
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import MailcowClient from '..';
|
|
2
|
+
import { BccMapDeletionRequest, GetBccMapResponse, GetRecipientMapResponse, RecipientMapDeletionRequest, AddBccMapRequest as AddBccMapRequest, AddRecipientMapRequest as AddRecipientMapRequest, MailcowResponse } from '../types';
|
|
3
|
+
export interface AdressRewritingEndpoints {
|
|
4
|
+
/**
|
|
5
|
+
* Endpoint for creating a bcc map.
|
|
6
|
+
* @param payload - The creation payload.
|
|
7
|
+
*/
|
|
8
|
+
addBccMap(payload: AddBccMapRequest): Promise<MailcowResponse>;
|
|
9
|
+
/**
|
|
10
|
+
* Endpoint for creating a recipient map.
|
|
11
|
+
* @param payload - The creation payload.
|
|
12
|
+
*/
|
|
13
|
+
addRecipientMap(payload: AddRecipientMapRequest): Promise<MailcowResponse>;
|
|
14
|
+
/**
|
|
15
|
+
* Endpoint for deleting a bcc map.
|
|
16
|
+
* @param payload - The deletion payload.
|
|
17
|
+
*/
|
|
18
|
+
deleteBccMap(payload: BccMapDeletionRequest): Promise<MailcowResponse>;
|
|
19
|
+
/**
|
|
20
|
+
* Endpoint for deleting a recipient map.
|
|
21
|
+
* @param payload - The deletion payload.
|
|
22
|
+
*/
|
|
23
|
+
deleteRecipientMap(payload: RecipientMapDeletionRequest): Promise<MailcowResponse>;
|
|
24
|
+
/**
|
|
25
|
+
* Endpoint for getting a bcc map.
|
|
26
|
+
* @param id - Id of the bcc map to get
|
|
27
|
+
*/
|
|
28
|
+
getBccMap(id: number | 'all'): Promise<GetBccMapResponse>;
|
|
29
|
+
/**
|
|
30
|
+
* Endpoint for getting a recipient map.
|
|
31
|
+
* @param id - Id of the recipient map to get
|
|
32
|
+
*/
|
|
33
|
+
getRecipientMap(id: number | 'all'): Promise<GetRecipientMapResponse>;
|
|
34
|
+
}
|
|
35
|
+
export declare function addressRewritingEndpoints(bind: MailcowClient): AdressRewritingEndpoints;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addressRewritingEndpoints = addressRewritingEndpoints;
|
|
4
|
+
function addressRewritingEndpoints(bind) {
|
|
5
|
+
return {
|
|
6
|
+
addBccMap(payload) {
|
|
7
|
+
return bind.requestFactory.post('/api/v1/add/bcc', payload);
|
|
8
|
+
},
|
|
9
|
+
addRecipientMap(payload) {
|
|
10
|
+
return bind.requestFactory.post('/api/v1/add/recipient_map', payload);
|
|
11
|
+
},
|
|
12
|
+
deleteBccMap(payload) {
|
|
13
|
+
return bind.requestFactory.post('/api/v1/delete/bcc', payload);
|
|
14
|
+
},
|
|
15
|
+
deleteRecipientMap(payload) {
|
|
16
|
+
return bind.requestFactory.post('/api/v1/delete/recipient_map', payload);
|
|
17
|
+
},
|
|
18
|
+
getBccMap(id) {
|
|
19
|
+
return bind.requestFactory.get(`/api/v1/get/bcc/${id}`);
|
|
20
|
+
},
|
|
21
|
+
getRecipientMap(id) {
|
|
22
|
+
return bind.requestFactory.get(`/api/v1/get/recipient_map/${id}`);
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=address-rewriting-endpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address-rewriting-endpoint.js","sourceRoot":"","sources":["../../src/Endpoints/address-rewriting-endpoint.ts"],"names":[],"mappings":";;AA4CA,8DA6BC;AA7BD,SAAgB,yBAAyB,CAAC,IAAmB;IAC3D,OAAO;QACL,SAAS,CAAC,OAAyB;YACjC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAoC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACjG,CAAC;QAED,eAAe,CAAC,OAA+B;YAC7C,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA0C,2BAA2B,EAAE,OAAO,CAAC,CAAC;QACjH,CAAC;QAED,YAAY,CAAC,OAA8B;YACzC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAyC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QACzG,CAAC;QAED,kBAAkB,CAAC,OAAoC;YACrD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAC7B,8BAA8B,EAC9B,OAAO,CACR,CAAC;QACJ,CAAC;QAED,SAAS,CAAC,EAAkB;YAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAoB,mBAAmB,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC;QAED,eAAe,CAAC,EAAkB;YAChC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAA0B,6BAA6B,EAAE,EAAE,CAAC,CAAC;QAC7F,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.aliasEndpoints =
|
|
3
|
+
exports.aliasEndpoints = aliasEndpoints;
|
|
4
4
|
const request_factory_1 = require("../request-factory");
|
|
5
5
|
/**
|
|
6
6
|
* Binder function between the MailcowClient class and the AliasEndpoints.
|
|
@@ -20,8 +20,7 @@ function aliasEndpoints(bind) {
|
|
|
20
20
|
},
|
|
21
21
|
delete: (payload) => {
|
|
22
22
|
return bind.requestFactory.post('/api/v1/delete/alias', payload.items);
|
|
23
|
-
}
|
|
23
|
+
},
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
exports.aliasEndpoints = aliasEndpoints;
|
|
27
26
|
//# sourceMappingURL=alias-endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alias-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/alias-endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"alias-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/alias-endpoints.ts"],"names":[],"mappings":";;AAsCA,wCAeC;AAnDD,wDAAwD;AA+BxD;;;;GAIG;AACH,SAAgB,cAAc,CAAC,IAAmB;IAChD,OAAO;QACL,GAAG,CAAC,EAAE,GAAG,KAAK;YACZ,OAAO,IAAA,oCAAkB,EAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAkB,qBAAqB,EAAE,EAAE,CAAC,CAAC,CAAC;QACxG,CAAC;QACD,MAAM,EAAE,CAAC,OAAyB,EAA4B,EAAE;YAC9D,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAoC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,EAAE,CAAC,OAAyB,EAA4B,EAAE;YAC5D,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAoC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QACpG,CAAC;QACD,MAAM,EAAE,CAAC,OAA2B,EAA4B,EAAE;YAChE,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA4B,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACpG,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.antiSpamEndpoints =
|
|
3
|
+
exports.antiSpamEndpoints = antiSpamEndpoints;
|
|
4
4
|
/**
|
|
5
5
|
* Binder function between the MailcowClient class and the AntiSpamEndpoints
|
|
6
6
|
* @param bind - The MailcowClient to bind.
|
|
@@ -16,8 +16,7 @@ function antiSpamEndpoints(bind) {
|
|
|
16
16
|
},
|
|
17
17
|
get(payload) {
|
|
18
18
|
return bind.requestFactory.get(`/api/v1/get/policy_${payload.type}_domain/${payload.domain}`);
|
|
19
|
-
}
|
|
19
|
+
},
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
exports.antiSpamEndpoints = antiSpamEndpoints;
|
|
23
22
|
//# sourceMappingURL=antispam-endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"antispam-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/antispam-endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"antispam-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/antispam-endpoints.ts"],"names":[],"mappings":";;AAqCA,8CAYC;AAjBD;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,IAAmB;IACnD,OAAO;QACL,MAAM,CAAC,OAA8B;YACnC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAyC,2BAA2B,EAAE,OAAO,CAAC,CAAC;QAChH,CAAC;QACD,MAAM,CAAC,OAAgC;YACrC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA4B,8BAA8B,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7G,CAAC;QACD,GAAG,CAAC,OAA6B;YAC/B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAe,sBAAsB,OAAO,CAAC,IAAI,WAAW,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9G,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.domainEndpoints =
|
|
3
|
+
exports.domainEndpoints = domainEndpoints;
|
|
4
4
|
const request_factory_1 = require("../request-factory");
|
|
5
5
|
/**
|
|
6
6
|
* Binder function between the MailcowClient class and the DomainEndpoints.
|
|
@@ -20,8 +20,7 @@ function domainEndpoints(bind) {
|
|
|
20
20
|
},
|
|
21
21
|
edit(payload) {
|
|
22
22
|
return bind.requestFactory.post('/api/v1/edit/domain', payload);
|
|
23
|
-
}
|
|
23
|
+
},
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
exports.domainEndpoints = domainEndpoints;
|
|
27
26
|
//# sourceMappingURL=domain-endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/domain-endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"domain-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/domain-endpoints.ts"],"names":[],"mappings":";;AAsCA,0CAeC;AAnDD,wDAAwD;AA+BxD;;;;GAIG;AACH,SAAgB,eAAe,CAAC,IAAmB;IACjD,OAAO;QACL,GAAG,CAAC,SAAiB,KAAK;YACxB,OAAO,IAAA,oCAAkB,EAAS,IAAI,CAAC,cAAc,CAAC,GAAG,CAAoB,sBAAsB,MAAM,EAAE,CAAC,CAAC,CAAC;QAChH,CAAC;QACD,MAAM,CAAC,OAA0B;YAC/B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAqC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,CAAC,OAA4B;YACjC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA4B,uBAAuB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACvG,CAAC;QACD,IAAI,CAAC,OAA0B;YAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAqC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACtG,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.forwardingEndpoints =
|
|
3
|
+
exports.forwardingEndpoints = forwardingEndpoints;
|
|
4
4
|
/**
|
|
5
5
|
* Binder function between the MailcowClient class and the ForwardingEndpoints.
|
|
6
6
|
* @param bind - The MailcowClient to bind.
|
|
@@ -16,8 +16,7 @@ function forwardingEndpoints(bind) {
|
|
|
16
16
|
},
|
|
17
17
|
getAll() {
|
|
18
18
|
return bind.requestFactory.get('/api/v1/get/fwdhost/all');
|
|
19
|
-
}
|
|
19
|
+
},
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
exports.forwardingEndpoints = forwardingEndpoints;
|
|
23
22
|
//# sourceMappingURL=forwarding-endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forwarding-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/forwarding-endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"forwarding-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/forwarding-endpoints.ts"],"names":[],"mappings":";;AA8BA,kDAYC;AAjBD;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,IAAmB;IACrD,OAAO;QACL,MAAM,CAAC,OAAgC;YACrC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA4B,wBAAwB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACtG,CAAC;QACD,MAAM,CAAC,OAAgC;YACrC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA2C,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC5G,CAAC;QACD,MAAM;YACJ,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAmB,yBAAyB,CAAC,CAAC;QAC9E,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.logEndpoints =
|
|
3
|
+
exports.logEndpoints = logEndpoints;
|
|
4
4
|
function logEndpoints(bind) {
|
|
5
5
|
return {
|
|
6
6
|
acme(count) {
|
|
@@ -32,8 +32,7 @@ function logEndpoints(bind) {
|
|
|
32
32
|
},
|
|
33
33
|
watchdog(count) {
|
|
34
34
|
return bind.requestFactory.get(`/api/v1/get/logs/watchdog/${count}`);
|
|
35
|
-
}
|
|
35
|
+
},
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
|
-
exports.logEndpoints = logEndpoints;
|
|
39
38
|
//# sourceMappingURL=log-endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/log-endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"log-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/log-endpoints.ts"],"names":[],"mappings":";;AAiEA,oCAiCC;AAjCD,SAAgB,YAAY,CAAC,IAAmB;IAC9C,OAAO;QACL,IAAI,CAAC,KAAa;YAChB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAY,yBAAyB,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,GAAG,CAAC,KAAa;YACf,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAW,wBAAwB,KAAK,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,YAAY,CAAC,KAAa;YACxB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,iCAAiC,KAAK,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,CAAC,KAAa;YACnB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,4BAA4B,KAAK,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,SAAS,CAAC,KAAa;YACrB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,8BAA8B,KAAK,EAAE,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,CAAC,KAAa;YACnB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,4BAA4B,KAAK,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,WAAW,CAAC,KAAa;YACvB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,gCAAgC,KAAK,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,CAAC,KAAa;YAClB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,mCAAmC,KAAK,EAAE,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,CAAC,KAAa;YAChB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,yBAAyB,KAAK,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,QAAQ,CAAC,KAAa;YACpB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAU,6BAA6B,KAAK,EAAE,CAAC,CAAC;QAChF,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -23,7 +23,8 @@ export interface MailboxEndpoints {
|
|
|
23
23
|
* Endpoint for getting a mailbox.
|
|
24
24
|
* @param mailbox - The mailbox to get
|
|
25
25
|
*/
|
|
26
|
-
get(mailbox:
|
|
26
|
+
get(mailbox: 'all'): Promise<Mailbox[]>;
|
|
27
|
+
get(mailbox: string): Promise<Mailbox[]>;
|
|
27
28
|
/**
|
|
28
29
|
* Endpoint for editing a mailbox's pushover settings.
|
|
29
30
|
* @param payload - The edit payload.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.mailboxEndpoints =
|
|
3
|
+
exports.mailboxEndpoints = mailboxEndpoints;
|
|
4
4
|
const request_factory_1 = require("../request-factory");
|
|
5
5
|
/**
|
|
6
6
|
* Binder function between the MailcowClient class and the MailboxEndpoints
|
|
@@ -35,8 +35,7 @@ function mailboxEndpoints(bind) {
|
|
|
35
35
|
},
|
|
36
36
|
getActiveUserSieve(mailbox) {
|
|
37
37
|
return bind.requestFactory.get(`/api/v1/get/active-user-sieve/${mailbox}`);
|
|
38
|
-
}
|
|
38
|
+
},
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
|
-
exports.mailboxEndpoints = mailboxEndpoints;
|
|
42
41
|
//# sourceMappingURL=mailbox-endpoint.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mailbox-endpoint.js","sourceRoot":"","sources":["../../src/Endpoints/mailbox-endpoint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mailbox-endpoint.js","sourceRoot":"","sources":["../../src/Endpoints/mailbox-endpoint.ts"],"names":[],"mappings":";;AA+EA,4CA2CC;AA9GD,wDAAwD;AA8DxD;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,IAAmB;IAClD,OAAO;QACL,MAAM,CAAC,OAA2B;YAChC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAsC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACvG,CAAC;QAED,MAAM,CAAC,OAA6B;YAClC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA4B,wBAAwB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1G,CAAC;QAED,IAAI,CAAC,OAA2B;YAC9B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAsC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QACxG,CAAC;QAED,GAAG,CAAC,UAAkB,KAAK;YACzB,OAAO,IAAA,oCAAkB,EACvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAsB,uBAAuB,OAAO,EAAE,CAAC,CAC/E,CAAC;QACJ,CAAC;QAED,YAAY,CAAC,OAA4B;YACvC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAuC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QAC1G,CAAC;QAED,cAAc,CAAC,OAA+B;YAC5C,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAC7B,sCAAsC,EACtC,OAAO,CACR,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,OAA6B;YACzC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAwC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QAC7G,CAAC;QAED,WAAW,CAAC,OAAuB;YACjC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAkC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QACrG,CAAC;QAED,kBAAkB,CAAC,OAAe;YAChC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAW,iCAAiC,OAAO,EAAE,CAAC,CAAC;QACvF,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.syncjobEndpoints =
|
|
3
|
+
exports.syncjobEndpoints = syncjobEndpoints;
|
|
4
4
|
function syncjobEndpoints(bind) {
|
|
5
5
|
return {
|
|
6
6
|
getAll() {
|
|
@@ -14,8 +14,7 @@ function syncjobEndpoints(bind) {
|
|
|
14
14
|
},
|
|
15
15
|
delete(payload) {
|
|
16
16
|
return bind.requestFactory.post('/api/v1/delete/syncjob', payload.items);
|
|
17
|
-
}
|
|
17
|
+
},
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
|
-
exports.syncjobEndpoints = syncjobEndpoints;
|
|
21
20
|
//# sourceMappingURL=syncjob-endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncjob-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/syncjob-endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"syncjob-endpoints.js","sourceRoot":"","sources":["../../src/Endpoints/syncjob-endpoints.ts"],"names":[],"mappings":";;AA4BA,4CAeC;AAfD,SAAgB,gBAAgB,CAAC,IAAmB;IAClD,OAAO;QACL,MAAM;YACJ,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAY,iCAAiC,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,CAAC,OAA2B;YAChC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAsC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACvG,CAAC;QACD,IAAI,CAAC,OAA6B;YAChC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAwC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAC1G,CAAC;QACD,MAAM,CAAC,OAA6B;YAClC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAA4B,wBAAwB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACtG,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { AliasEndpoints } from './Endpoints/alias-endpoints';
|
|
|
10
10
|
import { SyncjobEndpoints } from './Endpoints/syncjob-endpoints';
|
|
11
11
|
import { ForwardingEndpoints } from './Endpoints/forwarding-endpoints';
|
|
12
12
|
import { LogEndpoints } from './Endpoints/log-endpoints';
|
|
13
|
+
import { AdressRewritingEndpoints } from './Endpoints/address-rewriting-endpoint';
|
|
13
14
|
/**
|
|
14
15
|
* Class containing all the logic to interface with the Mailcow API in TypeScript.
|
|
15
16
|
* @external
|
|
@@ -24,10 +25,10 @@ declare class MailcowClient {
|
|
|
24
25
|
*/
|
|
25
26
|
readonly API_KEY: string;
|
|
26
27
|
/**
|
|
27
|
-
* The
|
|
28
|
+
* The request config used for every request.
|
|
28
29
|
* @internal
|
|
29
30
|
*/
|
|
30
|
-
|
|
31
|
+
AXIOS_CONFIG: AxiosRequestConfig;
|
|
31
32
|
/**
|
|
32
33
|
* Creates a MailcowClient using the given URL and API key.
|
|
33
34
|
* @param BASE_URL - The base URL of the Mailcow API.
|
|
@@ -76,6 +77,12 @@ declare class MailcowClient {
|
|
|
76
77
|
* @external
|
|
77
78
|
*/
|
|
78
79
|
forwardingHosts: ForwardingEndpoints;
|
|
80
|
+
/**
|
|
81
|
+
* All endpoints related to address rewriting.
|
|
82
|
+
* See {@link AdressRewritingEndpoints}
|
|
83
|
+
* @external
|
|
84
|
+
*/
|
|
85
|
+
addressRewriting: AdressRewritingEndpoints;
|
|
79
86
|
/**
|
|
80
87
|
* All endpoints related to logs.
|
|
81
88
|
* See {@link LogEndpoints}
|