apyhub
ARTIFICIAL INTELLIGENCE · SMART GENERATION

Proofread Text + Grammar Check API

What it does

Proofread Text Checker submits text for grammar and proofreading checks, then lets you poll for the corrected result. Send plain text in content and receive a job_id plus a status_url for tracking the asynchronous job.

Use it when you need to clean up user-generated content, drafts, support replies, or CMS copy before publishing. The status endpoint returns a job record with status, and once complete, the attributes.result field contains the proofread and grammar-corrected version of your original content.

The workflow is straightforward: create a job, check its status, and read the final corrected text when the job reaches success. If processing is still underway, the job status stays queued or running; if it fails, you can detect that from the same status field.

Proofread Text Checker fits into content pipelines where you want automated language cleanup without blocking the request that submitted the text.

▣ ENDPOINT 01 / 02
POST
Proofread Text + Grammar Check - Submit Job
http://localhost:8080/sharpapi/proofread-text-grammar-check
QUICKSTARTGUIDE

Quickstart

Submit text for proofreading and grammar checking.

curl -X POST "http://localhost:8080/sharpapi/proofread-text-grammar-check" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"content":"Please review this sentence for grammar and spelling mistakes."}'

What you'll get back

Returns a JSON object with a job_id string and a status_url string. job_id is the unique identifier for the submitted job, and status_url is the URL to poll for status and results.

{
  "status_url": "https://apyhub.com/services/provider/sharpapi/api/v1/content/proofread/job/status/e41af380-bc53-44bd-988d-0d14165a9d05",
  "job_id": "e41af380-bc53-44bd-988d-0d14165a9d05"
}
TRY ITLIVE · 50 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
Provide the content to proofread.

About this endpoint

What it does

Submits text for proofreading and grammar checking as an asynchronous job. It accepts the text content in the request body and returns a job identifier plus a status URL to poll for the result.

Request Body

ParameterTypeMandatoryDescription
contentStringYesProvide the content to proofread.

Response

Returns a JSON object with two string fields: job_id and status_url. The job_id is the unique identifier of the submitted job, and the status_url is the URL used to poll for the job’s status and result.

ParameterTypeMandatoryDescription
job_idStringYesThe unique identifier of the submitted job.
status_urlStringYesURL to poll for the job's status and result.

Notes

This endpoint kicks off an async job and returns immediately with a job identifier; the actual work runs in the background. Pair this call with the corresponding job_check endpoint — poll that until the status reaches a terminal state to retrieve the result. Use the returned job_id to track the job, and status_url to poll for status updates.

Body

Name
Type
Description
bodyREQUIRED
object
▣ ENDPOINT 02 / 02
GET
Proofread Text + Grammar Check - Check Job Status
http://localhost:8080/sharpapi/proofread-text-grammar-check/job/status/:job_id
QUICKSTARTGUIDE

Quickstart

Check the status of a proofread job by its job_id.

curl -X GET "http://localhost:8080/sharpapi/proofread-text-grammar-check/job/status/:job_id" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a JSON object with a data object. data includes id and type, plus an attributes object with type, result, and status fields. status is one of running, failed, queued, or success.

{
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "type": "api_job_result",
    "attributes": {
      "type": "content_proofread",
      "result": "The proofread and grammar-corrected version of the provided content.",
      "status": "success"
    }
  }
}
TRY ITLIVE · 1 ATOM
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Checks the status of a previously submitted proofread/grammar-check job using its job ID. The response returns a JSON object containing a data object with the job result record and its current status.

Path Parameter(s)

AttributeTypeMandatoryDescription
job_idStringYesJob identifier in UUID format.

Response

Returns a JSON object with a data object. That data object contains id and type string fields, plus an attributes object with type, result, and status fields. Success status is not explicitly declared in the schema.

ParameterTypeMandatoryDescription
dataObjectNoWrapper object for the job result record.
data.idStringNoJob result identifier in UUID format.
data.typeStringNoResult record type. The schema example is api_job_result.
data.attributesObjectNoObject containing the job state and result details.
data.attributes.typeStringNoContent type for the proofread job result. The schema example is content_proofread.
data.attributes.resultStringNoThe proofread and grammar-corrected version of the provided content.
data.attributes.statusENUMNoJob status. Allowed values: running, failed, queued, success.

Path parameters

Name
Type
Description
job_idREQUIRED
string
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.