---
title: 1c2i правки
---
# Получение homescreen (главной страницы приложения)
Параметры:
```yaml
"login" => "",
"pagination" => ""
```
Запрос:
```yaml
- command: get_homescreen
args:
login: c3331567__
uid: get_homescreen1
```
Ответ:
```yaml
get_homescreen1:
status: 1
data:
pagination: ~
items:
- id: "2147615840602943422_787132"
timestamp: "1570235780"
user:
id: "787132"
username: natgeo
is_private: false
#<...>
- id: "2147244489484756343_21871385795"
timestamp: "1570191511"
user:
id: "21871385795"
username: c3331567
is_private: false
```
# Установка аватарки
Параметры:
```yaml
"login" => "",
"file_url" => "",
```
Запрос:
```yaml
- command: set_avatar
args:
login: c3331567
file_url: https://www.thechunkychef.com/wp-content/uploads/2019/08/Crockpot-Crack-Chicken-Pasta-spoon-680x454.jpg
uid: ava1
```
Ответ:
```yaml
ava1:
status: 1
data: ""
```
[Результат](https://www.instagram.com/c3331567/)
# Установка био
Параметры:
```yaml
"login" => "",
"bio" => "",
```
Запрос:
```yaml
- command: set_bio
args:
login: c3331567
bio: biobiobio
uid: bio1
```
Ответ:
```yaml
bio1:
status: 1
data: ""
```
[Результат](https://www.instagram.com/c3331567/)
# Редактирование имени и т. д.
Как я уже говорил, для редактирования имени нет конкретной функции. Есть функция, которая позволяет изменить любые данные пользователя, в том числе и имя. Полный список полей для изменения:
```
"url" => $user->getExternalUrl(),
"phone" => $user->getPhoneNumber(),
"name" => $user->getFullName(),
"bio" => $user->getBiography(),
"email" => $user->getEmail(),
"gender" => $user->getGender(),
"username" => $user->getUsername()
```
То есть, вы можете изменить биографию как через set_bio, так и через эту функцию.
Параметры:
```yaml
"login" => "",
"field" => "",
"value" => "",
```
Запрос:
```yaml
- command: set_profile_field
args:
login: c3331567
field: name
value: Full Name (new value)
uid: profile_field
```
Ответ:
```yaml
profile_field:
status: 1
data: ""
```
[Результат](https://www.instagram.com/c3331567/)
# Баги
По timestamp — исправил. Дело было в том, что я использовал `getDeviceTimestamp()` (так и не понял, что это такое). А надо было `getTakenAt()`.
Что касается постов - вопрос, на самом деле, хороший. Сходу у меня не вышло разобраться. Проблема не в какой-то ошибке в коде, а в самой логике работы инстаграмовского API. Смотрите:
Очередь:
```yaml
---
commands_queque:
- command: login
args:
login: c3331567
password: c33315671
uid: login_1
- command: my_feed
args:
login: c3331567
uid: feed_1
- command: upload_photo
args:
login: c3331567
file_url: https://rukminim1.flixcart.com/image/704/704/stuffed-toy/g/2/q/combo-of-i-love-you-pink-ballon-heart-teddy-36-cm-i-love-you-original-imaeq7gfazymgyzy.jpeg?q=70
uid: upload_1
- command: my_feed
args:
login: c3331567
uid: feed_2
...
```
Результат:
```yaml
---
---
login_1:
status: 1
data: ""
profile_field:
status: 1
data: ""
feed_1:
status: 1
data:
pagination: ~
items:
- id: "2147703187587869586_21871385795"
timestamp: "1570246192"
- id: "2147478532846807933_1516824713"
timestamp: "1570219411"
- id: "2147615840602943422_787132"
timestamp: "1570235780"
- id: "2145775068622393197_194697262"
timestamp: "1570016343"
- id: "2147244489484756343_21871385795"
timestamp: "1570191511"
feed_2:
status: 1
data:
pagination: ~
items:
- id: "2147703187587869586_21871385795"
timestamp: "1570246192"
- id: "2147478532846807933_1516824713"
timestamp: "1570219411"
- id: "2147615840602943422_787132"
timestamp: "1570235780"
- id: "2145775068622393197_194697262"
timestamp: "1570016343"
- id: "2147244489484756343_21871385795"
timestamp: "1570191511"
upload_1:
status: 1
data: ""
...
```
Ваши жалобы подтверждаются - 5 постов вернуло в первый раз, 5 постов во второй.
Если смотреть на полный ответ инстаграма: [тык](http://i.imgur.com/aSwFj1H.png)
Как вы можете видеть, 5 результатов сервер вернул в обоих запросах. При этом, если перезапустить скрипт, всё будет ок. Видимо, он эту информацию зачем-то кэширует.
При этом, я обратил внимание, что если перезапустить скрипт, то информация обновляется.
**Это привело к следующему решению**
```yaml
---
commands_queque:
- command: login
args:
login: c3331567
password: c33315671
uid: login_1
- command: my_feed
args:
login: c3331567
uid: feed_1
- command: upload_photo
args:
login: c3331567
file_url: https://rukminim1.flixcart.com/image/704/704/stuffed-toy/g/2/q/combo-of-i-love-you-pink-ballon-heart-teddy-36-cm-i-love-you-original-imaeq7gfazymgyzy.jpeg?q=70
uid: upload_1
- command: login
args:
login: c3331567
password: c33315671
uid: login_2
- command: my_feed
args:
login: c3331567
uid: feed_2
...
```
```yaml
---
login_1:
status: 1
data: ""
profile_field:
status: 1
data: ""
feed_1:
status: 1
data:
pagination: ~
items:
- id: "2147706831011894171_21871385795"
timestamp: "1570246627"
- id: "2147705255178384877_21871385795"
timestamp: "1570246439"
- id: "2147478532846807933_1516824713"
timestamp: "1570219411"
- id: "2147615840602943422_787132"
timestamp: "1570235780"
- id: "2147703187587869586_21871385795"
timestamp: "1570246192"
- id: "2145775068622393197_194697262"
timestamp: "1570016343"
- id: "2147244489484756343_21871385795"
timestamp: "1570191511"
feed_2:
status: 1
data:
pagination: ~
items:
- id: "2147706868811122822_21871385795"
timestamp: "1570246631"
- id: "2147706831011894171_21871385795"
timestamp: "1570246627"
- id: "2147705255178384877_21871385795"
timestamp: "1570246439"
- id: "2147478532846807933_1516824713"
timestamp: "1570219411"
- id: "2147615840602943422_787132"
timestamp: "1570235780"
- id: "2147703187587869586_21871385795"
timestamp: "1570246192"
- id: "2145775068622393197_194697262"
timestamp: "1570016343"
- id: "2147244489484756343_21871385795"
timestamp: "1570191511"
upload_1:
status: 1
data: ""
login_2:
status: 1
data: ""
...
```
То есть, если ДО повторного получения фида воткнуть команду перезахода в аккаунт - всё работает нормально.