# How to Upload Files for Private Assistants

When you create an assistant and set it to **private**, you gain the ability to upload files in two distinct sections: **Code Interpreter** and **File Search**. These files enhance the assistant’s ability to analyze, transform, and search for data when responding to user queries.

***

**Code Interpreter**

The **Code Interpreter** allows you to analyze and transform data directly within the chat. Uploaded files are processed by the assistant to perform operations, computations, or analyses based on their content. For example:

* If you upload a Python script (`.py`), the assistant can execute it or analyze its content to solve problems.

<figure><img src="/files/OWa0kk2lG9yRlsdCPaa7" alt=""><figcaption></figcaption></figure>

**Supported File Types**:\
`c, cpp, docx, html, java, json, md, pdf, php, pptx, py, rb, tex, txt, css, js, ts, csv, jpeg, jpg, gif, png, tar, xlsx, xml, zip`

***

**File Search**

The **File Search** section allows the assistant to use your uploaded files as a knowledge base for answering questions in the chat. These files are indexed, enabling the assistant to retrieve relevant information or data to address your queries.

You can ask the assistant for specific keywords, columns, or data within the files, and it will provide the most relevant results. For example:

* If you upload a PDF containing technical specifications, you can ask, “What is the voltage specification for the device?” and the assistant will search the document to provide the answer.

<figure><img src="/files/r1ayjVBb7YAeuadqJATv" alt=""><figcaption></figcaption></figure>

**Supported File Types**:\
`c, cpp, docx, html, java, json, md, pdf, php, pptx, py, rb, tex, txt, css, js, ts`

{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl2dmTEKSqnEOjqqng3nd%2Fuploads%2FKUsrejkHHcqSbWIo58dc%2FHowToUploadFiles.mp4?alt=media&token=02eb44ff-3690-49e8-943d-7a0ad1c935b5>" %}
Tutorial of How to Upload a File
{% endembed %}


---

# 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.ixhello.com/ixhello/assistant-builder/how-to-upload-files-for-private-assistants.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.
