logoDocumentación
Buscar
Iniciar sesión

Tracking Domain

Manage your tracking domains.


Query

Get the list of tracking domains

URL

https://email.api.engagelab.cc/v1/tracking-domains
              
              https://email.api.engagelab.cc/v1/tracking-domains

            
Este bloque de código se muestra en una ventana flotante

HTTP Request Method

GET
              
              GET

            
Este bloque de código se muestra en una ventana flotante

Request Headers

Header Type Required Description
Authorization String true Basic base64(apiUser:apiKey)

Query Parameter Description

Parameter Type Required or not Description
name string no domain name
offset int no offset position, [0-], defaults to 0
limit int no amount, [0-100],defaults to 100

Request Example

curl "https://email.api.engagelab.cc/v1/tracking-domains?name=engagelab.com" --header "Authorization: Basic <<YOUR_API_KEY_HERE>>"
              
              curl "https://email.api.engagelab.cc/v1/tracking-domains?name=engagelab.com" 
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" 

            
Este bloque de código se muestra en una ventana flotante

Returned value description

Parameter Description
domain_id domain ID
name domain name
cname details about the domain's CNAME record
verify whether the configuration is successful (true or false)
verify_message an message describing the CNAME record, or null if the record is correct
required_record CNAME record to configure
existed_record the CNAME record configured by the user
cert details about the domain's certificate
verify whether the configuration is successful (true or false)
verify_message the certificate has not been uploaded, the certificate is being configured, the certificate has taken effect, the certificate has expired
expired_date expired date
create_time time of domain creation
update_time time of domain modification

Returned Value Example

Response-success

HTTP Status: 200

{ "result": [ { "domain_id": 1000403, "name": "track.leonww.asia", "create_time": "2025-04-18T13:27:38+0800", "update_time": "2025-09-04T12:32:56+0800", "cname": { "verify": true, "verify_message": "The configuration is successful", "required_record": "track01.engagelab.email", "existed_record": "track01.engagelab.email" }, "cert": { "verify": true, "verify_message": "the certificate has taken effect", "expired_date": "2025-12-02T07:59:59+0800" } }, { "domain_id": 1000402, "name": "track.myMail.com", "create_time": "2025-04-18T13:05:57+0800", "update_time": "2025-04-18T13:05:57+0800", "cname": { "verify": false, "verify_message": "The cname record is not configured", "required_record": "track01.engagelab.email", "existed_record": "" }, "cert": { "verify": false, "verify_message": "the certificate has not been uploaded", "expired_date": "" } } ], "total": 2, "count": 2 }
              
              {
    "result": [
        {
            "domain_id": 1000403,
            "name": "track.leonww.asia",
            "create_time": "2025-04-18T13:27:38+0800",
            "update_time": "2025-09-04T12:32:56+0800",
            "cname": {
                "verify": true,
                "verify_message": "The configuration is successful",
                "required_record": "track01.engagelab.email",
                "existed_record": "track01.engagelab.email"
            },
            "cert": {
                "verify": true,
                "verify_message": "the certificate has taken effect",
                "expired_date": "2025-12-02T07:59:59+0800"
            }
        },
        {
            "domain_id": 1000402,
            "name": "track.myMail.com",
            "create_time": "2025-04-18T13:05:57+0800",
            "update_time": "2025-04-18T13:05:57+0800",
            "cname": {
                "verify": false,
                "verify_message": "The cname record is not configured",
                "required_record": "track01.engagelab.email",
                "existed_record": ""
            },
            "cert": {
                "verify": false,
                "verify_message": "the certificate has not been uploaded",
                "expired_date": ""
            }
        }
    ],
    "total": 2,
    "count": 2
}

            
Este bloque de código se muestra en una ventana flotante

Response-error

HTTP Status :401

{ "code": 30000, "message": "Unauthorized." }
              
              { 
    "code": 30000,
    "message": "Unauthorized."
}

            
Este bloque de código se muestra en una ventana flotante

Add

Add a tracking domain to your account.

URL

https://email.api.engagelab.cc/v1/tracking-domains
              
              https://email.api.engagelab.cc/v1/tracking-domains

            
Este bloque de código se muestra en una ventana flotante

Content-Type:

