Score Speech/Open-ended

Run in Postman: Language Scores

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/speech/v9/json

curl --location -g 'https://api.speechace.co/api/scoring/speech/v9/json?key={{speechace_premiumkey}}&dialect=en-us' \
--form 'user_audio_file=@"traveltoday.wav"' \
--form 'include_ielts_feedback=1'

Query Parameters

Parameter
Type
Description

key

String

API key issued by Speechace.

dialect

String

This is the dialect in which the speaker will be assessed. Supported values are "en-us" (US English) and "en-gb" (UK English).

user_id

String

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

Request Body

Parameter
Type
Description

user_audio_file

File

file with user audio (wav, mp3, m4a, webm, ogg, aiff)

question_info

String

Optional flag: A unique identifier (generated by your application) for the activity or question this user audio is answering.

include_ielts_feedback

String

1 Optional: Includes detailed feedback metrics for Grammar, Vocab, Coherence.

relevance_context

String

Optional: Question Prompt text provided to the user. When this parameter is passed, the relevance of the user audio transcript is evaluated given the relevance_context and a resulting relevance class is returned in .speech_score.relevance.class

pronunciation_score_mode

String

Optional field: Possible values -

  • default: will only penalize pronunciation errors which affect word intelligibility.

  • strict: will penalize prononciation errors even those which do not affect intelligibility resulting in generally lower pronunciation scores.

detect_dialect

String

Optional field: Possible values - 0 | 1

1: will apply language detection and warn if the majority of the response language is different from the intended scoring dialect.

enforce_dialect

String

Optional field: Possible values - 0 | 1

1: will apply language detection and error if the majority of the response language is different from the intended scoring dialect.

Setting enforce_dialect=1 automatically sets detect_dialect=1.

Response Example

{
  "status": "success",
  "quota_remaining": -1,
  "speech_score": {
    "transcript": "Yes, I do. Travel today is vastly different than what it used to be and the pasta traveler had little idea about what to expect when they arrived at their destination. These days the Internet connects our world in many ways previous generation could only dream about. We can instantly review destination information and make travel arrangements. Also, in the past people could only travel by land or sea and traveling was often long and unsafe.",
    "word_score_list": [...<metrics for all words in the utterance>],
    "ielts_score": {
      "pronunciation": 8.5,
      "fluency": 8.5,
      "grammar": 7,
      "coherence": 7,
      "vocab": 7,
      "overall": 7.5
    },
    "pte_score": {
      "pronunciation": 90,
      "fluency": 90,
      "grammar": 69,
      "coherence": 64,
      "vocab": 69,
      "overall": 78
    },
    "speechace_score": {
      "pronunciation": 94,
      "fluency": 96,
      "grammar": 79,
      "coherence": 76,
      "vocab": 79,
      "overall": 84
    },
    "toeic_score": {
      "pronunciation": 190,
      "fluency": 190,
      "grammar": 160,
      "coherence": 160,
      "vocab": 160,
      "overall": 170
    },
    "cefr_score": {
      "pronunciation": "C2",
      "fluency": "C2",
      "grammar": "B2",
      "coherence": "B2",
      "vocab": "B2",
      "overall": "C1"
    },
    "grammar": {
      "overall_metrics": {
        "length": {
          "score": 4,
          "level": "mid"
        },
        "lexical_diversity": {
          "score": 8,
          "level": "high"
        },
        "grammatical_accuracy": {
          "score": 8,
          "level": "high"
        },
        "grammatical_range": {
          "score": 5,
          "level": "mid",
          "message": "Your response has less grammatical range than most advanced speakers. To improve, you should use a wider range of phrasal and clausal structures and verb-argument constructions.",
          "noun_phrase_complexity": {
            "score": 1,
            "level": "low",
            "message": "Your response lacks noun phrase complexity. You should use richer modifiers in noun phrases by using adjectives, relative clauses, prepositional phrases, non-finite elements, determiners, and demonstratives."
          },
          "noun_phrase_variation": {
            "score": 5,
            "level": "mid"
          },
          "verb_construction_variation": {
            "score": 6,
            "level": "mid"
          },
          "adverb_modifier_variation": {
            "score": 9,
            "level": "high"
          }
        }
      },
      "errors": [
        {
          "category": "STYLE",
          "message": "Did you mean 'different from'? 'Different than' is often considered colloquial style.",
          "span": [
            44,
            48
          ],
          "matched_text": "than",
          "replacements": [
            "from"
          ]
        }
      ]
    },
    "vocab": {
      "overall_metrics": {
        "lexical_diversity": {
          "score": 10,
          "level": "high"
        },
        "word_sophistication": {
          "score": 9,
          "level": "high"
        },
        "word_specificity": {
          "score": 6,
          "level": "mid",
          "message": "Your response uses more general words than most advanced speakers. To improve, you should aim to learn and use verbs, nouns, and adjectives more specific to the meaning you wish to convey."
        },
        "academic_language_use": {
          "score": 1,
          "level": "low",
          "message": "Your response is low on use of academic words. You should learn and use some academic language in your responses to improve."
        },
        "collocation_commonality": {
          "score": 9,
          "level": "high"
        },
        "idiomaticity": {
          "score": 4,
          "level": "mid"
        }
      }
    },
    "coherence": {
      "overall_metrics": {
        "lexical_density": {
          "score": 10,
          "level": "high"
        },
        "basic_connectives": {
          "score": 5,
          "level": "mid",
          "examples": [
            "and",
            "or"
          ]
        },
        "causal_connectives": {
          "score": 10,
          "level": "high"
        },
        "negative_connectives": {
          "score": 5,
          "level": "mid",
          "message": "Great Job! Your response used negative connectives which added contrast to your argument. See the list of some of the negative connectives used.",
          "examples": [
            "or"
          ]
        },
        "pronoun_density": {
          "score": 4,
          "level": "mid"
        },
        "adverb_diversity": {
          "score": 10,
          "level": "high"
        },
        "verb_diversity": {
          "score": 10,
          "level": "high"
        }
      }
    },
    "fluency": {...<fluency metrices>},
    "asr_version": "0.4"
  },
  "version": "9.5"
}

Last updated