[Документация Yandex Cloud](../../index.md) > [Yandex SmartCaptcha](../index.md) > Концепции > Объект Javascript Interface

# Объект Javascript Interface

Javascript Interface — объект, который передается ОС Android в **WebView**. В дальнейшем фронтенд будет обращаться к этому объекту, чтобы отправлять сообщения с помощью функции обратного вызова на Android.

## Структура Javascript Interface {#structure}

### Метод onGetToken(token: String): Unit {#ongettoken-method}

Обязательный метод, через который передается токен прохождения капчи. Он вызывается на фронтенде, когда сервис обработал попытку пользователя пройти капчу.

### Метод onChallengeVisible(): Unit {#onchallengevisible-method}

Необязательный метод (нужен только при встраивании невидимой капчи). Вызывается, когда невидимая капча показывает задание пользователю. Изначально **WebView** с невидимой капчей скрыт — необходимо отслеживать момент, когда нужно показать **WebView**.

### Метод onChallengeHidden(): Unit {#onchallengehidden-method}

Необязательный метод (нужен только при встраивании невидимой капчи). Если пользователь "смахнул" капчу с экрана, самостоятельно восстановить ее не получится — нужно отобразить пользователю предыдущий экран.

{% note info "Примечание" %}

При создании класса указанные выше методы помечаются аннотацией `@JavascriptInterface`.
При разработке собственного сайта с капчей название вышеуказанных методов можно изменить. В этом случае нужно также изменить их название на стороне фронтенда.

{% endnote %}