> ## Documentation Index
> Fetch the complete documentation index at: https://docs.berri.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Getting Started

> Now it's your time to shine. Keep reading to learn more on how to make your docs beautiful and powerful.

# Create your 1st Berri in just 2 steps!

👩🏽‍💻 Code: [https://replit.com/@krrishdholakia/BerriAPIQuizlet?v=1#main.py](https://replit.com/@krrishdholakia/BerriAPIQuizlet?v=1#main.py)

🚀 Playground - [berri.ai/](https://play.berri.ai/).

## Step 1: Create an App

Creating an app requires 2 things:

1. User email: so we can map the created app to your account
2. Data source: This is either the file or url (website or api endpoint) you'd like to query.

Note: For our quick start we won't go into it, but you also have the option of customizing your app (custom prompting, search strategies, etc.). Go to [App Configurations](../api-reference/app_configurations/app_configurations_intro) to learn more.

For now, let's do it on a sample pdf.

Ensure that you are reading the file and sending its contents.
This works for PDF, DOC, TXT, CSV, and PPTX files.

<CodeGroup>
  ```bash curl theme={null}
  curl -X POST \
    https://api.berri.ai/create_app \
    -H 'Content-Type: multipart/form-data' \
    -F user_email=krrish@berri.ai \
    -F data_source=@/Users/krrishdholakia/Downloads/quizlet_wa_test_1.pdf
  ```

  ```python python theme={null}
  import requests

  url = "https://api.berri.ai/create_app"

  data = {"user_email": "krrish@berri.ai"}

  files = {'data_source': open('quizlet_wa_test_1.pdf', 'rb')}

  response = requests.post(url, files=files, data=data)

  print(response.text)

  api_endpoint = response.json()["api_endpoint"]
  ```

  ```javascript javascript theme={null}
  const request = require("request");

  const url = "https://api.berri.ai/create_app";

  const data = {
    user_email: "krrish@berri.ai",
  };

  const files = {
    data_source: fs.createReadStream("quizlet_wa_test_1.pdf"),
  };

  const response = request.post(
    { url: url, formData: { data, files } },
    function (err, httpResponse, body) {
      if (err) {
        return console.error("upload failed:", err);
      }
      console.log("Upload successful!  Server responded with:", body);
    }
  );

  const api_endpoint = JSON.parse(body)["api_endpoint"];
  ```

  ```javascript node.js theme={null}
  const request = require("request");
  const fs = require("fs");

  const options = {
    method: "POST",
    url: "https://api.berri.ai/create_app",
    headers: {
      "Content-Type": "multipart/form-data",
    },
    formData: {
      user_email: "krrish@berri.ai",
      data_source: {
        value: fs.createReadStream("quizlet_wa_test_1.pdf"),
        options: {
          filename: "quizlet_wa_test_1.pdf",
          contentType: "application/pdf",
        },
      },
    },
  };

  request(options, function (error, response, body) {
    if (error) throw new Error(error);

    console.log(body);
  });
  ```
</CodeGroup>

## Step 2: Try your app!

Congratulations, you've just built your first Berri app.

You can share this app with your friends with the website\_endpoint, or integrate this into your app with the api\_endpoint!

Here's an example of how you can query the api endpoint:

```python theme={null}
url = api_endpoint

user_query = "What do you know?"

final_url = api_endpoint + "&query=" + user_query

response = requests.get(final_url)

print(response.text)

system_response = response.json()["response"]

```
