返回 Skill 列表
extension
分类: 其它需要 API Key

aipexbase-cli

使用 aipexbase-cli 操作 AiPexBase BaaS 服务,支持数据库操作、应用管理、用户认证等功能。

person作者: kuafuaihubclawhub

AiPexBase CLI Skill

About AiPexBase

AiPexBase is a BaaS (Backend as a Service) platform that provides database, authentication, file storage, and other backend capabilities.

GitHub: https://github.com/kuafuai/aipexbase

Prerequisites:

  • Deployed AiPexBase service (to get baseUrl)
  • API Key (obtained from service admin dashboard)
  • Installed aipexbase-cli: npm install -g aipexbase-cli

Core command format:

baas -c <config-file> <command> [options]

Important: All commands must use the -c parameter to specify the configuration file!

Configuration File

Must create configuration file first (even an empty file is fine):

echo '{}' > config.json
  • Configuration can be filled or updated through the config command.

Command Reference

1. Configuration Management

# Set configuration
baas -c config.json config --base-url "http://localhost:8080" --api-key "your-api-key"

# View configuration
baas -c config.json config --show

2. Database Operations

Query:

# Query all
baas -c config.json db list <table>

# Equal query
baas -c config.json db list <table> --where '{"status": "active"}'

# Comparison query
baas -c config.json db list <table> --where '{"price": {"gt": 100}}'

# Multiple conditions
baas -c config.json db list <table> --where '{"price": {"gte": 100, "lte": 1000}, "status": "active"}'

# Pagination
baas -c config.json db page <table> --page-num 1 --page-size 20

# Sorting
baas -c config.json db list <table> --order "created_at:desc"

# Single record
baas -c config.json db get <table> --where '{"id": "rec_xxx"}'

Modify:

# Insert
baas -c config.json db insert <table> --data '{"field1": "value1", "field2": "value2"}'

# Update
baas -c config.json db update <table> --where '{"id": "rec_xxx"}' --data '{"field1": "new-value"}'

# Delete
baas -c config.json db delete <table> --where '{"id": "rec_xxx"}'

where operators:

| Operator | Description | Example | |----------|-------------|---------| | Direct value | Equal | {"status": "active"} | | gt | Greater than | {"price": {"gt": 100}} | | gte | Greater than or equal | {"age": {"gte": 18}} | | lt | Less than | {"stock": {"lt": 10}} | | lte | Less than or equal | {"score": {"lte": 60}} | | neq | Not equal | {"status": {"neq": "deleted"}} | | like | Fuzzy match | {"name": {"like": "Zhang"}} | | in | In array | {"status": {"in": ["active", "pending"]}} | | between | Range | {"price": {"between": [100, 1000]}} |

3. Application and Table Management

# Create application
baas -c config.json manage create-app --name "App Name" --user-id "User ID"

# Create table
baas -c config.json manage create-table \
  --app-id "App ID" \
  --table-name "Table Name" \
  --columns '[
    {"columnName": "name", "columnType": "string", "columnComment": "Name"},
    {"columnName": "age", "columnType": "number", "columnComment": "Age"}
  ]'

Field types:

| Type | Description | Type | Description | |------|-------------|------|-------------| | string | Short text | password | Password (encrypted) | | text | Long text | phone | Phone (validated) | | number | Integer | email | Email (validated) | | decimal | Decimal | images | Images | | boolean | Boolean | files | Files | | date | Date | videos | Videos | | datetime | Datetime | quote | Reference |

4. User Authentication

# Login
baas -c config.json login --phone "13800138000" --code "123456"

# Logout
baas -c config.json logout

# Generate login link
baas -c config.json login-link --channel "web" --user-id "user123"

5. File Upload

baas -c config.json upload --file "/path/to/file.jpg" --table "Table Name"

Parameter Specifications

JSON Format Requirements

Rules:

  1. Use single quotes '...' for outer layer
  2. Use double quotes "..." for inner layer
  3. JSON must be valid

Correct examples:

✓ --data '{"name": "Zhang San", "age": 25}'
✓ --where '{"status": "active"}'

Incorrect examples:

✗ --data "{"name": "Zhang San"}"      # Outer layer cannot use double quotes
✗ --data "{'name': 'Zhang San'}"      # Inner layer cannot use single quotes

columns Format

[
  {
    "columnName": "Field Name",
    "columnType": "Field Type",
    "columnComment": "Field Description"
  }
]

Quick Example

# 1. Create configuration file
echo '{}' > config.json

# 2. Set configuration
baas -c config.json config --base-url "http://localhost:8080" --api-key "your-key"

# 3. Create application
baas -c config.json manage create-app --name "My App" --user-id "admin"

# 4. Create table
baas -c config.json manage create-table \
  --app-id "baas_xxx" \
  --table-name "users" \
  --columns '[{"columnName": "username", "columnType": "string", "columnComment": "Username"}]'

# 5. Insert data
baas -c config.json db insert users --data '{"username": "zhangsan"}'

# 6. Query data
baas -c config.json db list users --where '{"username": "zhangsan"}'