The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Upgraded Jackson from version 2.11.4 to 2.13.2.
- Upgraded slf4j from version 1.7.30 to 1.7.36.
Out of an abundance of caution, denoting this release as being a breaking change.
The zip
field on Account was changed from an Integer
type to a String
type. If you have
code that references this field, you will need to update your code to reflect this change.
- PR-78 Account 'zip' property changed from being an
Integer
type to aString
to support worldwide zipcodes. Thanks @daniel-exceed!
- Upgraded Jackson from version 2.11.2 to 2.11.4.
- ISSUE-68 Add authentication method for grant_type=authorization_code using previously retrieved refresh_token. See
ConfigurationBuilder.withSsoRefreshTokenLogin()
- ISSUE-70 Adds ability to override the OAuth authentication endpoint when doing SSO authentication. See optional parameter
AuthorizationServer
on theConfigurationBuilder.withSsoRefreshTokenLogin()
andConfigurationBuilder.withSsoLogin()
methods.
- ISSUE-65 Adds missing Query options to
ProspectQuerytRequest
forwithUpdatedAfter()
andwithUpdatedBefore()
.
This release has several breaking changes. See 3.0.0 Migration Notes for details on breaking changes and how to upgrade.
- ISSUE-58 Add support for Salesforce SSO authentication.
- PR-60 Alters return values from
PardotClient.readXYZ()
andPardotClient.deleteXYZ()
to allow for better error handling.
- Upgraded Jackson from version 2.11.1 to 2.11.2.
- ISSUE-56 Adds support for Dynamic Content.
- Upgraded Jackson from version 2.10.2 to 2.11.1.
- Upgraded HttpComponents Client from version 4.5.11 to 4.5.12.
- ISSUE-50 Improve support for record multiple fields.
In order to better support record multiple value custom fields, the accessor on Prospect
for getCustomFields()
has been changed FROM
public Map<String, String> getCustomFields()
TO public Map<String, ProspectCustomFieldValue> getCustomFields()
For custom fields which are NOT record multiple value custom fields the accessor public String getCustomField(final String customFieldName)
method will continue to return the stored value for the custom field.
For custom fields which ARE record multiple value custom fields the accessor public String getCustomField(final String customFieldName)
method will only return the first stored value. You can use the new accessor
public List<String> getCustomFieldValues(final String customFieldName)
to get all stored values for record multiple value custom fields.
- ISSUE-45 Fixed bug preventing the library from auto-renewing a session when it expires.
- Upgraded Jackson from version 2.10.1 to 2.10.2.
- Upgraded HttpComponents Client from version 4.5.10 to 4.5.11.
- Upgraded SLF4J from version 1.7.29 to 1.7.30.
- Fixed bug in User create endpoint where setting a new user's role could only be set via a RoleId. Now you can set the role by name or id.
-
Removed
org.apache.logging.log4j
dependency, instead relying on the org.slf4j logging interface/facade dependency explicitly.- If your project was depending on this transitive dependency you may need to add it to your own project:
<dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.12.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.12.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>2.12.1</version> </dependency>
-
Adds support for additional user end points.
-
Adds RequestInterceptor interface to allow for end-user manipulation of requests prior to being sent over the wire.
-
Adds UserDefinedRequest interface to allow for customizing/defining your own API requests.
/**
* Example of defining a Custom API endpoint request. The methods required to be implemented are
* defined below with examples.
*
* You can make use of the methods defined on the parent 'BaseRequest' class to set request parameter
* as needed.
*/
public class MyTestRequest extends UserDefinedRequest<MyTestRequest, MyCustomReturnObject> {
/**
* Given the API's response String, this method should parse it into a more easily consumed object.
* Alternatively, it could just return the API's response string.
*
* @return An object that represents the parsed API response.
*/
@Override
public ResponseParser<MyCustomReturnObject> getResponseParser() {
return (apiResponseStringapiResponseString) -> {
// Your own custom parsing Logic.
return new MyCustomReturnObject(apiResponseString);
};
}
/**
* The API endpoint URL string.
*
* @return The API endpoint URL string.
*/
@Override
public String getApiEndpoint() {
return "/prospect/query";
}
/**
* Set the Id property.
*/
public MyTestRequest withId(final long id) {
return setParam("id", id);
}
/**
* Set other property.
*/
public MyTestRequest withOtherProperty(final String value) {
return setParam("other", value);
}
}
/**
* Example usage of the above class:
*/
PardotClient apiClient = new PardotClient(new Configuration("username", "password", "api-key"));
// Construct custom request class instance
MyTestRequest myCustomRequest = new MyTestRequest()
.withId(123L)
.withOtherProperty("SomeValue");
// Execute the request and get the parsed response returned
MyCustomReturnObject parsedApiResponse = apiClient.userDefinedRequest(myCustomRequest);
- Issue-35 Submit POST parameters using UTF-8 charset by default.
- Issue-36 Sending email with the scheduled_time was broken due to improperly formatted value.
- org.apache.httpcomponents:httpclent from 4.5.6 to 4.5.10
- org.apache.logging.log4j from 2.11.0 to 2.12.1
- com.fasterxml.jackson.core:jackson-databind from 2.9.9 to 2.10.1
As of October 31, 2018 Pardot is disabling the TLS 1.0 encryption protocol. This means that versions of this library prior to 1.0.0 will cease to be able to connect to the Pardot Api.
Version 1.0.0 updates the library to use TLS 1.1 and 1.2 protocols. Everyone is encouraged to update the library prior to October 31st 2018.
- Adds support for Tags and TagObjects, Thanks LoRez!
- Add support for Form, Email Template end points.
- Updates jackson dependency for CVE-2018-7489.
- Add support for CustomField, CustomRedirect API, EmailClicks, and Opportunity end points.
- Client will change configured API version from 3 to 4 automatically upon login.
- Fixed bug in VisitorQueryRequest around querying for multiple foreign key ids.
- Fixed bug in ordering of request parameters.
- Add support for Visitor and VisitorActivity API endpoints.
- Bugfix to Prospect parser.
- Support Api version 4 via configuration method .withApiVersion4()
- Add support for List and ListMembership API endpoints.
- Initial release!