New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

managercc

Package Overview
Dependencies
Maintainers
1
Versions
30
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

managercc

controller @ managers.center

latest
npmnpm
Version
1.1.11
Version published
Maintainers
1
Created
Source

ManagerCC CLI & API

npm version License: ISC

A comprehensive Node.js CLI tool and API library for managing authentication, groups, and bearer tokens in the Managers.Center system.

🚀 Features

CLI Commands

  • Manager Authentication: Sign up, login, logout, and check status
  • Group Management: Create, list, and manage groups
  • Token Generation: Generate bearer tokens for API access
  • Public Key Management: Get and manage public keys for token verification

Node.js API

  • loginManager(email, password): Programmatic manager login
  • checkManager(managerAuth): Verify manager authentication status
  • getGroupList(managerAuth): Retrieve all manager groups
  • generateBearerToken(managerAuth, groupCode, secsToExpired?, aud?): Generate bearer token for specific group

📦 Installation

Global CLI Installation

npm install -g managercc

Local Package Installation

npm install managercc

🔧 CLI Usage

Quick Start

  • Sign up as a manager:
managercc signup
  • Login:
managercc login
  • Create a group:
managercc create group
  • List all groups:
managercc list
  • Generate bearer token:
managercc generate bearertoken
  • Get public key:
managercc get publickey

Available Commands

CommandDescriptionExample
signupRegister a new manager accountmanagercc signup
loginLogin with manager credentialsmanagercc login
logoutLogout current sessionmanagercc logout
whoamiCheck current login statusmanagercc whoami
create groupCreate a new groupmanagercc create group
listList all manager groupsmanagercc list
generate bearertokenGenerate bearer token for groupmanagercc generate bearertoken
get publickeyGet manager's public keymanagercc get publickey

💻 Node.js API Usage

Basic Setup

const managercc = require('managercc');

// Login and get authentication
async function setupManager() {
    const loginResult = await managercc.loginManager('your-email@example.com', 'your-password');
    
    if (loginResult.success) {
        const managerAuth = loginResult.data.auth;
        console.log('Login successful:', loginResult.data.manager.suuid);
        return managerAuth;
    } else {
        console.error('Login failed:', loginResult.message);
        return null;
    }
}

Manager Authentication

// Login manager
const loginResult = await managercc.loginManager('manager@example.com', 'password123');

// Check authentication status
const checkResult = await managercc.checkManager(managerAuth);
if (checkResult.success) {
    console.log('Manager authenticated:', checkResult.data.manager.name);
}

Group Management

// Get all groups
const groupsResult = await managercc.getGroupList(managerAuth);
if (groupsResult.success) {
    console.log(`Found ${groupsResult.data.total} groups:`);
    groupsResult.data.groups.forEach(group => {
        console.log(`- [${group.code}] ${group.name}`);
    });
}

Bearer Token Generation

// Generate bearer token for a specific group
const tokenResult = await managercc.generateBearerToken(managerAuth, 'group-code', 3600, 'api-client');
if (tokenResult.success) {
    console.log('Token generated successfully!');
    console.log('Token:', tokenResult.data.token);
    console.log('Expires in:', tokenResult.data.expiresIn, 'seconds');
    console.log('Audience:', tokenResult.data.audience);
} else {
    console.log('Token generation failed:', tokenResult.message);
}

Complete Workflow Example

const managercc = require('managercc');

async function completeWorkflow() {
    try {
        // 1. Login manager
        const login = await managercc.loginManager('manager@example.com', 'password');
        if (!login.success) throw new Error('Login failed');
        
        // 2. Check authentication
        const check = await managercc.checkManager(login.data.auth);
        if (!check.success) throw new Error('Authentication check failed');
        
        // 3. Get groups
        const groups = await managercc.getGroupList(login.data.auth);
        if (!groups.success) throw new Error('Failed to get groups');
        
        // 4. Generate token for first group
        const firstGroup = groups.data.groups[0];
        const token = await managercc.generateBearerToken(
            login.data.auth, 
            firstGroup.code, 
            7200,  // 2 hours
            'my-app'  // audience
        );
        
        if (token.success) {
            console.log('Complete workflow successful!');
            console.log('Generated token for group:', firstGroup.code);
            console.log('Token expires in:', token.data.expiresIn, 'seconds');
        }
        
    } catch (error) {
        console.error('Workflow failed:', error.message);
    }
}

completeWorkflow();

📋 API Reference

loginManager(email, password)

Login a manager and return authentication data.

Parameters:

  • email (string): Manager's email address
  • password (string): Manager's password

Returns:

{
    success: boolean,
    message: string,
    data: {
        manager: {
            suuid: string,
            loginTime: string
        },
        auth: {
            suuid: string,
            accessToken: string
        }
    }
}

checkManager(managerAuth)

Verify manager authentication status.

Parameters:

  • managerAuth (object): Authentication object from login

Returns:

{
    success: boolean,
    message: string,
    data: {
        manager: {
            suuid: string,
            name: string,
            email: string,
            status: string,
            checkedAt: string
        },
        auth: object
    }
}

getGroupList(managerAuth)

Retrieve all groups for the authenticated manager.

Parameters:

  • managerAuth (object): Authentication object from login

Returns:

{
    success: boolean,
    message: string,
    data: {
        groups: [
            {
                index: number,
                suuid: string,
                code: string,
                name: string,
                created_at: number,
                manager_suuid: string
            }
        ],
        total: number,
        manager: {
            suuid: string,
            name: string
        }
    }
}

generateBearerToken(managerAuth, groupCode, secsToExpired?, aud?)

Generate a bearer token for a specific group.

Parameters:

  • managerAuth (object): Authentication object from login
  • groupCode (string): Code of the group to generate token for
  • secsToExpired (number, optional): Token expiration time in seconds (default: 3600)
  • aud (string, optional): Token audience (default: null)

Returns:

{
    success: boolean,
    message: string,
    data: {
        groupCode: string,
        token: string,
        expiresIn: number,
        audience: string,
        generatedAt: string,
        manager: {
            suuid: string
        }
    }
}

Example:

// Basic usage
const token = await managercc.generateBearerToken(managerAuth, 'my-group');

// With custom expiration and audience
const token = await managercc.generateBearerToken(
    managerAuth, 
    'my-group', 
    7200,        // 2 hours
    'api-client' // custom audience
);

if (token.success) {
    console.log('Token:', token.data.token);
    console.log('Expires in:', token.data.expiresIn, 'seconds');
}

📄 License

This project is licensed under the ISC License - see the LICENSE file for details.

Version: 1.1.8
Last Updated: 2025-10-17

Keywords

cli

FAQs

Package last updated on 18 Oct 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts