{"_id":"5bd85438d9ed1b0061a5c5bb","project":"55dd9f2e0efd5821000d54d9","version":{"_id":"55dd9f4dab0e4d210045aae9","__v":45,"project":"55dd9f2e0efd5821000d54d9","createdAt":"2015-08-26T11:13:17.024Z","releaseDate":"2015-08-26T11:13:17.024Z","categories":["55dd9f4dab0e4d210045aaea","55ddb5fa9067202b00ddff6f","55e0472c6bad670d0081f213","55e04764a44fae0d00214671","55e047a9a44fae0d00214672","55e047b258c5460d0076a9a7","55e95e337fc27b2d00d32cf2","55e979bda7ca823900ad549a","55edb8c18dcb210d0056900b","55f0365c8563861700a33765","55f03677d58f9b1900acf996","55f036938eeefc23001ea5de","55f036a38563861700a33767","55f036c08563861700a33769","55f036d02911b72100482cd7","55f036e92911b72100482cd9","55f036fa8563861700a3376b","55f0370ee507711900e58c69","55f0371df6101b1900c70700","55f0374f2911b72100482cdb","55f0375e2911b72100482cdc","560eb0f659cb8d0d0015cd52","560eb25239fad419002ae1e0","561fb64d4d67490d00804b2a","562b9f775a39cd0d009aff22","562ba0505a39cd0d009aff23","562ba149d56bc30d00f0cb18","562ba595f68a5f0d007b1f3b","562ba78fd56bc30d00f0cb1b","562ba8b95a39cd0d009aff27","562baadf6562140d001501d2","562bab37f68a5f0d007b1f3d","562bc1bf9ebc950d000f7523","562bc99ced4bea0d00c11dfa","562bd29c1b98640d00714520","562bd5875a39cd0d009aff60","562bdfabff2da50d002c0aaf","562be0bd5a39cd0d009aff75","57a0b476d8313e1900454439","5b19051beece890003020163","5b34ded01cb20f000391ad6d","5b3a325acffe770003fd29e5","5b3c737a7f7b890003365501","5b3c929b367036000391b11e","5b7c1e210dc2e20003871521"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"2.0.0","version":"2"},"category":{"_id":"562b9f775a39cd0d009aff22","project":"55dd9f2e0efd5821000d54d9","pages":["562ba0bbed4bea0d00c11de2","562ba2436562140d001501cd","562ba4a6f68a5f0d007b1f3a","562ba73c6562140d001501d1","562ba8e19ebc950d000f750b","562badaded4bea0d00c11de6","562bae17db5fea0d003fa832","562baef76562140d001501d4","562baf3ad56bc30d00f0cb1e","562bbfe59ebc950d000f7521","562bc031ed4bea0d00c11df1","562bc060d56bc30d00f0cb2f","562bc0f1d56bc30d00f0cb30","562bc14a5a39cd0d009aff49","562bc17c5a39cd0d009aff4a","562bc8ca5a39cd0d009aff54","562bc9131b98640d0071451b","562bd54052fb180d0034cc0b","562bda3212c2820d00869ba0","562bdab29ebc950d000f753c","562bdb00ff2da50d002c0aac","562bdb851b98640d00714527","562bde831b98640d0071452c","562bded9ff2da50d002c0aae","562be2159ebc950d000f7542","562be2725a39cd0d009aff78","562be33d9ebc950d000f7543","562d619ae01a430d00c2c82d"],"version":"55dd9f4dab0e4d210045aae9","__v":28,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-10-24T15:10:47.563Z","from_sync":false,"order":26,"slug":"contacts-1","title":"Contacts"},"user":"55dd9841cafe7221002a4c62","__v":0,"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2018-10-30T12:53:12.900Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":31,"body":"This method immediately resubscribes an unsubscribed contact to a specified address book without sending them an automated resubscription challenge email, and returns their resubscribe status.\n\nPlease note that you can include, and thus update, contact data fields when resubscribing a contact to an address book using this method.\n\nThe resubscribe status should come back as 'ContactAdded'.\n\nResubscribe status types can be:\n\n  * 'ContactAdded' - The contact has been successfully resubscribed to the address book\n  * 'ContactChallenged' - The contact has been sent an automated double opt-in email, asking them to confirm their opting in. This can occur when a contact is created and the account has a 'Regulatory setting' other than 'Do not enforce double opt-in'.\n  * 'ContactCannotBeUnsuppressed' - The contact can't be resubscribed. This may be because the contact is on the Global Suppression List (GSL), or their domain has been suppressed from receiving your campaigns, or the contact was removed because of a complaint from their ISP. You may want to contact support.\n  * 'NotAvailableInThisVersion' - This feature is not available in the version of the API you're using\n\n**SOAP action:** [https://[region ID]-api.dotmailer.com/v2/ApiService/ResubscribeContactToAddressBookWithNoChallenge](doc:resubscribecontacttoaddressbookwithnochallenge)\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Input and output parameters\",\n  \"body\": \"**Input parameters**\\n  * UnsubscribedContact\\n       * AddressBook ID - *required; integer*  \\n       * Email - *required; string* \\n       * DataFields - *optional; array of ContactData* \\n            * ContactData\\n                 * Key - *string*\\n                 * Value - *anyType*\\n                 \\n**Output parameters** \\n  * ResubscribeContactToAddressBookResult\\n       * Contact \\n            * SuppressedContact\\n                 * Id - *integer*\\n                 * Email - *string*\\n                 * OptInType - *string ('Unknown', 'Single', 'Double', 'VerifiedDouble')*\\n                 * EmailType - *string ('PlainText', 'Html')* \\n                 * DataFields - *optional; array of ContactData* \\n                      * ContactData\\n                           * Key - *string*\\n                           * Value - *anyType*\\n                 * Status - *string ('Subscribed', 'Unsubscribed', 'SoftBounced', 'HardBounced', 'IspComplained', 'MailBlocked', 'PendingOptIn', 'DirectComplaint', 'Deleted', 'SharedSuppression', 'Suppressed', 'NotAllowed', 'DomainSuppression', 'NoMxRecord')*\\n       * Status - *string ('ContactAdded', 'ContactChallenged', 'ContactCannotBeUnsuppressed')*\"\n}\n[/block]\n**Example** \n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"using (var client = new ApiServiceClient())\\n{\\n\\tclient.ClientCredentials.UserName.UserName = \\\"username\\\";\\n\\tclient.ClientCredentials.UserName.Password = \\\"password\\\";\\n\\n\\tvar unsubscribedContact = new ApiContact { Email = \\\"test:::at:::test.com\\\" };\\n\\tvar addressBookId = 1;\\n\\t\\n\\tvar resubscription = new ApiContactResubscription\\n\\t{\\n\\t    UnsubscribedContact = unsubscribedContact\\n\\t};\\n\\t\\n\\tvar resubscribeResult = client.ResubscribeContactToAddressBookWithNoChallenge(addressBookId, resubscription);\\n}\",\n      \"language\": \"csharp\"\n    }\n  ]\n}\n[/block]","excerpt":"Resubscribes a previously unsubscribed contact to a specific address book without sending a challenge email","slug":"resubscribecontacttoaddressbookwithnochallenge","type":"basic","title":"ResubscribeContactToAddressBookWithNoChallenge"}

ResubscribeContactToAddressBookWithNoChallenge

Resubscribes a previously unsubscribed contact to a specific address book without sending a challenge email

This method immediately resubscribes an unsubscribed contact to a specified address book without sending them an automated resubscription challenge email, and returns their resubscribe status. Please note that you can include, and thus update, contact data fields when resubscribing a contact to an address book using this method. The resubscribe status should come back as 'ContactAdded'. Resubscribe status types can be: * 'ContactAdded' - The contact has been successfully resubscribed to the address book * 'ContactChallenged' - The contact has been sent an automated double opt-in email, asking them to confirm their opting in. This can occur when a contact is created and the account has a 'Regulatory setting' other than 'Do not enforce double opt-in'. * 'ContactCannotBeUnsuppressed' - The contact can't be resubscribed. This may be because the contact is on the Global Suppression List (GSL), or their domain has been suppressed from receiving your campaigns, or the contact was removed because of a complaint from their ISP. You may want to contact support. * 'NotAvailableInThisVersion' - This feature is not available in the version of the API you're using **SOAP action:** [https://[region ID]-api.dotmailer.com/v2/ApiService/ResubscribeContactToAddressBookWithNoChallenge](doc:resubscribecontacttoaddressbookwithnochallenge) [block:callout] { "type": "info", "title": "Input and output parameters", "body": "**Input parameters**\n * UnsubscribedContact\n * AddressBook ID - *required; integer* \n * Email - *required; string* \n * DataFields - *optional; array of ContactData* \n * ContactData\n * Key - *string*\n * Value - *anyType*\n \n**Output parameters** \n * ResubscribeContactToAddressBookResult\n * Contact \n * SuppressedContact\n * Id - *integer*\n * Email - *string*\n * OptInType - *string ('Unknown', 'Single', 'Double', 'VerifiedDouble')*\n * EmailType - *string ('PlainText', 'Html')* \n * DataFields - *optional; array of ContactData* \n * ContactData\n * Key - *string*\n * Value - *anyType*\n * Status - *string ('Subscribed', 'Unsubscribed', 'SoftBounced', 'HardBounced', 'IspComplained', 'MailBlocked', 'PendingOptIn', 'DirectComplaint', 'Deleted', 'SharedSuppression', 'Suppressed', 'NotAllowed', 'DomainSuppression', 'NoMxRecord')*\n * Status - *string ('ContactAdded', 'ContactChallenged', 'ContactCannotBeUnsuppressed')*" } [/block] **Example** [block:code] { "codes": [ { "code": "using (var client = new ApiServiceClient())\n{\n\tclient.ClientCredentials.UserName.UserName = \"username\";\n\tclient.ClientCredentials.UserName.Password = \"password\";\n\n\tvar unsubscribedContact = new ApiContact { Email = \"test@test.com\" };\n\tvar addressBookId = 1;\n\t\n\tvar resubscription = new ApiContactResubscription\n\t{\n\t UnsubscribedContact = unsubscribedContact\n\t};\n\t\n\tvar resubscribeResult = client.ResubscribeContactToAddressBookWithNoChallenge(addressBookId, resubscription);\n}", "language": "csharp" } ] } [/block]