> For the complete documentation index, see [llms.txt](https://py3xui.gitbook.io/py3xui-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://py3xui.gitbook.io/py3xui-docs/release-notes/0.7.0.md).

# 0.7.0

Release date: 2026-06-02

For step-by-step upgrade instructions, see [Migration to 0.7.0](/py3xui-docs/migrations/0.7.0.md).

## Summary

This release aligns py3xui with modern 3x-ui v3 endpoint behavior, with full sync/async parity and live-panel validation.

## Highlights

* Migrated client routes from legacy `panel/api/inbounds/*` to `panel/api/clients/*`.
* Kept public method names stable where possible.
* Added compatibility logic for changed identifiers and payload formats.
* Fixed additional server/inbound/database endpoint mismatches found during real environment testing.

## Changed

* Client API endpoints now use `panel/api/clients/*` routes.
* `client.update` now targets email-based route and normalizes payload id where needed.
* `client.get_by_email` supports nested response shape (`obj.client`, `obj.inboundIds`).
* `client.get_traffic_by_id` uses `clients/list` with local filtering.
* `inbound.reset_client_stats` mapped to global clients traffic reset endpoint.
* `database.export` mapped to the current backup endpoint.
* `server.get_server_config` parsing made tolerant to optional/null sections.
* `server.install_new_xray_version` sync behavior fixed to accept successful responses when `obj` is null.

## Compatibility Notes

* Some method parameters are retained for backward compatibility even if the latest upstream route no longer uses them.
* Integrations that assume strict inbound-scoped client operations should retest flows against current 3x-ui behavior.

## Validation

* Unit tests: passed
* Type checks (`mypy`): passed
* Lint checks (`pylint`): passed
* Live panel execution: sync and async methods verified against 3x-ui v3.2.6

## PR/Release Notes Snippet

Use this block in GitHub PR or release description:

```markdown
## py3xui 0.7.0

This release migrates py3xui to modern 3x-ui v3 client endpoints and resolves compatibility gaps discovered in live testing.

### What changed
- Migrated client operations to `panel/api/clients/*`
- Preserved sync/async API parity and stable public method names
- Added compatibility logic for email/UUID/id mapping and nested client payloads
- Fixed endpoint mismatches in inbound reset and database export flows
- Improved server config parsing for optional/null fields
- Fixed sync Xray install success handling when response `obj` is null

### Validation
- Tests, mypy, and pylint all pass
- End-to-end live validation completed against 3x-ui v3.2.6
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://py3xui.gitbook.io/py3xui-docs/release-notes/0.7.0.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
