# Advanced functions: best practices and use cases

### Best practices for using functions

Following these best practices will help you create effective and reliable functions:

1. **Clear, concise names**: choose names that immediately describe the function's purpose; for example, "get\_weather" is clearer than "external\_service";
2. **Detailed descriptions**: provide a complete description explaining what the function does and when to use it; this helps both the AI and other developers understand its purpose;
3. **Well-defined parameters**: clearly define the required parameters and provide a complete description to guide the generative AI;
4. **Test, test, test**: before putting a function into production, test it in various scenarios.

### Common use cases

Functions in AIsuru can be used in many creative ways. Here are some common use cases to inspire you:

* [**Connecting to a website**](/en/advanced-features/integrations/functions/advanced-functions/best-practices/use-case-automatic-update-agent-always-connected.md): retrieve real-time information from external sources, like weather forecasts, exchange rates, or breaking news;
* **CRM integration**: let the AI access and update customer data in your CRM without ever leaving the chat;
* **Email integration**: receive an email with the user's details when they show interest in your services;
* **Availability checking**: check product availability in a warehouse or hotel room availability.


---

# 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.aisuru.com/en/advanced-features/integrations/functions/advanced-functions/best-practices.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.
