public
nobgit
read
NobMail
Based on mailcow: dockerized
Languages
Repository composition by tracked source files.
PHP
49%
JavaScript
35%
HTML
9%
CSS
4%
Shell
2%
Python
1%
Lua
0%
Perl
0%
Ruby
0%
SCSS
0%
Create file
Wiki Documentation
Clone
https://nobgit.com/orgs/nobgit/nobmail.git
ssh://[email protected]:2222/orgs/nobgit/nobmail.git
Commit
[Web] add api get spam-score endpoint
3b183933
data/web/api/openapi.yaml | 34 ++++++++++++++++++++++++++++++++++
data/web/json_api.php | 6 ++++++
2 files changed, 40 insertions(+)
Diff
diff --git a/data/web/api/openapi.yaml b/data/web/api/openapi.yaml
index 1d262168..e8e963e6 100644
--- a/data/web/api/openapi.yaml
+++ b/data/web/api/openapi.yaml
@@ -5646,6 +5646,40 @@ paths:
items:
type: string
summary: Edit Cross-Origin Resource Sharing (CORS) settings
+ "/api/v1/get/spam-score/{mailbox}":
+ get:
+ parameters:
+ - description: name of mailbox or empty for current user - admin user will retrieve the global spam filter score
+ in: path
+ name: mailbox
+ required: true
+ schema:
+ type: string
+ - description: e.g. api-key-string
+ example: api-key-string
+ in: header
+ name: X-API-Key
+ required: false
+ schema:
+ type: string
+ responses:
+ "401":
+ $ref: "#/components/responses/Unauthorized"
+ "200":
+ content:
+ application/json:
+ examples:
+ response:
+ value:
+ spam_score: "8,15"
+ description: OK
+ headers: {}
+ tags:
+ - Mailboxes
+ description: >-
+ Using this endpoint you can get the global spam filter score or the spam filter score of a certain mailbox.
+ operationId: Get mailbox or global spam filter score
+ summary: Get mailbox or global spam filter score
tags:
- name: Domains
diff --git a/data/web/json_api.php b/data/web/json_api.php
index b375bc8e..b8c465fb 100644
--- a/data/web/json_api.php
+++ b/data/web/json_api.php
@@ -1591,6 +1591,12 @@ if (isset($_GET['query'])) {
}
}
break;
+ case "spam-score":
+ $score = mailbox('get', 'spam_score', $object);
+ if ($score)
+ $score = array("score" => preg_replace("/\s+/", "", $score));
+ process_get_return($score);
+ break;
break;
// return no route found if no case is matched
default: