# Introduction

## Overview

SA LUA scripting allows you to run commands through an internal API and make changes to SA while it's connected. The LUA scripting is run in a sandbox mode with restrictions on what can be done on your computer. This makes it safe to import other scripts because the only thing that can be impacted negatively is your Stream Avatars data and the application's performance.

{% hint style="info" %}
If you are looking to quickly add community created scripts, visit the Importing Scripts page.
{% endhint %}

{% content-ref url="/pages/qt64PxaHvn4wLmt5kIX6" %}
[Importing Scripts](/stream-avatars/content-creating/importing-scripts.md)
{% endcontent-ref %}

## Access API Externally

If you are looking for an API that allows another application to interact with your SA, you will have to write your own communications.

{% hint style="success" %}
Web-sockets and http-get/post are a good way to pass information back and forth between an external application and SA&#x20;
{% endhint %}

{% content-ref url="/pages/B2mpOhPekQm6HKbQscUT" %}
[Websockets](/lua-scripting-api/api-reference-and-tips/events/websockets.md)
{% endcontent-ref %}

{% content-ref url="/pages/WrT8dYktiwUsMeaflBIB" %}
[webrequest get/post](/lua-scripting-api/api-reference-and-tips/global-functions/webrequest-get-post.md)
{% endcontent-ref %}

{% hint style="info" %}
Alternatively you can write commands into the streaming-platform's chat box and have SA run instructions based off [chat messages](/lua-scripting-api/api-reference-and-tips/events/read-chat.md) read through a LUA script.
{% endhint %}

## Start Scripting

Want to start making a script from scratch? Find more information and tricks with the link below.

{% content-ref url="/pages/Y1SBxlFUoiFVSPlV1zTL" %}
[Quick Start](/lua-scripting-api/quick-start.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.streamavatars.com/lua-scripting-api/introduction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
