# Cтепень зрелости REST API

## Уровень 0: Собачье болото (The Swamp of POX)

В википедии данный уровень зрелости называется болотом оспы, но мне такое название не очень нравится(звучит противно), поэтому добавим немного поэзии и переведем **The Swamp of Plain Old XML**, как болото Простого Старого Ыксемеля, что сокращенное читается, как ПСЫ, а значит собачье.

Вообще, данный уровень нулевой потому, что систему, данного уровня вообще нельзя классифицировать, как **RESTful**.

В такой реализации у нас есть один **URL**, на который поступают все запросы (обычно **POST**) и система уже по составу запроса решает, что от нее хотят и какой ей дать на это ответ.

Однако, даже для такого спорного уровня зрелости существуют свои правила:

* **В URL адресах должны использоваться дефисы** **(-)**, чтобы улучшить их читаемость. Это значит, что при составлении адресов должен использоваться spinal-case.

  Пример:

  <http://api.example.com/blogs/guy-levin/posts/this-is-my-first-post> - хорошо

  <http://api.example.com/blogs/guylevin/posts/thisismyfirstpost> - плохо
* **Не должны использоваться нижние подчеркивания** **(\_)**

  Тут все очевидно – смотрим правило 1
* Предпочтительно использовать строчные буквы при составлении URL адресов

  Тут тоже все понятно:

  <http://api.example.com/my-folder/my-doc> - хорошо

  <http://api.example.com/My-Folder/my-doc> - плохо
* В URL нельзя включать расширения файлов

  Это значит, что когда мы хотим получить какой-либо файл с сервера, то мы не указываем его расширение:

  <http://api.college.com/student/3248234/course/2005/fall> - хорошо

  <http://api.college.com/student/3248234/course/2005/fall.json> - плохо

## РАСПИСАТЬ ДАЛЬШЕ&#x20;

Источник: <https://habr.com/ru/companies/itq_group/articles/705598/>

<https://habr.com/ru/articles/590679/> (новая)


---

# 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.system-analyst-base.ru/hard-skills/integracii/vidy-integracii/sinkhronnoe-vzaimodeistvie/rest/restful-principy/ctepen-zrelosti-rest-api.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.
