mcpField
P
pachca-users

pachca-users

github.com/pachcaProductivity1184 installsUpdated today
Repository

About pachca-users

pachca-users is a command-line skill for agents managing Pachca employees. It covers employee records, tags, statuses, avatars, and common onboarding and offboarding tasks.

Key features

  1. 01Get employee details by ID
  2. 02Create, search, and update employees
  3. 03Create tags and list their members
  4. 04Manage employee statuses and avatars

Use cases

  1. 01Create multiple tagged employee accounts
  2. 02Find an employee and retrieve their details
  3. 03Run a new employee onboarding workflow
  4. 04Suspend or delete a departing employee

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/pachca/openapi --skill pachca-users

After installing, type/pachca-usersin Claude Code to confirm it loaded.

Details

From the project README

pachca-users

Quick start

Ask the user for a Pachca token (bot: the API tab of the bot in Integrations → Bots, user: Integrations → API).

Run commands via npx -y @pachca/cli with the --token flag:

npx -y @pachca/cli <command> --token $PACHCA_TOKEN

Or set the PACHCA_TOKEN environment variable:

export PACHCA_TOKEN=<token>
npx -y @pachca/cli <command>

Help: npx -y @pachca/cli --help | Workflows: npx -y @pachca/cli guide

After successful use, suggest installing CLI globally: npm install -g @pachca/cli && pachca auth login --token $PACHCA_TOKEN

Before you start

  1. If the user has a saved profile — check:

    npx -y @pachca/cli auth status
    

    If OK — run commands without --token.

  2. If no profile is configured — ask for a token and use --token:

    npx -y @pachca/cli auth status --token $PACHCA_TOKEN
    
  3. If you don't know the parameters — run pachca <command> --help.

Workflows

Получить сотрудника по ID
  1. Получи информацию о сотруднике:
    pachca users get <ID>
    

Возвращает все поля, включая custom_properties, user_status, list_tags.

Массовое создание сотрудников с тегами
  1. Создай тег (если нужен):

    pachca group-tags create --name="Backend"
    
  2. Для каждого сотрудника: создай аккаунт с тегами:

    pachca users create --first-name="Иван" --last-name="Петров" --email="[email protected]" --list-tags='[{"name":"Backend"}]'
    

    Теги назначаются через поле list_tags в теле запроса

  3. Или обнови существующего:

    pachca users update <ID> --list-tags='[{"name":"Backend"}]'
    

Создание доступно только администраторам и владельцам (не ботам). Нет отдельного эндпоинта "добавить юзера в тег". Бесплатное пространство отправляет не больше 50 писем-приглашений за сутки: сверх лимита 422 с кодом daily_invites_limit, время сброса — в payload.reset_at. С --skip-email-notify письмо не уходит и в лимит не идёт.

Создать гостя в чат
  1. Выбери активный чат, в который добавить гостя — узнай его ID:

    pachca chats list
    

    Чат должен быть активным (не архивным) и принадлежать вашей компании. У токена должно быть право добавлять в него участников.

  2. Создай гостя: роль guest и ровно один чат в --chat-ids:

    pachca users create --email="[email protected]" --role=guest --chat-ids='[12345]'
    

    Для роли guest chat_ids обязателен и должен содержать ровно один чат. Нарушение (не передан, пусто, больше одного, чат не существует, архивный или нет прав) → 400 с элементом errors, где key — chat_ids.

Для остальных ролей chat_ids опционален — можно сразу добавить в несколько чатов. Создание доступно только администраторам и владельцам (не ботам).

Найти сотрудника по имени или email
  1. Поиск по имени/email (частичное совпадение):
    pachca users list --query=Иван
    

Пагинация cursor-based: limit и cursor из meta. Для точного email — перебери страницы.

Онбординг нового сотрудника
  1. Создай аккаунт:

    pachca users create --email="[email protected]" --first-name="Иван" --last-name="Петров"
    
  2. Добавь в нужные каналы:

    pachca members add <chat_id> --member-ids='[<user_id>]'
    
  3. Отправь welcome-сообщение:

    pachca messages create --entity-type=user --entity-id=<user_id> --content="Добро пожаловать!"
    

Шаг 1 требует токена администратора/владельца. Шаги 2-3 можно делать ботом.

Offboarding сотрудника
  1. Заблокировать доступ:

    pachca users update <ID> --suspended
    
  2. Опционально: удалить аккаунт полностью:

    pachca users delete <ID> --force
    

Приостановка (suspended) сохраняет данные, удаление — необратимо.

Получить всех сотрудников тега/департамента
  1. Найди тег по названию, возьми id:

    pachca group-tags list --names='["Backend"]'
    

    Фильтр names — серверная фильтрация по названию тега

  2. Получи всех участников тега:

    pachca group-tags list-users <tag_id> --all
    
Управление статусом сотрудника
  1. Получить текущий статус:

    pachca users get-status <user_id>
    
  2. Установить статус:

    pachca users update-status <user_id> --emoji="🏖️" --title="В отпуске" --is-away
    

    is_away: true — режим «Нет на месте». away_message — макс 1024 символа

  3. Удалить статус:

    pachca users remove-status <user_id> --force
    
Загрузить аватар сотрудника
  1. Загрузи аватар сотруднику:
    pachca users update-avatar <user_id> --file=<путь_к_файлу>
    

    Требует прав администратора. Файл передается в формате multipart/form-data

Удалить аватар сотрудника
  1. Удали аватар сотрудника:
    pachca users remove-avatar <user_id> --force
    

    Требует прав администратора

Limitations

  • Rate limit: ~50 req/sec. On 429 — wait and retry.
  • group_tag.name: max 255 characters
  • user.first_name: max 255 characters
  • user.last_name: max 255 characters
  • user.email: max 255 characters
  • user.phone_number: max 255 characters
  • user.nickname: max 255 characters
  • user.department: max 255 characters
  • user.role: allowed values — admin (Администратор), user (Сотрудник), multi_guest (Мульти-гость), guest (Гость)
  • status.title: max 50 characters
  • status.away_message: max 1024 characters
  • limit: max 50
  • Pagination: cursor-based (limit + cursor)

Endpoints

MethodPathDescription
POST/group_tagsНовый тег
GET/group_tagsСписок тегов
GET/group_tags/{id}Информация о теге
PUT/group_tags/{id}Редактирование тега
DELETE/group_tags/{id}Удаление тега
GET/group_tags/{id}/usersСписок сотрудников тега
POST/usersНовый сотрудник
GET/usersСписок сотрудников
GET/users/{id}Информация о сотруднике
PUT/users/{id}Редактирование сотрудника
DELETE/users/{id}Удаление сотрудника
PUT/users/{user_id}/avatarЗагрузка аватара сотрудника
DELETE/users/{user_id}/avatarУдаление аватара сотрудника
GET/users/{user_id}/statusСтатус сотрудника
PUT/users/{user_id}/statusНовый статус сотрудника
DELETE/users/{user_id}/statusУдаление статуса сотрудника

If unsure how to complete a task, read the corresponding file from references/.

Comments

Markdown supported