Performs multiple evaluations in parallel on a single comment. This endpoint can run any combination of comment scoring, spam detection, and relevance checking in a single call, potentially saving time and reducing latency compared to making separate API calls.
To control which evaluations to run, use the feature flags in the request body (run_comment_score, run_spam_check, run_relevance_check). At least one feature flag must be set to true.
The response contains separate sections for each requested evaluation, with the same structure as their individual endpoint responses.
| Header Parameters |
|---|
X-User-Email email — REQUIREDAccount email address, for authentication |
X-API-Key string — REQUIREDAPI key owned by the user (email), for authentication |
Request Body — REQUIREDJSON format strongly recommended: This endpoint handles complex parameter types (arrays and booleans) which are more reliably processed when sent as JSON. A form-urlencoded format should work for simple cases, but arrays and booleans can be problematic when using form encoding. The banned_topics array in form-urlencoded requires special syntax like banned_topics[]=topic1&banned_topics[]=topic2, which can be different across HTTP libraries. Boolean values need to be represented as strings in form format ('true'/'false') but can be native boolean values in JSON. We recommend using JSON. |
|---|
article_context_id uuidUUID that identifies the article context. Required for comment scoring and relevance checking. |
comment string — REQUIREDThe comment text to evaluate. |
reply_to_comment stringOptional context for comment scoring: the comment to which this one is replying. |
banned_topics string[]Optional list of banned topics to check against for relevance checking. |
run_comment_score booleanWhether to perform comment scoring evaluation. |
run_spam_check booleanWhether to perform spam detection. |
run_relevance_check booleanWhether to perform relevance checking. |
| Responses |
|---|
200
Successful response - returns JSON with results for each requested evaluation. | Schema — OPTIONAL |
|---|
comment_score object — OPTIONALSchema for comment scoring results, including logical fallacies, objectionable phrases, and overall assessment. logical_fallacies object[]A list of any logical fallacies identified within the comment. fallacy_name stringName of the logical fallacy, eg, 'straw man' | quoted_logical_fallacy_example stringQuoted part of the comment that demonstrates the fallacy | explanation_and_suggestions string — OPTIONALExplanation of why we think that quote shows a logical fallacy, and suggestions on how to tackle it | suggested_rewrite string — OPTIONALRarely, a suggested rewrite. Provided only if the commenter's intent was very clear. |
| objectionable_phrases object[]A list of any objectionable or rude phrases identified within the comment. quoted_objectionable_phrase stringQuoted part of the comment that may be seen as objectionable | explanation string — OPTIONALExplanation of why we assessed this as potentially objectionable | suggested_rewrite string — OPTIONALRarely, a suggested rewrite. Provided only if the commenter's intent was very clear. |
| negative_tone_phrases object[]A list of any negative tone phrases identified within the comment. quoted_negative_tone_phrase stringQuoted part of the comment that may contribute negatively to the conversation | explanation string — OPTIONALExplanation of why we assessed this as potentially negative for the conversation | suggested_rewrite string — OPTIONALRarely, a suggested rewrite. Provided only if the commenter's intent was very clear. |
| appears_low_effort booleanTrue if the comment appears to be low effort, eg, 'me too' or 'I agree'. | overall_score integerAn approximation from 1 (low) to 5 (good) of the quality of the comment. |
| spam_check object — OPTIONALSchema for spam check result, including reasoning and confidence level. reasoning stringShort explanation of why the comment was or was not considered spam. | confidence numberConfidence score (0-1) for the spam evaluation. | is_spam booleanTrue if the comment is probably spam; false otherwise. |
| relevance_check object — OPTIONALSchema for comment relevance evaluation, including on-topic assessment and banned topics check. on_topic objectHolds data about the on-topic (relevance) assessment. reasoning stringShort explanation of why this comment was or was not regarded as on-topic. | on_topic booleanIndicates if the comment is considered on-topic. True if it is; false if it is not on-topic / relevant. | confidence numberConfidence score (0-1) for the on-topic evaluation. |
| banned_topics objectHolds data about the off-topic (banned topics) assessment. reasoning stringShort explanation of why the comment was assessed as, or not, being about topics that are off-topic. | banned_topics string[]List of off-topic topics detected. | quantity_on_banned_topics numberA score representing the extent of the off-topic content in the comment: 0-1, where 0.5 is that about half the comment was about a topic that was flagged. | confidence numberConfidence score (0-1) for the off-topic evaluation. |
|
|
|
400
Bad Request - Missing or invalid parameters, or no feature flags enabled. To diagnose this, check the request body and ensure at least one of the feature flags is set to true, and check the documentation for the individual call that matches it to verify you are sending the required parameters. For example, the article_context_id is required for comment scoring and relevance checking but is marked optional here because not all of the features this runs in parallel require it. |
401
Unauthorized - Missing or incorrect authentication. |