Score Writing

Run in postman: Score Writing

The Score Writing API evaluates 3 different writing tasks and returns scores aligned with CEFR, IELTS, PTE, and the Speechace rubrics.

Task
Length
Description

essay-writing

150 - 300 words

Long form opinion-based writing such as IELTS Task 2 writing prompts.

short-writing

50 - 100 words

Short form school or business writing such as describing an image, or writing a short letter.

chat-writing

50 - 100 words

Brief responses to a query or situation expressed in a chat context. Suitable for business contexts such as customer support simulation.

The Score Writing API is available in the following languages:

  • English (en-us, en-gb)

  • Spanish (es-es)

The Score Writing API returns scores in the following formats:

  • Speechace scale (0..100)

  • CEFR scale (A0..C2)

  • IELTS scale (0..9)

  • PTE scale (10..90)

  • TOEIC scale (0..200)

Request Format

The endpoint that is to be used will depend on the region of your subscription. For example, for US West, the endpoint is https://api.speechace.co.

POST https://api.speechace.co/api/scoring/writing/v9/json

Query Parameters

Parameter
Type
Description

key

String

Required: API key issued by Speechace.

dialect

String

Optional: default = en-us

This is the dialect in which the writing sample will be assessed.

Supported values are: en-us, en-gb, es-es.

user_id

String

Optional: A unique anonymized identifier (generated by your applications) for the end-user who submitted the response.

task_type

String

The writing task_type to score. Supported types are:

  • essay-writing

  • short-writing

  • chat-writing

Request Body

Parameter
Type
Description

prompt

String

Required: Max 1024 chars

The writing task prompt given to the end-user.

answer

String

Required: max 4096 chars

The response submitted by the end-user which will be scored in context of the prompt.

include_feedback

String

Optional: 0 | 1, default = 0 Indicates whether to return additional feedback also as part of the API response.

detect_dialect

String

Optional: 0 | 1, default = 0

Indicates whether to return detected dialect of the user response as part of of the API response.

enforce_dialect

String

Optional: 0 | 1, default = 0

Indicates whether to enforce detected dialect of the user response be same as dialect of the calling API i.e. raises error if the user response dialect doesn't match expected dialect.

include_metrics

String

Optional: array of string enums, default = []

Indicates which metrics to use for score. The list of enum values are: vocab, grammar, coherence, task_response. default of [] indicates all metrics to score.

Response Examples

The writing_score.speechace.overall key contrains the overall writing score in the Speechace numerical scale (0..100). The overall score is the average of 4 sub-scores:

  • writing_score.speechace.task_response

  • writing_score.speechace.grammar

  • writing_score.speechace.vocab

  • writing_score.speechace.coherence

Which writing task_type should I use?

Here is when to use each task_type:

If the writing is an essay and at least 150 words, then use essay-writing. If it's general and less than 150 words, then use short-writing. If the prompt contains a chat scenario with the user expected to respond to a question or situation, then use chat-writing.

Last updated