База технических писателей v1.0.0
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
API для работы с базой данных о технических писателях и их навыками. API позволяет получать:
- список технических писателей,
- список навыков каждого из них,
- информацию о конкретном техническом писателе по идентификатору.
techwriters
Методы для работы с техническими писателями
getAllТws
Code samples
# You can also use wget
curl -X GET /techwriters \
-H 'Accept: application/json'
URL obj = new URL("/techwriters");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /techwriters
Получение списка технических писателей
Метод возвращает список технических писателей из базы.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | integer(int64) | false | Количество технических писателей в выдаче (для пагинации). |
Detailed descriptions
limit: Количество технических писателей в выдаче (для пагинации).
Значение по умолчанию 20
Example responses
200 Response
{
"items": [
{
"id": 123,
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
],
"limit": 10
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | Inline |
400 | Bad Request | Неверный формат limit | None |
404 | Not Found | В базе не найдено технических писателей | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» items | [Techwriter] | true | none | Список технических писателей |
»» id | integer(int64) | true | none | Идентификатор технического писателя |
»» firstName | string | true | none | Имя технического писателя |
»» secondName | string | true | none | Фамилия технического писателя |
»» patronymic | string | false | none | Отчество технического писателя. Необязательное поле |
»» experience | integer(int64) | true | none | Опыт работы (в месяцах) |
»» phoneNumber | string(phone) | false | none | Номер телефона для связи |
string(email) | true | none | Адрес электронной почты технического писателя | |
»» skills | [integer] | true | none | Список навыков (массив идентификаторов навыков) |
» limit | integer | true | none | none |
addТw
Code samples
# You can also use wget
curl -X POST /techwriters \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
URL obj = new URL("/techwriters");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
POST /techwriters
Добавление технического писателя в базу
Метод добавляет нового технического писателя в базу
Body parameter
{
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | NewTechwriter | true | Данные технического писателя |
Example responses
201 Response
{
"id": 123,
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | Created | Techwriter |
405 | Method Not Allowed | Неверный формат ввода | None |
findТwByID
Code samples
# You can also use wget
curl -X GET /techwriters/{techwriterId} \
-H 'Accept: application/json'
URL obj = new URL("/techwriters/{techwriterId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /techwriters/{techwriterId}
Получение информации о техническом писателе по идентификатору
Метод возвращает информацию о техническом писателе по его идентификатору
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
techwriterId | path | integer(int64) | true | Идентификатор технического писателя, о котором нужно получить информацию |
Example responses
200 Response
{
"id": 123,
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | Techwriter |
400 | Bad Request | Задан неверный id | None |
404 | Not Found | Технический писатель не найден | None |
updateTwInfo
Code samples
# You can also use wget
curl -X PATCH /techwriters/{techwriterId} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
URL obj = new URL("/techwriters/{techwriterId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
PATCH /techwriters/{techwriterId}
Редактирование сведений о техническом писателе
Метод изменяет сведения о техническом писателе. Метод изменяет сведения частично: можно передать только имя, фамилию, отчество, опыт, номер телефона, адрес электронной почты или идентификатор навыка. Обязательно должен быть передан хотя бы один параметр
Body parameter
{
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
techwriterId | path | integer(int64) | true | Идентификатор технического писателя, сведения о которым нужно изменить |
body | body | UpdTechwriter | true | Изменяемые сведения о техническом писателе |
Example responses
200 Response
{
"id": 123,
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | Techwriter |
404 | Not Found | Технического писателя с таким идентификатором нет в базе | None |
405 | Method Not Allowed | Неверный формат ввода | None |
deleteTechwriter
Code samples
# You can also use wget
curl -X DELETE /techwriters/{techwriterId}
URL obj = new URL("/techwriters/{techwriterId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
DELETE /techwriters/{techwriterId}
Удаление технического писателя из базы
Метод для удаления технического писателя из базы по его идентификатору
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
techwriterId | path | integer(int64) | true | Идентификатор технического писателя, которого нужно удалить из базы |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Технический писатель удален из базы | None |
404 | Not Found | Технического писателя с таким идентификатором нет в базе | None |
getТwSkillInfo
Code samples
# You can also use wget
curl -X GET /techwriters/{techwriterId}/skills/{skillId} \
-H 'Accept: application/json'
URL obj = new URL("/techwriters/{techwriterId}/skills/{skillId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /techwriters/{techwriterId}/skills/{skillId}
Получение информации о конкретном навыке конкретного технического писателя
Метод возвращает информацию о конкретном навыке конкретного технического писателя. Возвращается общая информация плюс опыт и подтверждающий документ для конкретного технического писателя
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
techwriterId | path | integer(int64) | true | Идентификатор технического писателя, о навыке которого нужно получить информацию |
skillId | path | integer(int64) | true | Идентификатор навыка конкретного технического писателя, о котором нужно получить информацию |
Example responses
200 Response
{
"techwriterId": 123,
"skillCommonInfo": {
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
},
"confirmingDocument": "mydocuments.com/API.pdf",
"linksExamples": [
[
"myexamples.com/example_1",
"myapidocs.com/exampleApiDoc.png"
]
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | TechwriterSkill |
400 | Bad Request | Соотношение технического писателя и навыка не найдено | None |
404 | Not Found | Технического писателя нет в базе | None |
addTWSkill
Code samples
# You can also use wget
curl -X POST /techwriters/{techwriterId}/skills/{skillId} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
URL obj = new URL("/techwriters/{techwriterId}/skills/{skillId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
POST /techwriters/{techwriterId}/skills/{skillId}
Добавление навыка для определенного технического писателя
Метод добавляет конкретный навык для определенного технического писателя
Body parameter
{
"confirmingDocument": "mydocuments.com/API.pdf",
"linksExamples": [
[
"myexamples.com/example_1",
"myapidocs.com/exampleApiDoc.png"
]
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
techwriterId | path | integer(int64) | true | Идентификатор технического писателя, которому добавляется навык |
skillId | path | integer(int64) | true | Идентификатор навыка |
body | body | TechwriterSkillInfo | true | Подтверждение навыка конкретного техписателя |
Example responses
200 Response
{
"techwriterId": 123,
"skillCommonInfo": {
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
},
"confirmingDocument": "mydocuments.com/API.pdf",
"linksExamples": [
[
"myexamples.com/example_1",
"myapidocs.com/exampleApiDoc.png"
]
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | TechwriterSkill |
404 | Not Found | Технического писателя с таким идентификатором нет в базе | None |
405 | Method Not Allowed | Неверный формат ввода | None |
skills
Методы для работы с навыками
getAllSkillsInfo
Code samples
# You can also use wget
curl -X GET /skills \
-H 'Accept: application/json'
URL obj = new URL("/skills");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /skills
Получение информации о доступных в системе навыках
Метод возвращает информацию обо всех доступных в системе навыках
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
limit | query | integer(int64) | false | Количество навыков в выдаче (для пагинации). |
Detailed descriptions
limit: Количество навыков в выдаче (для пагинации).
Значение по умолчанию 20
Example responses
200 Response
{
"items": [
{
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
],
"limit": 10
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | Inline |
400 | Bad Request | Неверный формат limit | None |
404 | Not Found | В базе не найдено навыков | None |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» items | [Skill] | true | none | Список навыков, доступных в системе |
»» id | integer(int64) | true | none | Идентификатор навыка |
»» skillName | string | true | none | Название навыка |
»» skillDescription | string | true | none | Описание навыка |
»» alias | string | true | none | Алиас навыка |
» limit | integer | true | none | none |
addSkill
Code samples
# You can also use wget
curl -X POST /skills \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
URL obj = new URL("/skills");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
POST /skills
Добавление навыка в базу
Метод добавляет новый навык в базу
Body parameter
{
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | NewSkill | true | Описание навыка |
Example responses
201 Response
{
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | Created | Skill |
405 | Method Not Allowed | Неверный формат ввода | None |
findSkillByID
Code samples
# You can also use wget
curl -X GET /skills/{skillId} \
-H 'Accept: application/json'
URL obj = new URL("/skills/{skillId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /skills/{skillId}
Получение информации о навыке по идентификатору
Метод возвращает информацию о навыке по его идентификатору
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
skillId | path | integer(int64) | true | Идентификатор навыка, о котором нужно получить информацию |
Example responses
200 Response
{
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | Skill |
400 | Bad Request | Задан неверный id навыка | None |
404 | Not Found | Навык не найден | None |
updateSkill
Code samples
# You can also use wget
curl -X PATCH /skills/{skillId} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
URL obj = new URL("/skills/{skillId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
PATCH /skills/{skillId}
Редактирование навыка
Метод изменяет описание навыка. Метод изменяет навык частично: можно передать только название, описание или алиас для изменения. Обязательно должен быть передан хотя бы один параметр
Body parameter
{
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
skillId | path | integer(int64) | true | Идентификатор навыка, который нужно изменить |
body | body | UpdSkill | true | Изменяемые свойства навыка |
Example responses
200 Response
{
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | Skill |
404 | Not Found | Навык не найден | None |
405 | Method Not Allowed | Неверный формат ввода | None |
deleteSkill
Code samples
# You can also use wget
curl -X DELETE /skills/{skillId}
URL obj = new URL("/skills/{skillId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
DELETE /skills/{skillId}
Удаление навыка из базы
Метод удаляет навык из базы по его идентификатору
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
skillId | path | integer(int64) | true | Идентификатор навыка, который нужно удалить |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ОК | None |
404 | Not Found | Навык не найден | None |
Schemas
NewSkill
{
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
skillName | string | true | none | Название навыка |
skillDescription | string | true | none | Описание навыка |
alias | string | true | none | Алиас навыка (на английском языке в camelCase) |
UpdSkill
{
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
skillName | string | false | none | Название навыка |
skillDescription | string | false | none | Описание навыка |
alias | string | false | none | Алиас навыка (на английском языке в camelCase) |
NewTechwriter
{
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
firstName | string | true | none | Имя технического писателя |
secondName | string | true | none | Фамилия технического писателя |
patronymic | string | false | none | Отчество технического писателя. Необязательное поле |
experience | integer(int64) | true | none | Опыт работы (в месяцах) |
phoneNumber | string(phone) | false | none | Номер телефона для связи |
string(email) | true | none | Адрес электронной почты технического писателя | |
skills | [integer] | true | none | Список навыков (массив идентификаторов навыков) |
Techwriter
{
"id": 123,
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int64) | true | none | Идентификатор технического писателя |
firstName | string | true | none | Имя технического писателя |
secondName | string | true | none | Фамилия технического писателя |
patronymic | string | false | none | Отчество технического писателя. Необязательное поле |
experience | integer(int64) | true | none | Опыт работы (в месяцах) |
phoneNumber | string(phone) | false | none | Номер телефона для связи |
string(email) | true | none | Адрес электронной почты технического писателя | |
skills | [integer] | true | none | Список навыков (массив идентификаторов навыков) |
UpdTechwriter
{
"firstName": "Вася",
"secondName": "Пупкин",
"patronymic": "Иванович",
"experience": 12,
"phoneNumber": 71234567890,
"email": "pupkin@mail.pup",
"skills": [
1,
2,
3
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
firstName | string | false | none | Имя технического писателя |
secondName | string | false | none | Фамилия технического писателя |
patronymic | string | false | none | Отчество технического писателя. Необязательное поле |
experience | integer(int64) | false | none | Опыт работы (в месяцах) |
phoneNumber | string(phone) | false | none | Номер телефона для связи |
string(email) | false | none | Адрес электронной почты технического писателя | |
skills | [integer] | false | none | Список навыков (массив идентификаторов навыков) |
Skill
{
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int64) | true | none | Идентификатор навыка |
skillName | string | true | none | Название навыка |
skillDescription | string | true | none | Описание навыка |
alias | string | true | none | Алиас навыка |
TechwriterSkill
{
"techwriterId": 123,
"skillCommonInfo": {
"id": 25,
"skillName": "Ручное документирование API",
"skillDescription": "Создание документации на API, тестирование, создание описаний вручную",
"alias": "manualApiDocs"
},
"confirmingDocument": "mydocuments.com/API.pdf",
"linksExamples": [
[
"myexamples.com/example_1",
"myapidocs.com/exampleApiDoc.png"
]
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
techwriterId | integer(int64) | true | none | Идентификатор технического писателя |
skillCommonInfo | Skill | true | none | none |
confirmingDocument | string | false | none | Подтверждающий документ |
linksExamples | [string] | false | none | Ссылки на примеры работ |
TechwriterSkillInfo
{
"confirmingDocument": "mydocuments.com/API.pdf",
"linksExamples": [
[
"myexamples.com/example_1",
"myapidocs.com/exampleApiDoc.png"
]
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
confirmingDocument | string | false | none | Подтверждающий документ |
linksExamples | [string] | false | none | Ссылки на примеры работ |