Request Payload
This sub-page helps the integrator to understand two different types of request payload, one without any additional configuration parameters, and one with additional configuration para
{
    "pipelineTasks" : [
        {
            "taskType" : "asr"
        },
        {
            "taskType": "translation"
        },
        {  
            "taskType": "tts"
        }
    ],
    "pipelineRequestConfig" : {
        "pipelineId" : "xxxx8d51ae52cxxxxxxxx"
    }
}Parameters
We will now understand about each parameter available as a part of this payload. taskType
Type: String
Line 3-5 for ASR
Line 6-8 for Translation
Line 9-11 for TTS
pipelineTasks
Type: Array
This parameter takes an array of tasks, in the form of dictionary of taskType as defined above, that are to be done by the integrator. The sequence of tasks matter. In the above example, the configuration that will be returned back in the response will be for tasks ASR, Translation and TTS in that order.
Each pipelineId (discussed below), may support few individual or task sequences as explained here and here and detailed out below. 
pipelineId
Type: String
pipelineId takes a string value of the specific pipeline integrator wants to use. The pipeline ID can be obtained either via Pipeline Search Call or via ULCA Web based on the description which helps the integrator to understand what a pipeline can or cannot do.
Each pipeline ID may support multiple task and task sequences.
The same has been explained here and here.
pipelineRequestConfig
Type: Dictionary This parameter takes in the configuration requested to do the sequence of tasks defined under parameter pipelineTasks.
Integrators want to do individual tasks
pipelineTasks array takes only one dictionary with taskType as asr 
"pipelineTasks" : [
    {
        "taskType" : "asr"
    }
]pipelineTasks array takes only one dictionary with taskType as translation 
"pipelineTasks" : [
    {
        "taskType" : "translation"
    }
]pipelineTasks array takes only one dictionary with taskType as tts 
"pipelineTasks" : [
    {
        "taskType" : "tts"
    }
]Integrators want to do combination of tasks in that order
pipelineTasks array takes two dictionaries with taskType as asr and translation in that sequence.
Requesting Server with this in the pipelineTasks parameter would mean that integrator wants to ask the server to give the configuration details where server will be able to perform ASR and Translation together by first doing ASR on the input audio, generating digital text of that audio and then also able to generate translation on the output of that ASR.
"pipelineTasks" : [
    {
        "taskType" : "asr"
    },
    {
        "taskType" : "translation"
    }
]pipelineTasks array takes two dictionaries with taskType as translation and tts in that sequence.
Requesting Server with this in the pipelineTasks parameter would mean that integrator wants to ask the server to give the configuration details where server will be able to perform Translation and TTS together by first doing Translation on the input text, generating translated text in another language and then also able to generate Speech on the output of that translation. 
"pipelineTasks" : [
    {
        "taskType" : "translation"
    },
    {
        "taskType" : "tts"
    }
]pipelineTasks array takes three dictionaries with taskType as asr, translation and tts in that sequence.
Requesting Server with this in the pipelineTasks parameter would mean that integrator wants to ask the server to give the configuration details where server will be able to perform ASR, Translation and TTS together by first performing ASR, thereby generating digital text from the input audio, then doing Translation on the output of previous ASR, thereby generating digital text in another language and finally doing TTS on the output of previous Translation, thereby generating Speech in the required language. 
"pipelineTasks" : [
    {
        "taskType" : "asr"
    },
    {
        "taskType" : "translation"
    },
    {
        "taskType" : "tts"
    }
]{
    "pipelineTasks": [
        {
            "taskType": "asr",
            "config": {
                "language": {
                    "sourceLanguage": "xx"
                }
            }
        },
        {
            "taskType": "translation",
            "config": {
                "language": {
                    "sourceLanguage": "xx",
                    "targetLanguage": "yy"
                }
            }
        },
        {
            "taskType": "tts",
            "config": {
                "language": {
                    "sourceLanguage": "yy"
                }
            }
        }
    ],
    "pipelineRequestConfig": {
        "pipelineId" : "xxxx8d51ae52cxxxxxxxx"
    }
}Parameters
Only additional parameter config is detailed out below. Rest of the parameters' understanding remains the same as Without configuration parameters.
config
Type: dictionary
config parameter is used for sending configuration parameters to the server for each taskType. Each taskType may have some common parameters such as language and some parameters which are specific to each taskType.
config
Type: dictionary
contains: language Type: dictionary contains: sourceLanguage Type: String Source Language will take the ISO-639 code of the language as the input. This parameter will tell the server that integrator wants to receive the information and details about Speech Recognition in this specific language.
Type: dictionary
contains:
language
Type: dictionary
contains:
sourceLanguage
Type: String
Source Language will take the ISO-639 code of the language as the input. This parameter will tell the server that integrator wants to receive the Translation information where the input can be translated FROM this language to another language specified in the targetLanguage below.
and
targetLanguage
Type: String
Target Language will also take the ISO-639 code of the language as the input. This parameter will tell the server that integrator wants to receive the Translation information where the input can be translated TO this language from another language specified un the sourceLanguage above.
Type: dictionary
contains: language Type: dictionary contains: sourceLanguage Type: String Source Language will take the ISO-639 code of the language as the input. This parameter will tell the server that integrator wants to receive the information and details about converting text to speech for this specific language.
Last updated