Speechace
  • Introduction
    • Overview
    • Use-Cases
  • Getting Started
    • Pre-requisites
      • API Features
      • Getting the API Key
      • API Regions and endpoints
      • API Limits
    • API Samples
    • Supported Languages
    • API Versioning
    • Authentication
    • Try the Speechace API
    • Error Handling
      • Common Errors
      • Retry Strategies
  • Solutions
    • Speaking Practice for Language Learning
    • Automated Language Assessment with AI
    • Voice AI for Early Literacy
    • Test Prep for Standardized tests
      • PTE Speaking Questions
      • IELTS Speaking Questions
      • TOEFL Speaking Questions
      • CEFR Speaking Questions
      • TOEIC Speaking Questions
    • Speaking Practice in Spanish and French
  • Features
    • Introduction
    • Scripted activities
      • Pronunciation Scoring
        • Word and Sentence pronunciation
        • Multiple choice
        • Custom pronunciations
        • Phoneme list
      • Fluency scoring
        • Passage scoring
      • Lexical stress and intonation
    • Spontaneous activities
      • Open-ended scoring
        • Language scoring
        • Relevance scoring
        • Language detection
      • Task achievement scoring
        • Describe Image
        • Re-tell Lecture
        • Answer Question
  • API Reference
    • Postman API reference
    • Score Text/Pronunciation
      • Handling overall scores
      • Handling word scores
      • Handling phoneme and syllable scores
    • Score Text/Multiple choice
      • Handling multiple choice response
    • Score Text/Markup Language
      • Handling Markup Response
    • Score Text/Stress & Intonation
      • Handing stress and intonation response
    • Score Text/Phoneme list
      • Handling phoneme list response
    • Score Text/Fluency
      • Handling fluency response
      • Fidelity detection
    • Score Text/Validate Text
    • Score Speech/Open-ended
      • Handling language scores
      • Per metric feedback
        • Grammar metrics
        • Vocabulary metrics
        • Coherence metrics
    • Score Speech/Relevance
      • Handling relevance response
    • Score Speech/Language Detection
    • Score Task/Task Achievement
  • Guides on common topics
    • Intepreting quality score
    • Interpreting overall scores
      • Pronunciation Bands
      • Fluency Bands
      • Vocabulary Bands
      • Grammar Bands
      • Coherence Bands
    • Scoring rubrics
    • Interpreting fidelity class
    • Phonetic notation
      • US English (en-us)
      • UK English (en-gb)
      • French (fr-fr, fr-ca)
      • Spanish (es-es, es-mx)
      • US English (en-us)
    • Getting word timestamps in audio
    • Automatic handling of unknown words
    • Phoneme to letter mapping
    • Markup Language
  • Other Resources
    • Requesting Support
    • Rate Limiting
    • Data Retention
    • FAQs
    • Appendices
Powered by GitBook
On this page
  • Request Format
  • Query Parameters
  • Request Body
  • Response Example
  1. API Reference

Score Speech/Open-ended

PreviousScore Text/Validate TextNextHandling language scores

Last updated 7 months ago

Run in Postman:

Request Format

The endpoint that is to be used will depend on the of your subscription. For example, for US West, the endpoint is

POST

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

dialect

String

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"
}

API issued by Speechace.

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

Language Scores
region
https://api.speechace.co
https://api.speechace.co/api/scoring/speech/v9/json
key
dialect