diff --git a/docs/Filter/Post.md b/docs/Filter/Post.md
new file mode 100644
index 0000000000000000000000000000000000000000..c976c26b7f976f9b04ddf665da95973c0ddea632
--- /dev/null
+++ b/docs/Filter/Post.md
@@ -0,0 +1,69 @@
+# Post Filter
+
+> More info about post filter is in the [official elasticsearch docs][1]
+
+The post filters are filters that are applied to the search hits at the very end
+of a search request, after [aggregations][2] have already been calculated.
+
+To add post filters use `addPostFilter` method in `Search` object.
+`addPostFilter` works like query and filter adders - you can add as many
+filters as you want and bool filter will be formed if endpoint has multiple
+filters or bool type parameter was provided.
+
+## Simple example
+
+```JSON
+{
+  "post_filter": { 
+    "term": { "color": "red" }
+  }
+}
+```
+
+And now the query via DSL:
+
+```php
+$termFilter = new TermFilter('color', 'red');
+
+$search = new Search();
+$search->addPostFilter($termFilter);
+$queryArray = $search->toArray();
+```
+
+## Bool example
+
+```JSON
+{
+    "post_filter": {
+        "bool": {
+            "must": [
+                {
+                    "term": {
+                        "color": "red"
+                    }
+                },
+                {
+                    "term": {
+                        "brand": "ana"
+                    }
+                }
+            ]
+        }
+    }
+}
+```
+
+And now the query via DSL:
+
+```php
+$termFilter1 = new TermFilter('color', 'red');
+$termFilter2 = new TermFilter('brand', 'ana');
+
+$search = new Search();
+$search->addPostFilter($termFilter1);
+$search->addPostFilter($termFilter2);
+$queryArray = $search->toArray();
+```
+
+[1]: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-post-filter.html
+[2]: ../Aggregation/index.md
\ No newline at end of file