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

Python

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

from passwork_client import PassworkClient
from passwork_client.enums.link_type_enum import LinkType
from passwork_client.enums.link_expiration_time_enum import LinkExpirationTime

# Конфигурация
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:
ITEM_ID = "68d3cf81473b357ee60a66cd"
SHORTCUT_ID = None

link = passwork.create_link(LinkType.Reusable, LinkExpirationTime.Unlimited, ITEM_ID, SHORTCUT_ID)
print(f"Link: {link}")
except Exception as e:
print(f"Error: {e}")
Описание
  • в значения ITEM_ID или SHORTCUT_ID нужно поместить ID записи или ярлыка для создания ссылки. ID записи или ярлыка можно получить открыв веб-интерфейс Пассворка, встать на запись или ярлык, и в адресной строке отобразится ID, пример — https://passwork.example.org/p/68d3cf81473b357ee60a66cd
  • Параметр LinkType определяет тип ссылки. Многоразовая(Reusable)/Одноразовая(Single_use)
  • Параметр LinkExpirationTime определяет срок действия ссылки. 1 час(Hour)/1 неделя(Week)/1 месяц(Month)/неограниченна(Unlimited)

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

(api) passwork@api-integration:~# python3 create_link.py
Link: https://passwork.example.org/g/p/KLul6UwnSD28DvvCYtjfgUnlb#code=2qUVLLinLAVU8kzILckD0GH5ptGmK5fBEICmLG3CwrLapdM3h8yd0GimP9Qz7dERgX@E8RHDLQgOn8mZRceLgnhMiY0hTtVLWJHr