application/json; charset=utf-8
              
              application/json; charset=utf-8

            
Este bloque de código se muestra en una ventana flotante

HTTP Request Method

POST
              
              POST

            
Este bloque de código se muestra en una ventana flotante

Request Headers

Header Type Required Description
Authorization String true Basic base64(apiUser:apiKey)

Body Parameter Description

Parameter Type Required or not Description
name string yes domain name

Tips:

  1. You can add up to 5 custom tracking domain names. The domain name cannot be modified once its configuration is verified. An incorrect configuration may cause links in emails to be unclickable, tracking data to be inaccurate, etc.

  2. Due to the upgrade of Chrome and other browsers,the loading of HTTP resources will be prohibited in the future,which will lead to incorrect interception and tracking data,etc.It is suggested that you 2. Due to upgrades in Chrome and other browsers, the loading of HTTP resources will be blocked in the future. This may lead to content being marked incorrectly (e.g., as unsafe) and cause tracking data issues. It is strongly recommended to upload an SSL certificate for HTTPS configuration and enable HTTPS tracking.upload SSL certificates in the HTTPS configuration and enable HTTPS tracking.

Request Example

curl -X POST "https://email.api.engagelab.cc/v1/tracking-domains" --header "Authorization: Basic <<YOUR_API_KEY_HERE>>" --header "Content-Type: application/json" --data '{ "name":"track.leonww.asia" }'
              
              curl -X POST "https://email.api.engagelab.cc/v1/tracking-domains" 
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" 
--header "Content-Type: application/json" 
--data '{
  "name":"track.leonww.asia"
}'

            
Este bloque de código se muestra en una ventana flotante

Returned value description

Parameter Description
domain_id domain ID
name domain name
cname details about the domain's CNAME record
verify whether the configuration is successful (true or false)
verify_message an message describing the CNAME record, or null if the record is correct
required_record CNAME record to configure
existed_record existing CNAME record
create_time time of domain creation
update_time time of domain modification

Returned value example

Response-success

HTTP Status: 200

{ "result": { "domain_id": 1000423, "name": "track.leonww.asia", "create_time": "2025-09-03T13:42:41+0800", "update_time": "2025-09-03T13:42:41+0800", "cname": { "verify": false, "verify_message": "The cname record is not configured", "required_record": "track01.engagelab.email", "existed_record": "" } } }
              
              {
    "result": 
        {
            "domain_id": 1000423,
            "name": "track.leonww.asia",
            "create_time": "2025-09-03T13:42:41+0800",
            "update_time": "2025-09-03T13:42:41+0800",
            "cname": {
                "verify": false,
                "verify_message": "The cname record is not configured",
                "required_record": "track01.engagelab.email",
                "existed_record": ""
            }
        }    
}

            
Este bloque de código se muestra en una ventana flotante

Response-error

HTTP Status :400

{ "code": 31003, "message": "Domain name format error" }
              
              {
    "code": 31003,
    "message": "Domain name format error"
}

            
Este bloque de código se muestra en una ventana flotante

Modify

Modify tracking domains through this interface

URL

https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}
              
              https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}

            
Este bloque de código se muestra en una ventana flotante

Content-Type:

application/json; charset=utf-8
              
              application/json; charset=utf-8

            
Este bloque de código se muestra en una ventana flotante

HTTP Request Method

PUT
              
              PUT

            
Este bloque de código se muestra en una ventana flotante

Request Headers

Header Type Required Description
Authorization String true Basic base64(apiUser:apiKey)

Body Parameter Description

Parameter Type Required or not Description
name string yes domain name. It must conform to the domain name format, can only contain alphanumeric characters, hyphens (-), and periods (.), and must be between 4 and 255 characters long (e.g., mail.test.best).

Request Example

curl -X PUT "https://email.api.engagelab.cc/v1/tracking-domains/22332" --header "Authorization: Basic <<YOUR_API_KEY_HERE>>" --header "Content-Type: application/json" --data '{ "name":"aizl.net", }'
              
              curl -X PUT "https://email.api.engagelab.cc/v1/tracking-domains/22332" 
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" 
--header "Content-Type: application/json" 
--data '{
  "name":"aizl.net",
}'

            
Este bloque de código se muestra en una ventana flotante

Returned value example

