Content Generation – Check Grammar API
This endpoint will provide you with grammar and spelling corrections for the text you specify.
This endpoint will provide you with grammar and spelling corrections for the text you specify.
Instead of ‘login’ and ‘password’ use your credentials from https://app.dataforseo.com/api-access
<?php // You can download this file from here https://cdn.dataforseo.com/v3/examples/php/php_RestClient.zip require('RestClient.php'); $api_url = 'https://api.dataforseo.com/'; // Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-access $client = new RestClient($api_url, null, 'login', 'password'); $post_array = array(); // simple way to set a task $post_array[] = array( "text" => "Hello, my name is John! And I'm very glad to work with you toda", "language_code" => "en-US" ); try { // POST /v3/content_generation/check_grammar/live $result = $client->post('/v3/content_generation/check_grammar/live', $post_array); print_r($result); // do something with post result } catch (RestClientException $e) { echo "n"; print "HTTP code: {$e->getHttpCode()}n"; print "Error code: {$e->getCode()}n"; print "Message: {$e->getMessage()}n"; print $e->getTraceAsString(); echo "n"; } $client = null; ?>
The above command returns JSON structured like this:
{ "version": "0.1.20221214", "status_code": 20000, "status_message": "Ok.", "time": "0.3480 sec.", "cost": 0.00063, "tasks_count": 1, "tasks_error": 0, "tasks": [ { "id": "01061613-1535-0504-0000-e06542a3af56", "status_code": 20000, "status_message": "Ok.", "time": "0.3090 sec.", "cost": 0.00063, "result_count": 1, "path": [ "v3", "content_generation", "check_grammar", "live" ], "data": { "api": "content_generation", "function": "check_grammar", "text": "Hello, my name is John! And I'm very glad to work with you toda", "language_code": "en-US" }, "result": [ { "input_tokens": 63, "output_tokens": 63, "new_tokens": 0, "initial_text": "Hello, my name is John! And I'm very glad to work with you toda", "language_code": "en-US", "items_count": 1, "items": [ { "message": "Spelling mistake", "description": "Possible spelling mistake found.", "suggestions": [ "today", "Todd", "soda", "coda", "toad", "Tod", "toga", "Yoda", "TDA" ], "offset": 59, "length": 4, "type": "Other", "rule_id": "MORFOLOGIK_RULE_EN_US", "rule_description": "Possible spelling mistake", "rule_issue_type": "misspelling", "rule_category_id": "TYPOS", "rule_category_name": "Possible Typo" } ] } ] } ] }
All POST data should be sent in the JSON format (UTF-8 encoding). The task setting is done using the POST method. When setting a task, you should send all task parameters in the task array of the generic POST array. You can send up to 2000 API calls per minute.
You can specify the number of results you want to retrieve, filter and sort them.
Below you will find a detailed description of the fields you can use for setting a task.
Description of the fields for setting a task:
Field name | Type | Description |
---|---|---|
text |
string | target text required field can contain from 1 to 10000 tokenslearn more about tokens on our help center |
language_code |
string | code of the text language required field if you do not specify language_name see the List of Languages for Content Generation Check Grammar API |
language_name |
string | name of the text language required field if you do not specify language_code see the List of Languages for Content Generation Check Grammar API |
tag |
string | user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response |
As a response of the API server, you will receive JSON-encoded data containing a tasks
array with the information specific to the set tasks.
Description of the fields in the results array:
Field name | Type | Description |
---|---|---|
version |
string | the current version of the API |
status_code |
integer | general status code you can find the full list of the response codes here Note: we strongly recommend designing a necessary system for handling related exceptional or error conditions |
status_message |
string | general informational message you can find the full list of general informational messages here |
time |
string | execution time, seconds |
cost |
float | total tasks cost, USD |
tasks_count |
integer | the number of tasks in the tasks array |
tasks_error |
integer | the number of tasks in the tasks array returned with an error |
tasks |
array | array of tasks |
id |
string | task identifier unique task identifier in our system in the UUID format |
status_code |
integer | status code of the task generated by DataForSEO; can be within the following range: 10000-60000 you can find the full list of the response codes here |
status_message |
string | informational message of the task you can find the full list of general informational messages here |
time |
string | execution time, seconds |
cost |
float | cost of the task, USD |
result_count |
integer | number of elements in the result array |
path |
array | URL path |
data |
object | contains the same parameters that you specified in the POST request |
result |
array | array of results |
input_tokens |
integer | number of input tokens in the POST request |
output_tokens |
integer | number of output tokens in the response |
new_tokens |
integer | number of new tokens in the response |
initial_text |
string | initial text in the POST request |
language_code |
string | language code in the POST request |
items_count |
integer | the number of results returned in the items array |
items |
array | contains grammar or spelling errors and related data |
message |
string | message of the grammar or spelling error |
description |
string | description of the grammar or spelling error |
suggestions |
array | suggested corrections |
offset |
integer | offset token for subsequent requests |
length |
integer | offset token for subsequent requests |
type |
string | type of grammar or spelling error |
rule_id |
string | id of the grammar or spelling rule see the List of Grammar Rules for Content Generation API |
rule_description |
string | description of the grammar or spelling rule |
rule_issue_type |
string | type of the issue found by the relevant rule |
rule_category_id |
string | id of the rule category |
rule_category_name |
string | name of the rule category |