# Quick start

> Send your first log line to JustLog3 Cloud in about two minutes, from Python, Go or plain HTTP.

JustLog3 Cloud is a hosted log service. Your program sends plain-text log lines over HTTPS with an API token; you read them in the dashboard, get a Telegram message when a session grows past a threshold, and ask an AI assistant about them. The Free plan takes 5,000 lines a day and needs no card.

## 1. Get an API token

[Sign up](https://jl3-cloud.site/authentication/signup/) with Google or GitHub. The token is in the **API token** panel on your dashboard. Anyone with the token can write to your workspace, so keep it out of public repositories; you can rotate it from the same panel.

## 2. Install a library

Official libraries batch lines, retry on network errors and keep writing a local log file, so a cloud outage never loses data:

```bash
pip install justlog3                      # Python 3.8+
go get github.com/OAzizjon/justlog3/go    # Go 1.23+, standard library only
```

Any other language can use the [HTTP API](https://jl3-cloud.site/docs/http-api/) directly.

## 3. Write your first log

Python:

```python
from justlog3 import Logger, set_api_token

set_api_token('YOUR_API_TOKEN', url='https://jl3-cloud.site/api/logs/')

logger = Logger('app.log')
logger.log('Hello from Python!', green=True)
```

Go:

```go
package main

import (
	"log"

	justlog3 "github.com/OAzizjon/justlog3/go"
)

func main() {
	err := justlog3.SetAPIToken("YOUR_API_TOKEN",
		justlog3.WithURL("https://jl3-cloud.site/api/logs/"))
	if err != nil {
		log.Fatal(err)
	}
	defer justlog3.Shutdown()

	logger, err := justlog3.NewLogger("app.log")
	if err != nil {
		log.Fatal(err)
	}
	logger.Log("Hello from Go!", justlog3.Green())
}
```

curl:

```bash
curl -X POST "https://jl3-cloud.site/api/logs/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: text/plain" \
  -H "X-JustLog-Logger: manual" \
  --data "Hello from HTTP!"
```

## 4. Check your logs

Lines are sent in batches: every 75 lines, every 5 seconds and when the program exits. Open **Logs** in the dashboard: each run of your program is a session, and long sessions open on their own page.

## Next steps

- [Telegram alerts](https://jl3-cloud.site/docs/alerts/): get a message when a session crosses 100 lines.
- [AI assistant](https://jl3-cloud.site/docs/ai-assistant/): ask why a run failed, with your logs and GitHub repositories in context.
- [Plans and limits](https://jl3-cloud.site/docs/limits/): what each plan includes.
