Перейти к основному содержимому
Версия: 7.0

Python

Создать файл update_item.py с следующим содержимым:

from passwork_client import PassworkClient
import os

# Конфигурация
ACCESS_TOKEN = "FxWvuVqP9cPvAdWq3BMsSwVaEtFltaka49sv+2HjJME="
REFRESH_TOKEN = "2z7wR6gkNYSVBZEV3D/zddX+GW7LYuNN4WYOaZxHgMQ=" # Опционально (необходим для обновления токенов)
MASTER_KEY = "EgOHwWQZcsgp/hFUAXS0PD60IUjxinfUEo8kUomhloumAXsRPtZ/7wTubtT7WXSpbfvKDDlm+yeOt5l5mN++IQ==" # Мастер ключ (если клиентское шифрование активировано)
HOST = "https://passwork.example.org" # Адрес Пассворка

# Авторизация в Пассворке
try:
passwork = PassworkClient(HOST)
passwork.set_tokens(ACCESS_TOKEN, REFRESH_TOKEN)
if bool(MASTER_KEY):
passwork.set_master_key(MASTER_KEY)
except Exception as e:
print(f"Error: {e}")
exit(1)

# Пример: Обновление записи
try:
# ID записи для обновления
ITEM_ID = "68793e13dfc88d879e0f2e39"
# ID сейфа в которой расположена запись
VAULT_ID = "687663896eea6641b6065cd8"

# Получить текущую запись
item = passwork.get_item(ITEM_ID)
print(f"Current item: {item}")

# Подготовленные данные для обновления
updated_data = {
"vaultId": VAULT_ID,
"name": "Updated Item Name",
"login": "updated_user",
"password": "Updated_Password_456!",
"url": "https://updated-example.com",
"description": "Updated description",
"tags": ["updated", "tag2", "tag3"],
"customs": [
{
"name": "Updated Custom Field",
"value": "Updated value",
"type": "text"
},
{
"name": "Updated Password Field",
"value": "NewSecret456!",
"type": "password"
}
]
}

# Обновление записи
passwork.update_item(ITEM_ID, updated_data)

# Получить обновлённую запись
updated_item = passwork.get_item(ITEM_ID)
print(f"Updated item: {updated_item}")

except Exception as e:
print(f"Error: {e}")

В скрипт поместить полученные токены (мастер-ключ пользователя, если клиентское шифрование активировано) из веб-интерфейса и сохранить. Пример запуска скрипта и успешного обновления записи:

(api) passwork@api-integration:~# python3 update_item.py 
{
"id": "68793e13dfc88d879e0f2e39",
"vaultId": "687663896eea6641b6065cd8",
"folderId": null,
"passwordEncrypted": "amt4cwv48xb6pp1h5xn6mxhqa1h6uruhdt2pyy2ue1t76y3799p5jtkpa9p56hv59x84euuhd9vk4dace0nqgxau8t9qmt266x26yg8",
"keyEncrypted": "amt4cwv48xb6pp1h5dh6amvbcnmkjhjtcd9pwm2hb5952wb88hd5mhvrf92pmn268dr4pgvg8x55jyhpanvprhve718m6dbqdh83jyb7dxupyd2ka9544r9q8hv4mhjd99p6gt3hdn16rybde15kartka1w52cjbedqqax3eb176gpb471kpjxjm6nk6gv1q8nr68hbrcgr7ak2meh9n0vb8chv56kaed5umreb99hkmmy9b6586jkkuddhjpmk2ahj6gnb6cd6mgj2294yg",
"customs": [
{
"name": "Updated Custom Field",
"value": "Updated value",
"type": "text"
},
{
"name": "Updated Password Field",
"value": "NewSecret456!",
"type": "password"
}
],
"attachments": [],
"name": "Updated Item Name",
"login": "updated_user",
"url": "https://updated-example.com",
"description": "Updated description",
"tags": [
"updated",
"tag2",
"tag3"
],
"fieldsOrder": null,
"isDeleted": false,
"color": 0,
"isFavorite": false,
"vaultMasterKeyEncrypted": "oUn96mdysy5Pw7W9r3Ss0Gv1gd54jh0cmTVQrxhI5OkseptPGVZFdd6TaswgqjFOwS1WS1Ail8Tu82XNn346VBYsZ19z5bltKXJelwfedoQwTwIPFABC/u9hHt2HOGiSh6hBE2bpFzN376qFm9IpFN5xXmFydXB2tN+EbklCLngEERRmNgxlImaeq/O2tgwvn/kZkHROK7d/Bnd7/jMcEeekX0jTJBVg78BMHOdb+whOLr5dhZIyAI1pi9kzLnxzoE9oAKTV8mQe+eXhBWjgI5LXb++0Oghua3EbY2prndNU6ZuUDbQBO/3zeTlfXIr27V8q7I2msspJulJP5lpVfw==",
"password": "Updated_Password_456!"
}