diff --git a/aws-lambda-java-core/RELEASE.CHANGELOG.md b/aws-lambda-java-core/RELEASE.CHANGELOG.md
index 406390d7..fd52389b 100644
--- a/aws-lambda-java-core/RELEASE.CHANGELOG.md
+++ b/aws-lambda-java-core/RELEASE.CHANGELOG.md
@@ -1,3 +1,8 @@
+### November 09, 2022
+`1.2.2`:
+- Added new `CustomPojoSerializer` interface
+- Removed unnecessary usage of public on interface methods (aws#172)
+
### April 28, 2020
`1.2.1`:
- Added missing XML namespace declarations to `pom.xml` file ([#97](https://github.com/aws/aws-lambda-java-libs/issues/97))
diff --git a/aws-lambda-java-core/pom.xml b/aws-lambda-java-core/pom.xml
index 52d2976f..1438a2e7 100644
--- a/aws-lambda-java-core/pom.xml
+++ b/aws-lambda-java-core/pom.xml
@@ -5,7 +5,7 @@
com.amazonaws
aws-lambda-java-core
- 1.2.1
+ 1.2.2
jar
AWS Lambda Java Core Library
diff --git a/aws-lambda-java-core/src/main/java/com/amazonaws/services/lambda/runtime/CustomPojoSerializer.java b/aws-lambda-java-core/src/main/java/com/amazonaws/services/lambda/runtime/CustomPojoSerializer.java
new file mode 100644
index 00000000..0d7cc27d
--- /dev/null
+++ b/aws-lambda-java-core/src/main/java/com/amazonaws/services/lambda/runtime/CustomPojoSerializer.java
@@ -0,0 +1,38 @@
+/* Copyright 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. */
+
+package com.amazonaws.services.lambda.runtime;
+
+import java.io.InputStream;
+import java.io.OutputStream;
+
+import java.lang.reflect.Type;
+
+/**
+ * Interface required to implement a custom plain old java objects serializer
+ */
+public interface CustomPojoSerializer {
+
+ /**
+ * Deserializes from input stream to plain old java object
+ * @param input input stream
+ * @param type plain old java object type
+ * @return deserialized plain old java object of type T
+ */
+ T fromJson(InputStream input, Type type);
+
+ /**
+ * Deserializes from String to plain old java object
+ * @param input input string
+ * @param type plain old java object type
+ * @return deserialized plain old java object of type T
+ */
+ T fromJson(String input, Type type);
+
+ /**
+ * Serializes plain old java object to output stream
+ * @param value instance of type T to be serialized
+ * @param output OutputStream to serialize plain old java object to
+ * @param type plain old java object type
+ */
+ void toJson(T value, OutputStream output, Type type);
+}