public Observable<ServiceResponse<LanguageBatchResult>> detectLanguageWithServiceResponseAsync(List<Input> documents) {
        if (this.client.azureRegion() == null) {
            throw new IllegalArgumentException("Parameter this.client.azureRegion() is required and cannot be null.");
        }
        Validator.validate(documents);
        BatchInput input = new BatchInput();
        input.withDocuments(documents);
        String parameterizedHost = Joiner.on(", ").join("{AzureRegion}", this.client.azureRegion());
        return service.detectLanguage(this.client.acceptLanguage(), input, parameterizedHost, this.client.userAgent())
            .flatMap(new Func1<Response<ResponseBody>, Observable<ServiceResponse<LanguageBatchResult>>>() {
                @Override
                public Observable<ServiceResponse<LanguageBatchResult>> call(Response<ResponseBody> response) {
                    try {
                        ServiceResponse<LanguageBatchResult> clientResponse = detectLanguageDelegate(response);
                        return Observable.just(clientResponse);
                    } catch (Throwable t) {
                        return Observable.error(t);
                    }
                }
            });
    }
public Observable < ServiceResponse < LanguageBatchResult > > detectLanguageWithServiceResponseAsync ( List < Input > documents ) { if ( this . client . azureRegion ( ) == null ) { throw new IllegalArgumentException ( "Parameter this.client.azureRegion() is required and cannot be null." ) ; } Validator . validate ( documents ) ; BatchInput input = new BatchInput ( ) ; input . withDocuments ( documents ) ; String parameterizedHost = Joiner . on ( ", " ) . join ( "{AzureRegion}" , this . client . azureRegion ( ) ) ; return service . detectLanguage ( this . client . acceptLanguage ( ) , input , parameterizedHost , this . client . userAgent ( ) ) . flatMap ( new Func1 < Response < ResponseBody > , Observable < ServiceResponse < LanguageBatchResult > > > ( ) { @ Override public Observable < ServiceResponse < LanguageBatchResult > > call ( Response < ResponseBody > response ) { try { ServiceResponse < LanguageBatchResult > clientResponse = detectLanguageDelegate ( response ) ; return Observable . just ( clientResponse ) ; } catch ( Throwable t ) { return Observable . error ( t ) ; } } } ) ; }
The API returns the detected language and a numeric score between 0 and 1.
Scores close to 1 indicate 100% certainty that the identified language is true. A total of 120 languages are supported.

@param documents the List&lt;Input&gt; value
@throws IllegalArgumentException thrown if parameters fail the validation
@return the observable to the LanguageBatchResult object