# Интеграции

## Вопросы на которые ответим:

* Какие форматы данных используются для передачи данных?
  * Что такое JSON? Для чего используется?
  * Что такое XML и что в нем содержится?
  * Чем отличаются форматы XML и JSON?
  * (\*) Что такое XSD?
  * Что такое JSON схема и для чего она нужна?
* Какие виды и способы интеграций систем вы знаете?
* Что такое синхронные и асинхронные вызовы? Чем отличаются синхронное и асинхронное взаимодействия?
* Что такое HTTP?
  * Какие основные HTTP методы знаете?
  * Расскажите про HTTP сообщения. Какую структуру имеет запрос? Какую структуру имеет ответ? Какие коды состояния (status code) знаете и что они означают?
  * Что знаете про концепцию CRUD?
* Что такое API?
* Какие виды API бывают?
* Что такое REST API?
  * Проектировали ли вы API? Каким образом описывали спецификации?
  * Какие методы REST вы знаете?
  * Чем POST отличается от GET? Чем отличается POST от PUT?
  * (\*) Что такое идемпотентность?
  * (\*) Что содержит HEADER в ответе REST?
  * (\*) В каких местах (четырех) мы можем передать атрибуты в запросе? (Path, Body, Query, Header).
  * (\*) Чем отличается ошибка 200 от 201?
  * (\*\*) Напишите пример REST API для книжной библиотеки (напишите методы, эндпоинты и пример JSON)
  * Тестировали ли вы сами API? Какое ПО использовали?
* Чем REST отличается от SOAP?
* (\*) Что такое WSDL?
* Что такое асинхронное взаимодействие?
  * Что такое брокер сообщений?
  * Для чего нужны massages broker?
  * Что такое топик? Что такое партиция?
  * (\*) Что такое гарантированная доставка сообщений и какими механизмами ее можно обеспечить?
  * (\*) Отличия RabbitMQ и Kafka


---

# 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.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.
