mailgun.js 11.0.0 → 11.1.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/CHANGELOG.md +7 -0
- package/Classes/Domains/domainsClient.d.ts +11 -8
- package/Classes/Domains/domainsTracking.d.ts +15 -0
- package/Interfaces/Domains/DomainTracking.d.ts +8 -0
- package/Interfaces/Domains/DomainsClient.d.ts +2 -0
- package/Interfaces/Domains/index.d.ts +1 -0
- package/README.md +206 -124
- package/Types/Domains/DomainTracking.d.ts +16 -0
- package/Types/SecureTracking/SecureTracking.d.ts +13 -0
- package/Types/SecureTracking/index.d.ts +1 -0
- package/mailgun.node.js +2 -2
- package/mailgun.node.js.LICENSE.txt +1 -1
- package/mailgun.web.js +2 -2
- package/mailgun.web.js.LICENSE.txt +1 -1
- package/package.json +1 -1
- package/version.md +1 -1
- package/Classes/Domains/domains.d.ts +0 -51
- package/Classes/InboxPlacements/Results/InboxPlacementsResultsClient.ts +0 -18
- package/Classes/InboxPlacements/Results/InboxPlacementsResultsSharing.ts +0 -10
- package/Classes/InboxPlacements/SeedsLists/AttributesClient.d.ts +0 -10
- package/Classes/InboxPlacements/SeedsLists/FiltersClient.d.ts +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [11.1.0](https://github.com/mailgun/mailgun.js/compare/v11.0.0...v11.1.0) (2025-01-09)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* Adding Secure Tracking API support ([b5ff1e0](https://github.com/mailgun/mailgun.js/commits/b5ff1e0a4c6982b302add9b25712818082a62fd0))
|
|
11
|
+
|
|
5
12
|
## [11.0.0](https://github.com/mailgun/mailgun.js/compare/v10.4.0...v11.0.0) (2025-01-09)
|
|
6
13
|
|
|
7
14
|
|
|
@@ -1,25 +1,20 @@
|
|
|
1
1
|
import { IDomainTemplatesClient, IDomainTagsClient, IDomainCredentials, IDomainsClient } from '../../Interfaces/Domains';
|
|
2
2
|
import { APIResponse } from '../../Types/Common/ApiResponse';
|
|
3
3
|
import Request from '../common/Request';
|
|
4
|
-
import DomainCredentialsClient from './domainsCredentials';
|
|
5
|
-
import DomainTemplatesClient from './domainsTemplates';
|
|
6
|
-
import DomainTagsClient from './domainsTags';
|
|
7
4
|
import { MessageResponse, DomainTrackingData, UpdatedOpenTracking, DomainsQuery, DomainInfo, ConnectionSettings, UpdatedConnectionSettings, OpenTrackingInfo, ClickTrackingInfo, UnsubscribeTrackingInfo, ReplacementForPool, DKIMAuthorityInfo, UpdatedDKIMAuthority, DKIMSelectorInfo, WebPrefixInfo, UpdatedWebPrefixResponse, TDomain, DomainUpdateInfo, DomainGetQuery, UpdatedDKIMSelectorResult } from '../../Types/Domains';
|
|
8
|
-
import { ILogger } from '../../Interfaces';
|
|
5
|
+
import { ILogger, IDomainTrackingClient } from '../../Interfaces';
|
|
9
6
|
export default class DomainsClient implements IDomainsClient {
|
|
10
7
|
request: Request;
|
|
11
8
|
domainCredentials: IDomainCredentials;
|
|
12
9
|
domainTemplates: IDomainTemplatesClient;
|
|
13
10
|
domainTags: IDomainTagsClient;
|
|
11
|
+
domainTracking: IDomainTrackingClient;
|
|
14
12
|
private logger;
|
|
15
|
-
constructor(request: Request, domainCredentialsClient:
|
|
13
|
+
constructor(request: Request, domainCredentialsClient: IDomainCredentials, domainTemplatesClient: IDomainTemplatesClient, domainTagsClient: IDomainTagsClient, domainTracking: IDomainTrackingClient, logger?: ILogger);
|
|
16
14
|
private _handleBoolValues;
|
|
17
15
|
private _parseMessage;
|
|
18
16
|
private parseDomainList;
|
|
19
17
|
private _parseDomain;
|
|
20
|
-
private _parseTrackingSettings;
|
|
21
|
-
private _parseTrackingUpdate;
|
|
22
|
-
private _isOpenTrackingInfoWitPlace;
|
|
23
18
|
list(query?: DomainsQuery): Promise<TDomain[]>;
|
|
24
19
|
get(domain: string, query?: DomainGetQuery): Promise<TDomain>;
|
|
25
20
|
create(data: DomainInfo): Promise<TDomain>;
|
|
@@ -28,7 +23,15 @@ export default class DomainsClient implements IDomainsClient {
|
|
|
28
23
|
destroy(domain: string): Promise<MessageResponse>;
|
|
29
24
|
getConnection(domain: string): Promise<ConnectionSettings>;
|
|
30
25
|
updateConnection(domain: string, data: ConnectionSettings): Promise<UpdatedConnectionSettings>;
|
|
26
|
+
/**
|
|
27
|
+
* @deprecated 'domains.getTracking' method is deprecated, and will be removed.
|
|
28
|
+
* Please use 'domains.domainTracking.getTracking' instead.
|
|
29
|
+
*/
|
|
31
30
|
getTracking(domain: string): Promise<DomainTrackingData>;
|
|
31
|
+
/**
|
|
32
|
+
* @deprecated 'domains.updateTracking' method is deprecated, and will be removed.
|
|
33
|
+
* Please use 'domains.domainTracking.updateTracking' instead.
|
|
34
|
+
*/
|
|
32
35
|
updateTracking(domain: string, type: string, data: OpenTrackingInfo | ClickTrackingInfo | UnsubscribeTrackingInfo): Promise<UpdatedOpenTracking>;
|
|
33
36
|
/**
|
|
34
37
|
* @deprecated "domains.getIps" method is deprecated, and will be removed in the future releases.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IDomainTrackingClient } from '../../Interfaces';
|
|
2
|
+
import { ClickTrackingInfo, DomainTrackingData, GenerateDomainTrackingCertificateResponse, GetDomainTrackingCertificateResponse, OpenTrackingInfo, RegenerateDomainTrackingCertificateResponse, UnsubscribeTrackingInfo, UpdatedOpenTracking } from '../../Types';
|
|
3
|
+
import Request from '../common/Request';
|
|
4
|
+
export default class DomainTrackingClient implements IDomainTrackingClient {
|
|
5
|
+
request: Request;
|
|
6
|
+
constructor(request: Request);
|
|
7
|
+
private _parseTrackingSettings;
|
|
8
|
+
private _parseTrackingUpdate;
|
|
9
|
+
private _isOpenTrackingInfoWitPlace;
|
|
10
|
+
get(domain: string): Promise<GetDomainTrackingCertificateResponse>;
|
|
11
|
+
generate(domain: string): Promise<GenerateDomainTrackingCertificateResponse>;
|
|
12
|
+
regenerate(domain: string): Promise<RegenerateDomainTrackingCertificateResponse>;
|
|
13
|
+
getTracking(domain: string): Promise<DomainTrackingData>;
|
|
14
|
+
updateTracking(domain: string, type: string, data: OpenTrackingInfo | ClickTrackingInfo | UnsubscribeTrackingInfo): Promise<UpdatedOpenTracking>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ClickTrackingInfo, DomainTrackingData, GenerateDomainTrackingCertificateResponse, GetDomainTrackingCertificateResponse, OpenTrackingInfo, RegenerateDomainTrackingCertificateResponse, UnsubscribeTrackingInfo, UpdatedOpenTracking } from '../../Types';
|
|
2
|
+
export interface IDomainTrackingClient {
|
|
3
|
+
get(domain: string): Promise<GetDomainTrackingCertificateResponse>;
|
|
4
|
+
generate(domain: string): Promise<GenerateDomainTrackingCertificateResponse>;
|
|
5
|
+
regenerate(domain: string): Promise<RegenerateDomainTrackingCertificateResponse>;
|
|
6
|
+
getTracking(domain: string): Promise<DomainTrackingData>;
|
|
7
|
+
updateTracking(domain: string, type: string, data: OpenTrackingInfo | ClickTrackingInfo | UnsubscribeTrackingInfo): Promise<UpdatedOpenTracking>;
|
|
8
|
+
}
|
|
@@ -3,10 +3,12 @@ import { ClickTrackingInfo, ConnectionSettings, DKIMAuthorityInfo, DKIMSelectorI
|
|
|
3
3
|
import { IDomainCredentials } from './DomainCredentials';
|
|
4
4
|
import { IDomainTagsClient } from './DomainTags';
|
|
5
5
|
import { IDomainTemplatesClient } from './DomainTemplates';
|
|
6
|
+
import { IDomainTrackingClient } from './DomainTracking';
|
|
6
7
|
export interface IDomainsClient {
|
|
7
8
|
domainCredentials: IDomainCredentials;
|
|
8
9
|
domainTemplates: IDomainTemplatesClient;
|
|
9
10
|
domainTags: IDomainTagsClient;
|
|
11
|
+
domainTracking: IDomainTrackingClient;
|
|
10
12
|
list(query?: DomainsQuery): Promise<TDomain[]>;
|
|
11
13
|
get(domain: string, query?: DomainGetQuery): Promise<TDomain>;
|
|
12
14
|
create(data: DomainInfo): Promise<TDomain>;
|
package/README.md
CHANGED
|
@@ -149,6 +149,9 @@ The following service methods are available to instantiated clients. The example
|
|
|
149
149
|
- [createVersion](#createversion)
|
|
150
150
|
- [updateVersion](#updateversion)
|
|
151
151
|
- [destroyVersion](#destroyversion)
|
|
152
|
+
- [domain tracking](#domain-tracking)
|
|
153
|
+
- [getTracking](#gettracking-1)
|
|
154
|
+
- [updateTracking](#updatetracking-1)
|
|
152
155
|
- [events](#events)
|
|
153
156
|
- [get](#get-2)
|
|
154
157
|
- [Example with Date and *Filter field*](#example-with-date-and-filter-field)
|
|
@@ -906,133 +909,11 @@ The following service methods are available to instantiated clients. The example
|
|
|
906
909
|
}
|
|
907
910
|
```
|
|
908
911
|
|
|
909
|
-
|
|
910
912
|
- #### getTracking
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
`mg.domains.getTracking(domainAddress)` [api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking)
|
|
914
|
-
|
|
915
|
-
Example:
|
|
916
|
-
|
|
917
|
-
```JS
|
|
918
|
-
mg.domains.getTracking('foobar.example.com')
|
|
919
|
-
.then(msg => console.log(msg)) // logs response data
|
|
920
|
-
.catch(err => console.error(err)); // logs any error
|
|
921
|
-
```
|
|
922
|
-
|
|
923
|
-
Promise returns:
|
|
924
|
-
|
|
925
|
-
```JS
|
|
926
|
-
{
|
|
927
|
-
"click": {
|
|
928
|
-
"active": false
|
|
929
|
-
},
|
|
930
|
-
"open": {
|
|
931
|
-
"active": false
|
|
932
|
-
},
|
|
933
|
-
"unsubscribe": {
|
|
934
|
-
"active": false,
|
|
935
|
-
"html_footer": "\n<br>\n<p><a href=\"%unsubscribe_url%\">unsubscribe</a></p>\n",
|
|
936
|
-
"text_footer": "\n\nTo unsubscribe click: <%unsubscribe_url%>\n\n"
|
|
937
|
-
}
|
|
938
|
-
}
|
|
939
|
-
```
|
|
913
|
+
`domains.getTracking` method is deprecated, and will be removed. Please use `domains.domainTracking.getTracking` instead.
|
|
940
914
|
|
|
941
915
|
- #### updateTracking
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
`mg.domains.updateTracking(domain, trackingType, data)`
|
|
945
|
-
|
|
946
|
-
- Open Tracking Example:
|
|
947
|
-
|
|
948
|
-
[api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/PUT-v3-domains--name--tracking-open)
|
|
949
|
-
```js
|
|
950
|
-
mg.domains.updateTracking('foobar.example.com', 'open', {
|
|
951
|
-
active: true,
|
|
952
|
-
place_at_the_top: true,
|
|
953
|
-
})
|
|
954
|
-
.then(msg => console.log(msg)) // logs response data
|
|
955
|
-
.catch(err => console.error(err)); // logs any error
|
|
956
|
-
```
|
|
957
|
-
|
|
958
|
-
Open tracking data object properties:
|
|
959
|
-
|
|
960
|
-
| Property | Description |
|
|
961
|
-
|:----------|:-------------------------------------------|
|
|
962
|
-
| active | Boolean, enables or disables open tracking |
|
|
963
|
-
| place_at_the_top| Setting this param to true will place the open tracking pixel at the top of the HTML body when inserted into the email mime. Omit this param to keep current setting. |
|
|
964
|
-
|
|
965
|
-
Promise returns:
|
|
966
|
-
|
|
967
|
-
```JS
|
|
968
|
-
{
|
|
969
|
-
message: 'Tracking settings have been updated',
|
|
970
|
-
open: {
|
|
971
|
-
active: true,
|
|
972
|
-
place_at_the_top: true,
|
|
973
|
-
}
|
|
974
|
-
}
|
|
975
|
-
```
|
|
976
|
-
|
|
977
|
-
- Click Tracking Example:
|
|
978
|
-
|
|
979
|
-
[api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/PUT-v3-domains--name--tracking-click)
|
|
980
|
-
```JS
|
|
981
|
-
mg.domains.updateTracking('foobar.example.com', 'click', {active: true})
|
|
982
|
-
.then(msg => console.log(msg)) // logs response data
|
|
983
|
-
.catch(err => console.error(err)); // logs any error
|
|
984
|
-
```
|
|
985
|
-
|
|
986
|
-
Click tracking data object properties:
|
|
987
|
-
|
|
988
|
-
| Property | Description |
|
|
989
|
-
|:----------|:--------------------------------------------|
|
|
990
|
-
| active | Boolean, enables or disables click tracking |
|
|
991
|
-
|
|
992
|
-
Promise returns:
|
|
993
|
-
|
|
994
|
-
```JS
|
|
995
|
-
{
|
|
996
|
-
message: 'Tracking settings have been updated',
|
|
997
|
-
click: {
|
|
998
|
-
active: true
|
|
999
|
-
}
|
|
1000
|
-
}
|
|
1001
|
-
```
|
|
1002
|
-
|
|
1003
|
-
- Unsubscribe Tracking Example
|
|
1004
|
-
|
|
1005
|
-
[api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/PUT-v3-domains--name--tracking-unsubscribe)
|
|
1006
|
-
```js
|
|
1007
|
-
mg.domains.updateTracking('foobar.example.com', 'unsubscribe', {
|
|
1008
|
-
active: true,
|
|
1009
|
-
html_footer: "\n<br>\n<p><a href=\"%unsubscribe_url%\">unsubscribe</a></p>\n",
|
|
1010
|
-
text_footer: "\n\nTo unsubscribe click: <%unsubscribe_url%>\n\n"
|
|
1011
|
-
})
|
|
1012
|
-
.then(msg => console.log(msg)) // logs response data
|
|
1013
|
-
.catch(err => console.error(err)); // logs any error
|
|
1014
|
-
```
|
|
1015
|
-
|
|
1016
|
-
Unsubscribe Tracking data object properties:
|
|
1017
|
-
|
|
1018
|
-
| Property | Description |
|
|
1019
|
-
|:------------|:--------------------------------------------------------------|
|
|
1020
|
-
| active | Boolean, enables or disables unsubscribe tracking |
|
|
1021
|
-
| html_footer | string appended to html emails for managing unsubscribe links |
|
|
1022
|
-
| text_footer | string appended to html emails for managing unsubscribe links |
|
|
1023
|
-
|
|
1024
|
-
Promise returns:
|
|
1025
|
-
|
|
1026
|
-
```JS
|
|
1027
|
-
{
|
|
1028
|
-
message: 'Tracking settings have been updated',
|
|
1029
|
-
unsubscribe: {
|
|
1030
|
-
active: true,
|
|
1031
|
-
html_footer: '\n<br>\n<p><a href=\'%unsubscribe_url%\">unsubscribe</a></p>\n',
|
|
1032
|
-
text_footer: '\n\nTo unsubscribe click: <%unsubscribe_url%>\n\n'
|
|
1033
|
-
}
|
|
1034
|
-
}
|
|
1035
|
-
```
|
|
916
|
+
`domains.updateTracking` method is deprecated, and will be removed. Please use `domains.domainTracking.updateTracking` instead.
|
|
1036
917
|
|
|
1037
918
|
- #### getConnection
|
|
1038
919
|
Returns domain's delivery connection settings.
|
|
@@ -1644,6 +1525,207 @@ The following service methods are available to instantiated clients. The example
|
|
|
1644
1525
|
}
|
|
1645
1526
|
```
|
|
1646
1527
|
|
|
1528
|
+
### Domain tracking
|
|
1529
|
+
|
|
1530
|
+
- #### getTracking
|
|
1531
|
+
|
|
1532
|
+
Mailgun offers tracking for clicks, unsubscribes, and opens, with optional HTTPS protocol support on tracking URLs. To enable HTTPS, Mailgun uses Let’s Encrypt with HTTP-01 challenges through your existing tracking CNAME record to issue a TLS certificate. This setup also includes support for HTTP Strict Transport Security (HSTS) for enhanced security.
|
|
1533
|
+
|
|
1534
|
+
`mg.domains.domainTracking.getTracking(domainAddress)` [api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking)
|
|
1535
|
+
|
|
1536
|
+
Example:
|
|
1537
|
+
|
|
1538
|
+
```JS
|
|
1539
|
+
mg.domains.domainTracking.getTracking('foobar.example.com')
|
|
1540
|
+
.then(msg => console.log(msg)) // logs response data
|
|
1541
|
+
.catch(err => console.error(err)); // logs any error
|
|
1542
|
+
```
|
|
1543
|
+
|
|
1544
|
+
Promise returns:
|
|
1545
|
+
|
|
1546
|
+
```JS
|
|
1547
|
+
{
|
|
1548
|
+
"click": {
|
|
1549
|
+
"active": false
|
|
1550
|
+
},
|
|
1551
|
+
"open": {
|
|
1552
|
+
"active": false
|
|
1553
|
+
},
|
|
1554
|
+
"unsubscribe": {
|
|
1555
|
+
"active": false,
|
|
1556
|
+
"html_footer": "\n<br>\n<p><a href=\"%unsubscribe_url%\">unsubscribe</a></p>\n",
|
|
1557
|
+
"text_footer": "\n\nTo unsubscribe click: <%unsubscribe_url%>\n\n"
|
|
1558
|
+
}
|
|
1559
|
+
}
|
|
1560
|
+
```
|
|
1561
|
+
|
|
1562
|
+
- #### updateTracking
|
|
1563
|
+
|
|
1564
|
+
A common method to turn on/off the click, open, and unsubscribe tracking at the domain level.
|
|
1565
|
+
|
|
1566
|
+
`mg.domains.domainTracking.updateTracking(domain, trackingType, data)`
|
|
1567
|
+
|
|
1568
|
+
- Open Tracking Example:
|
|
1569
|
+
|
|
1570
|
+
[api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/PUT-v3-domains--name--tracking-open)
|
|
1571
|
+
```js
|
|
1572
|
+
mg.domains.domainTracking.updateTracking('foobar.example.com', 'open', {
|
|
1573
|
+
active: true,
|
|
1574
|
+
place_at_the_top: true,
|
|
1575
|
+
})
|
|
1576
|
+
.then(msg => console.log(msg)) // logs response data
|
|
1577
|
+
.catch(err => console.error(err)); // logs any error
|
|
1578
|
+
```
|
|
1579
|
+
|
|
1580
|
+
Open tracking data object properties:
|
|
1581
|
+
|
|
1582
|
+
| Property | Description |
|
|
1583
|
+
|:----------|:-------------------------------------------|
|
|
1584
|
+
| active | Boolean, enables or disables open tracking |
|
|
1585
|
+
| place_at_the_top| Setting this param to true will place the open tracking pixel at the top of the HTML body when inserted into the email mime. Omit this param to keep current setting. |
|
|
1586
|
+
|
|
1587
|
+
Promise returns:
|
|
1588
|
+
|
|
1589
|
+
```JS
|
|
1590
|
+
{
|
|
1591
|
+
message: 'Tracking settings have been updated',
|
|
1592
|
+
open: {
|
|
1593
|
+
active: true,
|
|
1594
|
+
place_at_the_top: true,
|
|
1595
|
+
}
|
|
1596
|
+
}
|
|
1597
|
+
```
|
|
1598
|
+
|
|
1599
|
+
- Click Tracking Example:
|
|
1600
|
+
|
|
1601
|
+
[api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/PUT-v3-domains--name--tracking-click)
|
|
1602
|
+
```JS
|
|
1603
|
+
mg.domains.domainTracking.updateTracking('foobar.example.com', 'click', {active: true})
|
|
1604
|
+
.then(msg => console.log(msg)) // logs response data
|
|
1605
|
+
.catch(err => console.error(err)); // logs any error
|
|
1606
|
+
```
|
|
1607
|
+
|
|
1608
|
+
Click tracking data object properties:
|
|
1609
|
+
|
|
1610
|
+
| Property | Description |
|
|
1611
|
+
|:----------|:--------------------------------------------|
|
|
1612
|
+
| active | Boolean, enables or disables click tracking |
|
|
1613
|
+
|
|
1614
|
+
Promise returns:
|
|
1615
|
+
|
|
1616
|
+
```JS
|
|
1617
|
+
{
|
|
1618
|
+
message: 'Tracking settings have been updated',
|
|
1619
|
+
click: {
|
|
1620
|
+
active: true
|
|
1621
|
+
}
|
|
1622
|
+
}
|
|
1623
|
+
```
|
|
1624
|
+
|
|
1625
|
+
- Unsubscribe Tracking Example
|
|
1626
|
+
|
|
1627
|
+
[api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/PUT-v3-domains--name--tracking-unsubscribe)
|
|
1628
|
+
```js
|
|
1629
|
+
mg.domains.domainTracking.updateTracking('foobar.example.com', 'unsubscribe', {
|
|
1630
|
+
active: true,
|
|
1631
|
+
html_footer: "\n<br>\n<p><a href=\"%unsubscribe_url%\">unsubscribe</a></p>\n",
|
|
1632
|
+
text_footer: "\n\nTo unsubscribe click: <%unsubscribe_url%>\n\n"
|
|
1633
|
+
})
|
|
1634
|
+
.then(msg => console.log(msg)) // logs response data
|
|
1635
|
+
.catch(err => console.error(err)); // logs any error
|
|
1636
|
+
```
|
|
1637
|
+
|
|
1638
|
+
Unsubscribe Tracking data object properties:
|
|
1639
|
+
|
|
1640
|
+
| Property | Description |
|
|
1641
|
+
|:------------|:--------------------------------------------------------------|
|
|
1642
|
+
| active | Boolean, enables or disables unsubscribe tracking |
|
|
1643
|
+
| html_footer | string appended to html emails for managing unsubscribe links |
|
|
1644
|
+
| text_footer | string appended to html emails for managing unsubscribe links |
|
|
1645
|
+
|
|
1646
|
+
Promise returns:
|
|
1647
|
+
|
|
1648
|
+
```JS
|
|
1649
|
+
{
|
|
1650
|
+
message: 'Tracking settings have been updated',
|
|
1651
|
+
unsubscribe: {
|
|
1652
|
+
active: true,
|
|
1653
|
+
html_footer: '\n<br>\n<p><a href=\'%unsubscribe_url%\">unsubscribe</a></p>\n',
|
|
1654
|
+
text_footer: '\n\nTo unsubscribe click: <%unsubscribe_url%>\n\n'
|
|
1655
|
+
}
|
|
1656
|
+
}
|
|
1657
|
+
```
|
|
1658
|
+
|
|
1659
|
+
- #### get
|
|
1660
|
+
Get x509 TLS certificate and status
|
|
1661
|
+
|
|
1662
|
+
`mg.domains.domainTracking.get(domainAddress)` [api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/httpapi.(*HttpAPI).getStatusV2-fm-8)
|
|
1663
|
+
|
|
1664
|
+
Example:
|
|
1665
|
+
|
|
1666
|
+
```JS
|
|
1667
|
+
mg.domains.domainTracking.get('foobar.example.com')
|
|
1668
|
+
.then(msg => console.log(msg)) // logs response data
|
|
1669
|
+
.catch(err => console.error(err)); // logs any error
|
|
1670
|
+
```
|
|
1671
|
+
|
|
1672
|
+
Promise returns:
|
|
1673
|
+
|
|
1674
|
+
```JS
|
|
1675
|
+
{
|
|
1676
|
+
responseStatusCode: 200,
|
|
1677
|
+
status: 'expired',
|
|
1678
|
+
error: 'x509 certificate has expired',
|
|
1679
|
+
certificate: '{CERT}';
|
|
1680
|
+
}
|
|
1681
|
+
```
|
|
1682
|
+
|
|
1683
|
+
- #### generate
|
|
1684
|
+
Initiates generation of a TLS certificate for the tracking domain in a background task. Once generation is enqueued, you may poll the status endpoint in location field to check for success
|
|
1685
|
+
|
|
1686
|
+
`mg.domains.domainTracking.generate(domainAddress)` [api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/httpapi.(*HttpAPI).generateStatusV2-fm-8)
|
|
1687
|
+
|
|
1688
|
+
Example:
|
|
1689
|
+
|
|
1690
|
+
```JS
|
|
1691
|
+
mg.domains.domainTracking.generate('foobar.example.com')
|
|
1692
|
+
.then(msg => console.log(msg)) // logs response data
|
|
1693
|
+
.catch(err => console.error(err)); // logs any error
|
|
1694
|
+
```
|
|
1695
|
+
|
|
1696
|
+
Promise returns:
|
|
1697
|
+
|
|
1698
|
+
```JS
|
|
1699
|
+
{
|
|
1700
|
+
message: 'Initiated x509 key pair generation',
|
|
1701
|
+
location: '/v2/x509/example.com/status',
|
|
1702
|
+
status: 202,
|
|
1703
|
+
}
|
|
1704
|
+
```
|
|
1705
|
+
|
|
1706
|
+
- #### regenerate
|
|
1707
|
+
Initiates regeneration of an expired TLS certificate for the tracking domain in a background task. Once generation is enqueued, you may poll status endpoint in location field to check for success. This will not regenerate an existing certificate that is still valid
|
|
1708
|
+
|
|
1709
|
+
`mg.domains.domainTracking.regenerate(domainAddress)` [api docs](https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Domain-Tracking/#tag/Domain-Tracking/operation/httpapi.(*HttpAPI).generateStatusV2-fm-8)
|
|
1710
|
+
|
|
1711
|
+
Example:
|
|
1712
|
+
|
|
1713
|
+
```JS
|
|
1714
|
+
mg.domains.domainTracking.regenerate('foobar.example.com')
|
|
1715
|
+
.then(msg => console.log(msg)) // logs response data
|
|
1716
|
+
.catch(err => console.error(err)); // logs any error
|
|
1717
|
+
```
|
|
1718
|
+
|
|
1719
|
+
Promise returns:
|
|
1720
|
+
|
|
1721
|
+
```JS
|
|
1722
|
+
{
|
|
1723
|
+
message: 'Initiated x509 key pair generation',
|
|
1724
|
+
location: '/v2/x509/example.com/status',
|
|
1725
|
+
status: 202,
|
|
1726
|
+
}
|
|
1727
|
+
```
|
|
1728
|
+
|
|
1647
1729
|
### Events
|
|
1648
1730
|
|
|
1649
1731
|
- #### get
|
|
@@ -47,3 +47,19 @@ export type UnsubscribeTrackingInfo = {
|
|
|
47
47
|
html_footer?: string;
|
|
48
48
|
text_footer?: string;
|
|
49
49
|
};
|
|
50
|
+
export type GetDomainTrackingCertificateResponse = {
|
|
51
|
+
responseStatusCode: number;
|
|
52
|
+
status: string;
|
|
53
|
+
error: string;
|
|
54
|
+
certificate: string;
|
|
55
|
+
};
|
|
56
|
+
export type GenerateDomainTrackingCertificateResponse = {
|
|
57
|
+
message: string;
|
|
58
|
+
location: string;
|
|
59
|
+
status: number;
|
|
60
|
+
};
|
|
61
|
+
export type RegenerateDomainTrackingCertificateResponse = {
|
|
62
|
+
message: string;
|
|
63
|
+
location: string;
|
|
64
|
+
status: number;
|
|
65
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type GetDomainTrackingCertificateResponse = {
|
|
2
|
+
status: string;
|
|
3
|
+
error: string;
|
|
4
|
+
certificate: string;
|
|
5
|
+
};
|
|
6
|
+
export type GenerateDomainTrackingCertificateResponse = {
|
|
7
|
+
message: string;
|
|
8
|
+
location: string;
|
|
9
|
+
};
|
|
10
|
+
export type RegenerateDomainTrackingCertificateResponse = {
|
|
11
|
+
message: string;
|
|
12
|
+
location: string;
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './SecureTracking';
|