Response-success

HTTP Status: 200

{ "count": 1 }
              
              {
    "count": 1
}

            
Este bloque de código se muestra en una ventana flotante

Response-error

HTTP Status :400

{ "code": 31003, "message": "Domain name format error" }
              
              {  
    "code": 31003,
    "message": "Domain name format error"
}

            
Este bloque de código se muestra en una ventana flotante

Verify

Verify tracking domains through this interface

URL

https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/verify
              
              https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/verify

            
Este bloque de código se muestra en una ventana flotante

HTTP Request Method

GET
              
              GET

            
Este bloque de código se muestra en una ventana flotante

Note

Return to domains with verified configuration.
              
              Return to domains with verified configuration.

            
Este bloque de código se muestra en una ventana flotante

Request Example

curl -X POST "https://email.api.engagelab.cc/v1/tracking-domains/123/verify" --header "Authorization: Basic <<YOUR_API_KEY_HERE>>"
              
              curl -X POST "https://email.api.engagelab.cc/v1/tracking-domains/123/verify" 
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" 

            
Este bloque de código se muestra en una ventana flotante

Returned value description

Parameter Description
domain_id domain ID
name domain name
cname details about the domain's CNAME record
verify whether the configuration is successful (true or false)
verify_message an message describing the CNAME record, or null if the record is correct
required_record CNAME record to configure
existed_record existing CNAME record
cert details about the domain's certificate
verify whether the configuration is successful (true or false)
verify_message the certificate has not been uploaded, the certificate is being configured, the certificate has taken effect, the certificate has expired
expired_date expired_date
create_time time of domain creation
update_time time of domain modification

Returned Value Example

Response-success

HTTP Status: 200

{ "result": { "domain_id": 1000403, "name": "track.leonww.asia", "create_time": "2025-04-18T13:27:38+0800", "update_time": "2025-09-04T12:32:56+0800", "cname": { "verify": true, "verify_message": "The configuration is successful", "required_record": "track01.engagelab.email", "existed_record": "track01.engagelab.email" }, "cert": { "verify": true, "verify_message": "the certificate has taken effect", "expired_date": "2025-12-02T07:59:59+0800" } } }
              
              {
    "result": {
        "domain_id": 1000403,
        "name": "track.leonww.asia",
        "create_time": "2025-04-18T13:27:38+0800",
        "update_time": "2025-09-04T12:32:56+0800",
        "cname": {
            "verify": true,
            "verify_message": "The configuration is successful",
            "required_record": "track01.engagelab.email",
            "existed_record": "track01.engagelab.email"
        },
        "cert": {
            "verify": true,
            "verify_message": "the certificate has taken effect",
            "expired_date": "2025-12-02T07:59:59+0800"
        }
    }
}

            
Este bloque de código se muestra en una ventana flotante

Response-error

HTTP Status :401

{ "code": 30000, "message": "Unauthorized." }
              
              {
    "code": 30000,
    "message": "Unauthorized."
}

            
Este bloque de código se muestra en una ventana flotante

Add certificate

Add tracking domain's certificate

URL

https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/cert
              
              https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/cert

            
Este bloque de código se muestra en una ventana flotante

Content-Type:

application/json; charset=utf-8
              
              application/json; charset=utf-8

            
Este bloque de código se muestra en una ventana flotante

HTTP Request Method

POST
              
              POST

            
Este bloque de código se muestra en una ventana flotante

Body Parameter Description

parameter type required or not description
cert_content string yes Represent the certificate content. The value must be PEM-encoded.
cert_key string yes Represent certificate Private Key. The value must be PEM-encoded.

Request Example

curl -X POST "https://email.api.engagelab.cc/v1/tracking-domains/123/cert" --header "Authorization: Basic <<YOUR_API_KEY_HERE>>" --data '{ "cert_content":"...", "cert_key":"...", }'
              
              curl -X POST "https://email.api.engagelab.cc/v1/tracking-domains/123/cert" 
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" 
--data '{
  "cert_content":"...",
  "cert_key":"...",
}'

            
Este bloque de código se muestra en una ventana flotante

Returned value description

