← 返回
未分类 中文

Acumatica Customization Management

Manage Acumatica ERP customization projects via the CustomizationApi web API. Use this skill whenever the user wants to export, import, publish, validate, un...
通过 CustomizationApi Web API 管理 Acumatica ERP 定制项目,在需要导出、导入、发布、验证、卸载等操作时使用此技能。
allanwei
未分类 clawhub v1.0.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 435
下载
💾 0
安装
1
版本
#latest

概述

Acumatica Customization Helper

A bash script (acumaticahelper.sh) that manages Acumatica ERP customization

projects through the official CustomizationApi web API.

Script location: acumaticahelper.sh (run from its own directory)


Configuration

The script reads acumatica.conf from the same directory as the script.

Copy acumatica.conf.example to acumatica.conf and fill in your values:

ACUMATICA_URL=http://host/instance    # base URL — no trailing slash
ACUMATICA_USERNAME=admin              # must have the Customizer role
ACUMATICA_PASSWORD=secret

Optional tuning (add to acumatica.conf or export as env vars):

VariableDefaultDescription
-----------------------------------------------------------------------------------
PUBLISH_POLL_INTERVAL30Seconds between publishEnd polls
PUBLISH_MAX_ATTEMPTS10Max polls before timeout (10 × 30s = 5 min max)

> Note: OAuth 2.0 is NOT supported by the CustomizationApi. Cookie-based

> session auth is used (/entity/auth/login / /entity/auth/logout).


Commands

list

List all published customization projects and their items.

./acumaticahelper.sh list

API: POST /CustomizationApi/getPublished


export

Export a project as a local ZIP file. Validates the zip before saving and

auto-resolves file system conflicts.

./acumaticahelper.sh export <project-name> [output-dir]
# output-dir defaults to current directory

API: POST /CustomizationApi/getProject


import

Import a ZIP file as a customization project. Derives project name from the

filename if not specified. Replaces an existing project of the same name.

./acumaticahelper.sh import <file.zip> [project-name] [description]

API: POST /CustomizationApi/import


validate

Validate one or more projects without publishing them. Polls until complete.

./acumaticahelper.sh validate <project-name> [project-name2 ...]

API: POST /CustomizationApi/publishBegin (with isOnlyValidation: true)

then polls POST /CustomizationApi/publishEnd


publish

Publish one or more projects. Polls until complete.

./acumaticahelper.sh publish <project-name> [project-name2 ...]

> Important: publishEnd must be called to complete publication — it

> triggers plug-in execution. The script handles this automatically.

API: POST /CustomizationApi/publishBegin → polls POST /CustomizationApi/publishEnd


unpublish

Unpublish all projects. tenantMode controls scope.

./acumaticahelper.sh unpublish [Current|All]
# defaults to Current

API: POST /CustomizationApi/unpublishAll


delete

Delete an unpublished project from the database.

./acumaticahelper.sh delete <project-name>

> Warning: The project must be unpublished first. Deletion removes project

> and item data but does NOT remove files/objects added to the site (e.g. site

> map nodes, reports).

API: POST /CustomizationApi/delete


status

One-shot poll of publishEnd to check the current publish/validation state.

./acumaticahelper.sh status

API: POST /CustomizationApi/publishEnd


maintenance-on / maintenance-off

Enable or disable maintenance mode (Lock endpoint V1).

./acumaticahelper.sh maintenance-on
./acumaticahelper.sh maintenance-off

API: PUT /entity/Lock/1/ApplyUpdate/scheduleLockoutCommand (on)

PUT /entity/Lock/1/ApplyUpdate/stopLockoutCommand (off)


API Endpoints Reference

EndpointMethodUsed by
------------------------------------------------------------------------------
/entity/auth/loginPOSTall commands
/entity/auth/logoutPOSTall commands
/CustomizationApi/getPublishedPOSTlist
/CustomizationApi/getProjectPOSTexport
/CustomizationApi/importPOSTimport
/CustomizationApi/publishBeginPOSTvalidate, publish
/CustomizationApi/publishEndPOSTvalidate, publish, status
/CustomizationApi/unpublishAllPOSTunpublish
/CustomizationApi/deletePOSTdelete
/entity/Lock/1/ApplyUpdate/scheduleLockoutCommandPUTmaintenance-on
/entity/Lock/1/ApplyUpdate/stopLockoutCommandPUTmaintenance-off

Requirements

  • bash 4+
  • curl — HTTP requests
  • jq — JSON building and parsing
  • base64 — encode/decode project ZIPs
  • python3 — ZIP validation on export (import zipfile)

Common Workflows

Backup before an upgrade:

./acumaticahelper.sh export MyProject ./backups

Promote from dev to prod:

# On dev — export
./acumaticahelper.sh export MyProject ./release

# On prod — import then publish
./acumaticahelper.sh import ./release/MyProject.zip
./acumaticahelper.sh publish MyProject

Safe publish with maintenance window:

./acumaticahelper.sh maintenance-on
./acumaticahelper.sh publish MyProject
./acumaticahelper.sh maintenance-off

Clean slate — unpublish everything then delete:

./acumaticahelper.sh unpublish Current
./acumaticahelper.sh delete MyProject

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-03-31 17:24 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

ai-intelligence

ontology

oswalpalash
类型化知识图谱,用于结构化智能体记忆与可组合技能。支持创建/查询实体(人员、项目、任务、事件、文档)及关联...
★ 710 📥 243,694
ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,354 📥 317,991
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 668 📥 323,998