# Administration from the API or an external application
All command line actions can also be ran from the web API. The API is available at https://your.server/yunohost/api. For now there's no documentation on the various routes ... but you can get an idea by looking at the actionmap [here](https://github.com/YunoHost/yunohost/blob/stretch-unstable/data/actionsmap/yunohost.yml) (in particular the `api` stuff).
## Using `curl`
You must first retrieve a login cookie to perform the actions. Here is an example via curl:
```bash
# Login (with admin password)
curl -k -H "X-Requested-With: customscript" \
-d "password=supersecretpassword" \
-dump-header headers \
https://your.server/yunohost/api/login
# GET example
curl -k -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-L -b headers -X GET https://your.server/yunohost/api/ROUTE \
| grep } | python -mjson.tool
```
## Using a PHP class
To simplify the remote administration of a YunoHost instance in CHATONS/Librehosters projects, API classes have been developed by users.
For example, this [PHP class](https://github.com/scith/yunohost-api-php) will allow you to administer your YunoHost instance from a PHP application (website, capacity management tool...).