Parameter Description
domain_id domain ID
name domain name
cert details about the domain's certificate
verify whether the configuration is successful (true or false)
verify_message the certificate has not been uploaded, the certificate is being configured, the certificate has taken effect, the certificate has expired
expired_date expired date
create_time time of domain creation
update_time time of domain modification

Returned Value Example

Response-success

HTTP Status: 200

{ "result": { "domain_id": 1000403, "name": "track.leonww.asia", "create_time": "2025-04-18T13:27:38+0800", "update_time": "2025-09-04T12:32:56+0800", "cert": { "verify": false, "verify_message": "the certificate is being configured", "expired_date": "2025-12-02T07:59:59+0800" } } }
              
              {
    "result": {
        "domain_id": 1000403,
        "name": "track.leonww.asia",
        "create_time": "2025-04-18T13:27:38+0800",
        "update_time": "2025-09-04T12:32:56+0800",
        "cert": {
            "verify": false,
            "verify_message": "the certificate is being configured",
            "expired_date": "2025-12-02T07:59:59+0800"
        }
    }
}

            
Este bloque de código se muestra en una ventana flotante

Response-error

HTTP Status :401

{ "code": 30000, "message": "Unauthorized." }
              
              {
    "code": 30000,
    "message": "Unauthorized."
}

            
Este bloque de código se muestra en una ventana flotante

Update certificate

Update tracking domain's certificate

URL

https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/cert
              
              https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/cert

            
Este bloque de código se muestra en una ventana flotante

Content-Type:

application/json; charset=utf-8
              
              application/json; charset=utf-8

            
Este bloque de código se muestra en una ventana flotante

HTTP Request Method

PUT
              
              PUT

            
Este bloque de código se muestra en una ventana flotante

Body Parameter Description

parameter type required or not description
cert_content string yes Represent the certificate content. The value must be PEM-encoded.
cert_key string yes Represent the certificate Private Key. The value must be PEM-encoded.

Request Example

curl -X PUT "https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/cert" --header "Authorization: Basic <<YOUR_API_KEY_HERE>>"
              
              curl -X PUT "https://email.api.engagelab.cc/v1/tracking-domains/{domain_id}/cert" 
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" 

            
Este bloque de código se muestra en una ventana flotante

Response-success

HTTP Status: 200

{ "count": 1 }
              
              {
    "count": 1
}

            
Este bloque de código se muestra en una ventana flotante

Response-error

HTTP Status :401

{ "code": 30000, "message": "Unauthorized." }
              
              {
    "code": 30000,
    "message": "Unauthorized."
}

            
Este bloque de código se muestra en una ventana flotante

Update API_USER

Update the tracking domain and tracking switch configuration associated with API_USER

URL

https://email.api.engagelab.cc/v1/api_users/{api_user}
              
              https://email.api.engagelab.cc/v1/api_users/{api_user}

            
Este bloque de código se muestra en una ventana flotante

Content-Type:

application/json; charset=utf-8
              
              application/json; charset=utf-8

            
Este bloque de código se muestra en una ventana flotante

HTTP Request Method

PUT
              
              PUT

            
Este bloque de código se muestra en una ventana flotante

Body Parameter Description

parameter type required or not description
domain_name string no the domain name bound to the API_USER
track_domain_name string no the tracking domain name bound to the API_USER
open_tracking boolean no whether to enable open-tracking. Values: false (disable), true (enable). Default is false.
click_tracking boolean no whether to enable click-tracking. Values: false (disable), true (enable); Default is false.
unsubscribe_tracking boolean no whether to enable unsubscribe-tracking. Values: false(disable), true (enable); Default is true.

Request Example

curl -X PUT "https://email.api.engagelab.cc/v1/api_users/{api_user}" --header "Authorization: Basic <<YOUR_API_KEY_HERE>>"
              
              curl -X PUT "https://email.api.engagelab.cc/v1/api_users/{api_user}" 
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" 

            
Este bloque de código se muestra en una ventana flotante

Response-success

HTTP Status: 200

{ "count": 1 }
              
              {
    "count": 1
}

            
Este bloque de código se muestra en una ventana flotante

Response-error

HTTP Status :401

{ "code": 30000, "message": "Unauthorized." }
              
              {
    "code": 30000,
    "message": "Unauthorized."
}

            
Este bloque de código se muestra en una ventana flotante
icon
Contacto