Skip to main content
Post a question

Notifications

Community site session details

Community site session details

Session Id : ARFsS+6LBjB2o55wT16knD
Customer experience | Sales, Customer Insights,...
Unanswered

Email Validation Services/API's

Like (0) ShareShare
ReportReport
Posted on 24 Nov 2020 19:22:46 by 51

Does anyone have any experience with an email validation service that they would like to share and any integration experiences through an API to Dynamics Marketing? We're trying to reduce our Hard Bounces and would like to run our Contact email addresses against a service to validate them on a regular basis. Appreciate any help...

  • cloflyMao Profile Picture
    25,208 on 25 Nov 2020 at 01:53:08
    RE: Email Validation Services/API's

    Hi Scott,

    In Dynamics Marketing, there is an API: msdyncrm_EmailValidate to validate a marketing email record.

    Request

    POST [Organization URI]/api/data/v9.0/msdyncrm_EmailValidate
    OData-MaxVersion: 4.0
    OData-Version: 4.0
    Accept: application/json
    Content-Type: application/json; charset=utf-8
    
    {
        'FieldValueContentLanguage': 1033,
        'FieldValueContentType': 0,
        'FieldValueEmailBody': '',
        'FieldValueEmailTextPart': 'Hello friend',
        'FieldValueFromEmail': 'admin@clofly.com',
        'FieldValueFromName': 'MOD Administrator',
        'FieldValueMarketingEmailId': '{8A68C12E-B027-EB11-A813-000D3AA080EC}', // Marketing Email GUID
        'FieldValueMessageDesignation': 0,
        'FieldValueName': '11-16-01', // Marketing Email name
        'FieldValueReplyToEmail': 'clofly@outlook.com',
        'FieldValueStatusCode': 192350001,
        'FieldValueSubject': '$100 FOR 10 DAYS', // Marketing Email subject
        'FieldValueTestConfiguration': '{"tests":[]}',
        'FieldValueTo': '{{ contact.emailaddress1 }}'
    }

    Response

    (It is based on the sample data in Request.)

    {
        @odata.context: "[Organization URI]/api/data/v9.0/$metadata#Microsoft.Dynamics.CRM.msdyncrm_EmailValidateResponse",
        "ValidationResult": {"PartValidationResults":[{"PartName":"Html","Messages":[{"Level":1,"MessageCode":"MetaReferrerNeverMissing","ParameterizedMessageCode":null,"Parameters":[]}],"Context":null},{"PartName":"Html","Messages":[{"Level":2,"MessageCode":"MissingSubscriptionCenterLinkInHtml","ParameterizedMessageCode":null,"Parameters":[]}],"Context":null},{"PartName":"Text","Messages":[{"Level":2,"MessageCode":"MissingSubscriptionCenterLinkInText","ParameterizedMessageCode":null,"Parameters":[]}],"Context":null},{"PartName":"Html","Messages":[{"Level":2,"MessageCode":"MissingLegalPhysicalAddressInHtml","ParameterizedMessageCode":null,"Parameters":[]}],"Context":null},{"PartName":"Text","Messages":[{"Level":2,"MessageCode":"MissingLegalPhysicalAddressInText","ParameterizedMessageCode":null,"Parameters":[]}],"Context":null}],"Result":"Error"}
    }

    Formatting the ValidationResult of response:

    {
      "PartValidationResults": [
        {
          "PartName": "Html",
          "Messages": [
            {
              "Level": 1,
              "MessageCode": "MetaReferrerNeverMissing",
              "ParameterizedMessageCode": null,
              "Parameters": []
            }
          ],
          "Context": null
        },
        {
          "PartName": "Html",
          "Messages": [
            {
              "Level": 2,
              "MessageCode": "MissingSubscriptionCenterLinkInHtml",
              "ParameterizedMessageCode": null,
              "Parameters": []
            }
          ],
          "Context": null
        },
        {
          "PartName": "Text",
          "Messages": [
            {
              "Level": 2,
              "MessageCode": "MissingSubscriptionCenterLinkInText",
              "ParameterizedMessageCode": null,
              "Parameters": []
            }
          ],
          "Context": null
        },
        {
          "PartName": "Html",
          "Messages": [
            {
              "Level": 2,
              "MessageCode": "MissingLegalPhysicalAddressInHtml",
              "ParameterizedMessageCode": null,
              "Parameters": []
            }
          ],
          "Context": null
        },
        {
          "PartName": "Text",
          "Messages": [
            {
              "Level": 2,
              "MessageCode": "MissingLegalPhysicalAddressInText",
              "ParameterizedMessageCode": null,
              "Parameters": []
            }
          ],
          "Context": null
        }
      ],
      "Result": "Error"
    }

    However, the API is not officially supported, please use it on your own risk.

    Regards,

    Clofly

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

🌸 Community Spring Festival 2025 Challenge 🌸

WIN Power Platform Community Conference 2025 tickets!

Jonas ”Jones” Melgaard – Community Spotlight

We are honored to recognize Jonas "Jones" Melgaard as our April 2025…

Kudos to the March Top 10 Community Stars!

Thanks for all your good work in the Community!

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 294,241 Super User 2025 Season 1

#2
Martin Dráb Profile Picture

Martin Dráb 232,982 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,158 Moderator

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans
Loading started