# API Versioning Policy

## API Versioning

TF Platform uses **header-based versioning**. You specify the API version in the request header without altering the URL structure.

```http
TF-API-Version: 1.0.0
```

If no version header is provided, the **latest stable major version** will be used by default.

***

### Semantic Versioning

TF Platform follows **semantic versioning (semver)** in the format **{major}.{minor}.{patch}**:

* **Major (X.0.0)** – breaking changes, not backward-compatible.
* **Minor (X.Y.0)** – backward-compatible new features.
* **Patch (X.Y.Z)** – bug fixes and minor improvements.

**Examples:** v1.2.0, v2.0.3, v3.1.1.

***

### API Request Example

```http
GET https://your-domain.com/api/resource
Host: your-domain.com
TF-API-Version: 1.2.3
```

***

### Best Practices

* Always specify the **full version (X.Y.Z)** in production to avoid unexpected changes.
* Test against new minor versions before upgrading.
* Refer to the **Service Level Agreement (SLA)** for details on version support windows and deprecation notice periods.

***

### Version Tags

All TF Platform open-source components use semantic versioning and are tagged in repositories with a **v** prefix (e.g., `v2.3.1`).


---

# 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.simptel.com/tf-platform/administration/support/api-versioning-policy.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.
