@mongoui/skills 0.1.9 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -0
- package/dist/products/index.js +12 -5
- package/package.json +7 -3
- package/skills/bms-api/SKILL.md +26 -0
- package/skills/bms-api/references/api-workflows.md +27 -0
- package/skills/bms-api/references/auth-and-calling.md +35 -0
- package/skills/bms-api/references/endpoint-index.md +137 -0
- package/skills/bms-api/references/openapi.json +1 -0
- package/skills/bms-api/references/source-manifest.json +5 -0
- package/skills/bms-api/scripts/bms_signed_request.py +103 -0
- package/skills/glink-hotel-api/SKILL.md +6 -6
- package/skills/glink-hotel-api/references/api-workflows.md +32 -32
- package/skills/glink-hotel-api/references/endpoint-index.md +77 -77
- package/skills/tmc-api/SKILL.md +63 -0
- package/skills/tmc-api/agents/openai.yaml +4 -0
- package/skills/tmc-api/references/api-workflows.md +365 -0
- package/skills/tmc-api/references/auth-and-calling.md +47 -0
- package/skills/tmc-api/references/endpoint-details.md +25964 -0
- package/skills/tmc-api/references/endpoint-index.md +116 -0
- package/skills/tmc-api/scripts/tmc_signed_request.py +199 -0
- package/skills/tmc-whitelabel/SKILL.md +0 -8
package/README.md
CHANGED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# @mongoui/skills
|
|
2
|
+
|
|
3
|
+
Install product API Skills into Codex, Cursor, Claude Code, Kiro or Gemini CLI.
|
|
4
|
+
|
|
5
|
+
| Product | Skill name |
|
|
6
|
+
| --- | --- |
|
|
7
|
+
| G-Link Hotel API | `glink-hotel-api` |
|
|
8
|
+
| F-Link Flight API | `flink-flight-api` |
|
|
9
|
+
| TMC-CBT API | `tmc-api` |
|
|
10
|
+
| TMC-BMS API | `bms-api` |
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
```sh
|
|
15
|
+
npx @mongoui/skills@latest install bms-api --tool codex
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Replace `bms-api` with another product name in the table. Supported `--tool` values are `codex`, `cursor`, `claude-code`, `kiro`, and `gemini-cli`.
|
|
19
|
+
|
|
20
|
+
Use `--target-dir <path>` to choose a custom destination. Codex and Kiro receive the complete skill directory; the other tools receive their existing single-file rules format with references and scripts bundled into the entry file.
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
npx @mongoui/skills@latest install tmc-api --tool cursor
|
|
24
|
+
npx @mongoui/skills@latest uninstall bms-api --tool codex
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## TMC-BMS API contents
|
|
28
|
+
|
|
29
|
+
The BMS skill includes authentication and business workflows, the 1.4.0 OpenAPI snapshot (131 operations), and a JSON request-signing helper that runs offline unless `--send` is explicitly specified. Skill version 1.0.0 is independent of the installer and API snapshot versions. Keep application credentials in server environment variables.
|
|
30
|
+
|
|
31
|
+
## Development and release
|
|
32
|
+
|
|
33
|
+
```sh
|
|
34
|
+
npm ci
|
|
35
|
+
python scripts/build-bms-skill.py
|
|
36
|
+
npm run check:bms
|
|
37
|
+
npm pack --dry-run
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
The BMS generator reads the sibling `open-platform-go/docs/swagger/bms-api.json` and synchronizes the portal download directory `open-platform-web/public/skills/bms-api/v1.0.0/`. Deploy that complete directory, including the ZIP and references, with the web app.
|
|
41
|
+
|
|
42
|
+
Release 0.2.1 preserves all skill assets shipped in 0.2.0 and adds BMS. Verify the actual tarball before publishing:
|
|
43
|
+
|
|
44
|
+
```sh
|
|
45
|
+
python scripts/check-release.py <release.tgz> --baseline <published-0.2.0.tgz>
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
This checks the packaged files, byte-for-byte preservation of existing product assets, and all four products installed into isolated directories for all five supported tools. The portal's BMS command release flag should be enabled only after verifying the public npm release.
|
|
49
|
+
|
|
50
|
+
The backend migration `migrations/content/0016_bms_skill_and_showcase.sql` adds Skills metadata and the fourth showcase product. BMS SDK releases are managed separately through the operator SDK management page.
|
package/dist/products/index.js
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
const PRODUCTS = {
|
|
2
|
+
"bms-api": {
|
|
3
|
+
name: "bms-api",
|
|
4
|
+
displayName: "TMC-BMS API",
|
|
5
|
+
skillFile: "skills/bms-api/SKILL.md",
|
|
6
|
+
skillDir: "skills/bms-api",
|
|
7
|
+
},
|
|
2
8
|
"glink-hotel-api": {
|
|
3
9
|
name: "glink-hotel-api",
|
|
4
10
|
displayName: "Glink Hotel API",
|
|
@@ -11,11 +17,12 @@ const PRODUCTS = {
|
|
|
11
17
|
skillFile: "skills/flink-flight-api/SKILL.md",
|
|
12
18
|
skillDir: "skills/flink-flight-api",
|
|
13
19
|
},
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
"tmc-api": {
|
|
21
|
+
name: "tmc-api",
|
|
22
|
+
displayName: "TMC-CBT API",
|
|
23
|
+
skillFile: "skills/tmc-api/SKILL.md",
|
|
24
|
+
skillDir: "skills/tmc-api",
|
|
25
|
+
},
|
|
19
26
|
};
|
|
20
27
|
export function getProduct(productName) {
|
|
21
28
|
return PRODUCTS[productName];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mongoui/skills",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "CLI for installing product skills into AI tools",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -12,11 +12,15 @@
|
|
|
12
12
|
},
|
|
13
13
|
"files": [
|
|
14
14
|
"dist",
|
|
15
|
-
"skills"
|
|
15
|
+
"skills/glink-hotel-api",
|
|
16
|
+
"skills/flink-flight-api",
|
|
17
|
+
"skills/tmc-api",
|
|
18
|
+
"skills/bms-api"
|
|
16
19
|
],
|
|
17
20
|
"scripts": {
|
|
18
21
|
"build": "tsc -p tsconfig.json",
|
|
19
|
-
"dev": "tsx src/cli.ts"
|
|
22
|
+
"dev": "tsx src/cli.ts",
|
|
23
|
+
"check:bms": "npm run build && python scripts/check-bms-signing.py && python scripts/build-bms-skill.py --check && node --test scripts/check-bms-install.mjs"
|
|
20
24
|
},
|
|
21
25
|
"devDependencies": {
|
|
22
26
|
"@types/node": "^24.6.0",
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bms-api
|
|
3
|
+
description: Integrate TMC-BMS API through the Open Platform gateway. Use for BMS authentication, CBT customer registration, customers and employees, hotel or flight back-office orders, finance, reports, files, approvals, and BMS request debugging.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# TMC-BMS API
|
|
7
|
+
|
|
8
|
+
Use the included OpenAPI snapshot and references for exact methods, paths, fields and response types. The skill version is 1.0.0; its API snapshot is 1.4.0. Check the deployment's published API reference before using fields from a newer snapshot.
|
|
9
|
+
|
|
10
|
+
- Start with [the endpoint index](references/endpoint-index.md) to find an operation. Read only that operation in [the full OpenAPI definition](references/openapi.json) for parameters, required fields, nested request/response schemas, enums and examples. Do not infer payloads from endpoint names.
|
|
11
|
+
- Read [authentication and calling](references/auth-and-calling.md) when generating signatures, obtaining a Token, sending requests or debugging authentication. `scripts/bms_signed_request.py` generates signatures offline by default; network calls require `--send`.
|
|
12
|
+
- Read [business workflows](references/api-workflows.md) for CBT registration, orders, reconciliation, reports, files and approvals. BMS manages back-office resources; G-Link/F-Link shopping and booking use their own product authorizations.
|
|
13
|
+
|
|
14
|
+
## Integration rules
|
|
15
|
+
|
|
16
|
+
Use the Open Platform base URL supplied for the selected environment and the complete `/openapi/v1/bms/` path. Keep Open App ID/Secret and BMS Token on the server, separate for sandbox and production. The Open Platform gateway generates downstream BMS authentication; never substitute downstream app credentials for Open credentials.
|
|
17
|
+
|
|
18
|
+
Every request needs an Open HMAC-SHA256 signature. `/auth/token` and `/auth/customer/register` do not require a `token` header; all other operations do. The Token request's `externalUserId` is the current environment's Open App ID. The registration request's `externalUserId` is the new customer's administrator ID in the caller's system; these meanings differ.
|
|
19
|
+
|
|
20
|
+
Sign the actual body bytes and full public path. Canonical query values are decoded and sorted, not re-encoded in the signing string. Do not serialize JSON again after signing. File uploads require a fixed multipart body/boundary and its actual media type; the JSON signing helper does not implement uploads.
|
|
21
|
+
|
|
22
|
+
Check HTTP status and the documented business envelope, including errors returned with HTTP 200. File/report responses may be binary. There is no generic BMS Webhook contract in this snapshot. Do not invent event names, success codes, pagination fields, refund behavior or callback signatures.
|
|
23
|
+
|
|
24
|
+
For writes, use the user's authorized environment and data. A timeout after registration, payment, refund, settlement or reconciliation may leave an unknown outcome; query the relevant record before any replay. Do not retry a write merely because an HTTP method is GET. First-level distributor provisioning is an internal app activation workflow and is excluded from the public snapshot.
|
|
25
|
+
|
|
26
|
+
If an answer needs a field or rule absent from the snapshot, identify what is missing and consult the published documentation or implementation. Request only the environment, endpoint, redacted error/request ID or field clarification needed to continue; never ask for secrets in chat.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Business workflows
|
|
2
|
+
|
|
3
|
+
Use `endpoint-index.md` to resolve every step to the exact operation and `openapi.json` for payloads. This is a BMS management integration, not a replacement for the G-Link/F-Link shopping flow.
|
|
4
|
+
|
|
5
|
+
## CBT registration and customer data
|
|
6
|
+
|
|
7
|
+
`POST /openapi/v1/bms/auth/customer/register` submits CBT registration with the authorized BMS distributor's Open signature. It needs no BMS Token. Automatic approval can return the CBT application's credentials and initial administrator information; manual review returns an application awaiting review with empty credential fields. Treat returned credentials as server-side secrets. Check the documented result before assuming registration completed, and do not blindly resubmit an uncertain request.
|
|
8
|
+
|
|
9
|
+
Customer APIs under `/openapi/v1/bms/customer/` cover customer details, service switches, limits, pricing, service fees and agreements. Follow each operation's required fields and update semantics. For employee paging use `/employee/employeePage`; `/employee/guestList` retrieves guests. Do not assume the two endpoints share pagination or filters.
|
|
10
|
+
|
|
11
|
+
## Hotel and flight orders
|
|
12
|
+
|
|
13
|
+
For hotels, `POST /openapi/v1/bms/order/hotel/order` lists orders; `GET` on the same path reads details. These have different schemas. Creation of manual orders, supplier confirmation, payment, cancellation, refund and status synchronization are distinct operations. Use identifiers returned by the relevant response and re-query the order after uncertain writes.
|
|
14
|
+
|
|
15
|
+
Flight back-office APIs cover manual orders, ticketing, after-sales refund/change, schedule changes and reference queries. Consult the exact flight operation instead of copying hotel fields or treating every after-sales operation as interchangeable. Shopping search and price verification use separately authorized F-Link endpoints.
|
|
16
|
+
|
|
17
|
+
## Finance and reports
|
|
18
|
+
|
|
19
|
+
Hotel finance under `/finance/hotel/` separates bill creation/detail, reconciliation, receipts, bill order adjustments, locks and settlement. Check ownership, status and amounts from the documented records before performing a write. Several GET operations mutate state; method alone does not establish retry safety.
|
|
20
|
+
|
|
21
|
+
Hotel and flight reporting under `/report/hotel/` and `/report/flight/` separates query and export endpoints. Preserve content type and file bytes for downloads; do not force binary export responses into JSON. Report permissions and filters must follow the operation schema.
|
|
22
|
+
|
|
23
|
+
## Files, approvals and reference data
|
|
24
|
+
|
|
25
|
+
Use the public common/reference and platform approval operations listed in the index. Uploads use multipart, not JSON; sign the finished multipart bytes and send the exact boundary. Resolve enum values from the API definition rather than guessing from labels. The published snapshot has no general BMS webhook protocol.
|
|
26
|
+
|
|
27
|
+
The public API excludes internal first-level distributor registration, supplier order confirmation-status update, and customer flight-itinerary configuration. Use app management for activation and the current published API reference for availability.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Authentication and calling
|
|
2
|
+
|
|
3
|
+
## Two layers
|
|
4
|
+
|
|
5
|
+
Every request uses `X-OP-App-Key` (Open App ID), `X-OP-Timestamp`, `X-OP-Nonce` and `X-OP-Sign`. Business APIs additionally use the environment's `token` header. Never log Open Secret or Token. Refresh a Token only through the documented authentication flow.
|
|
6
|
+
|
|
7
|
+
1. Activate TMC-BMS API in app management for the selected environment.
|
|
8
|
+
2. Sign `POST /openapi/v1/bms/auth/token` with JSON `{"externalUserId":"<Open App ID>"}`. Read `data.token` from the successful response.
|
|
9
|
+
3. Use that Token and a fresh Open signature for each business operation. A first read-only call is `POST /openapi/v1/bms/employee/employeePage`; inspect its body schema for `currentPage`, `pageSize` and any business filters.
|
|
10
|
+
4. `POST /openapi/v1/bms/auth/customer/register` uses Open signing without a BMS Token. Its request concerns the new CBT customer, not the existing distributor's Token login.
|
|
11
|
+
|
|
12
|
+
## Canonical signing string
|
|
13
|
+
|
|
14
|
+
Join these seven lines with `\n`, keeping the empty query line and adding no trailing newline:
|
|
15
|
+
|
|
16
|
+
```text
|
|
17
|
+
UPPERCASE_METHOD
|
|
18
|
+
PUBLIC_PATH_WITHOUT_QUERY
|
|
19
|
+
CANONICAL_QUERY
|
|
20
|
+
LOWERCASE_HEX_SHA256_OF_ACTUAL_BODY
|
|
21
|
+
TIMESTAMP
|
|
22
|
+
NONCE
|
|
23
|
+
OPEN_APP_ID
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Decode the URL query using form-query rules, sort names and then repeated values lexically, and join decoded `key=value` pairs with `&`. Percent encoding is used in the HTTP URL, not in the canonical signing string. Empty body means SHA256 of zero bytes. Compute lowercase hex HMAC-SHA256 with Open Secret, then send it as `X-OP-Sign`. Use Unix seconds for the helper's timestamp and a fresh nonce for every request.
|
|
27
|
+
|
|
28
|
+
The script accepts environment variables `OPEN_API_BASE_URL`, `OPEN_APP_ID`, `OPEN_APP_SECRET`, and `BMS_TOKEN`. It prints a redacted preview without making a network request unless `--send` is explicitly supplied. `--body-file` reads exact bytes; `--body-json` serializes once. Both `token` and `customer/register` are Token exceptions. It supports JSON/empty bodies only. Report downloads should use a caller that preserves binary responses; multipart uploads require a separately constructed exact body.
|
|
29
|
+
|
|
30
|
+
## Troubleshooting
|
|
31
|
+
|
|
32
|
+
- Signature mismatch: verify actual public path, method, body bytes, decoded query sorting, timestamp, nonce and the selected environment's Open credentials.
|
|
33
|
+
- Authentication/binding error: verify BMS app activation and credential binding; changing the signing code cannot repair missing provisioning.
|
|
34
|
+
- Business failure: consult the operation schema and published errors. Record HTTP status, redacted response, `request_id`/`trace_id` and your client request ID when present. Do not put credentials into reports.
|
|
35
|
+
- Unknown write outcome: check the corresponding customer/order/bill/settlement before any retry. The gateway's Open signature is separate from downstream signing.
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
# TMC-BMS API endpoint index
|
|
2
|
+
|
|
3
|
+
API snapshot: 1.4.0; 131 operations. Exact schemas: [openapi.json](openapi.json).
|
|
4
|
+
|
|
5
|
+
| Method | Path | API code | Summary |
|
|
6
|
+
| --- | --- | --- | --- |
|
|
7
|
+
| POST | `/openapi/v1/bms/employee/employeePage` | `bms.postEmployeeEmployeePage` | 企业员工分页 |
|
|
8
|
+
| POST | `/openapi/v1/bms/employee/guestList` | `bms.postEmployeeGuestList` | 入住人列表(兼容机票业务) |
|
|
9
|
+
| POST | `/openapi/v1/bms/finance/hotel/noGenerateBill` | `bms.postFinanceHotelNoGenerateBill` | 未出账客户账单分页 |
|
|
10
|
+
| POST | `/openapi/v1/bms/finance/hotel/generateBill` | `bms.postFinanceHotelGenerateBill` | 生成账单 |
|
|
11
|
+
| POST | `/openapi/v1/bms/finance/hotel/billPage` | `bms.postFinanceHotelBillPage` | 已出账账单分页 |
|
|
12
|
+
| GET | `/openapi/v1/bms/finance/hotel/billDetail` | `bms.getFinanceHotelBillDetail` | 账单详情 |
|
|
13
|
+
| GET | `/openapi/v1/bms/finance/hotel/startReconcile` | `bms.getFinanceHotelStartReconcile` | 开始对账 |
|
|
14
|
+
| GET | `/openapi/v1/bms/finance/hotel/confirmBill` | `bms.getFinanceHotelConfirmBill` | 确认账单 |
|
|
15
|
+
| GET | `/openapi/v1/bms/finance/hotel/cancelBill` | `bms.getFinanceHotelCancelBill` | 取消账单 |
|
|
16
|
+
| GET | `/openapi/v1/bms/finance/hotel/exportBill` | `bms.getFinanceHotelExportBill` | 导出账单 |
|
|
17
|
+
| PUT | `/openapi/v1/bms/finance/hotel/updateBillName` | `bms.putFinanceHotelUpdateBillName` | 修改账单名称 |
|
|
18
|
+
| GET | `/openapi/v1/bms/finance/hotel/notifyCashier` | `bms.getFinanceHotelNotifyCashier` | 通知收款 |
|
|
19
|
+
| GET | `/openapi/v1/bms/finance/hotel/agentPayRecord` | `bms.getFinanceHotelAgentPayRecord` | 收款记录 |
|
|
20
|
+
| PUT | `/openapi/v1/bms/finance/hotel/updateBillSettlementDate` | `bms.putFinanceHotelUpdateBillSettlementDate` | 更新账单应结算日 |
|
|
21
|
+
| POST | `/openapi/v1/bms/finance/hotel/billOrderPage` | `bms.postFinanceHotelBillOrderPage` | 账单明细列表分页 |
|
|
22
|
+
| POST | `/openapi/v1/bms/finance/hotel/billOrderAddPage` | `bms.postFinanceHotelBillOrderAddPage` | 添加明细列表分页 |
|
|
23
|
+
| POST | `/openapi/v1/bms/finance/hotel/addBillOrder` | `bms.postFinanceHotelAddBillOrder` | 添加明细 |
|
|
24
|
+
| POST | `/openapi/v1/bms/finance/hotel/billOrderDeletePage` | `bms.postFinanceHotelBillOrderDeletePage` | 移除明细列表分页 |
|
|
25
|
+
| POST | `/openapi/v1/bms/finance/hotel/deleteBillOrder` | `bms.postFinanceHotelDeleteBillOrder` | 移除明细 |
|
|
26
|
+
| POST | `/openapi/v1/bms/finance/hotel/billOrderUpdatePage` | `bms.postFinanceHotelBillOrderUpdatePage` | 更新明细列表分页 |
|
|
27
|
+
| PUT | `/openapi/v1/bms/finance/hotel/updateBillAmount` | `bms.putFinanceHotelUpdateBillAmount` | 更新账单金额 |
|
|
28
|
+
| POST | `/openapi/v1/bms/finance/hotel/billOrderLogPage` | `bms.postFinanceHotelBillOrderLogPage` | 账单明细日志分页 |
|
|
29
|
+
| POST | `/openapi/v1/bms/finance/hotel/orderLockPage` | `bms.postFinanceHotelOrderLockPage` | 订单锁列表分页 |
|
|
30
|
+
| PUT | `/openapi/v1/bms/finance/hotel/orderLockEdit` | `bms.putFinanceHotelOrderLockEdit` | 开关订单锁 |
|
|
31
|
+
| POST | `/openapi/v1/bms/finance/hotel/settlementPage` | `bms.postFinanceHotelSettlementPage` | 结算单列表分页 |
|
|
32
|
+
| POST | `/openapi/v1/bms/finance/hotel/handleSettlement` | `bms.postFinanceHotelHandleSettlement` | 记账 |
|
|
33
|
+
| GET | `/openapi/v1/bms/finance/hotel/settlementDetail` | `bms.getFinanceHotelSettlementDetail` | 结算单详情 |
|
|
34
|
+
| POST | `/openapi/v1/bms/order/hotel/order` | `bms.postOrderHotelOrder` | 酒店订单列表 |
|
|
35
|
+
| GET | `/openapi/v1/bms/order/hotel/order` | `bms.getOrderHotelOrder` | 酒店订单详情 |
|
|
36
|
+
| GET | `/openapi/v1/bms/order/hotel/systemOrderStatistics` | `bms.getOrderHotelSystemOrderStatistics` | 酒店订单状态统计 |
|
|
37
|
+
| POST | `/openapi/v1/bms/order/hotel/order/remark/add` | `bms.postOrderHotelOrderRemarkAdd` | 新增酒店订单备注 |
|
|
38
|
+
| POST | `/openapi/v1/bms/order/hotel/systemCancelOrder` | `bms.postOrderHotelSystemCancelOrder` | 酒店取消订单 |
|
|
39
|
+
| POST | `/openapi/v1/bms/order/hotel/synOrderStatus` | `bms.postOrderHotelSynOrderStatus` | 酒店同步订单状态 |
|
|
40
|
+
| POST | `/openapi/v1/bms/order/hotel/systemCancelSupplyOrder` | `bms.postOrderHotelSystemCancelSupplyOrder` | 酒店取消供货单 |
|
|
41
|
+
| POST | `/openapi/v1/bms/order/hotel/treatOrder` | `bms.postOrderHotelTreatOrder` | 酒店处理顶部订单提示 |
|
|
42
|
+
| PUT | `/openapi/v1/bms/order/hotel/systemSendOrder` | `bms.putOrderHotelSystemSendOrder` | 酒店发预定单 |
|
|
43
|
+
| GET | `/openapi/v1/bms/order/hotel/hotelDetail/{hotelId}` | `bms.getOrderHotelHotelDetailHotelId` | 酒店酒店详情 |
|
|
44
|
+
| GET | `/openapi/v1/bms/order/hotel/roomDetail/{hotelId}` | `bms.getOrderHotelRoomDetailHotelId` | 酒店房型详情 |
|
|
45
|
+
| POST | `/openapi/v1/bms/order/hotel/handleRefund` | `bms.postOrderHotelHandleRefund` | 酒店手动退款 |
|
|
46
|
+
| PUT | `/openapi/v1/bms/order/hotel/systemConfirmSupplyOrder` | `bms.putOrderHotelSystemConfirmSupplyOrder` | 酒店手动确认供货单 |
|
|
47
|
+
| PUT | `/openapi/v1/bms/order/hotel/updateSupplyOrderCode` | `bms.putOrderHotelUpdateSupplyOrderCode` | 酒店更新供应商订单号 |
|
|
48
|
+
| PUT | `/openapi/v1/bms/order/hotel/updateConfirmCode` | `bms.putOrderHotelUpdateConfirmCode` | 酒店更新酒店确认号 |
|
|
49
|
+
| POST | `/openapi/v1/bms/order/hotel/updateOrderGuest` | `bms.postOrderHotelUpdateOrderGuest` | 酒店更新订单客人信息 |
|
|
50
|
+
| POST | `/openapi/v1/bms/order/hotel/addManualOrder` | `bms.postOrderHotelAddManualOrder` | 酒店新增手工单 |
|
|
51
|
+
| PUT | `/openapi/v1/bms/order/hotel/systemPayOrder` | `bms.putOrderHotelSystemPayOrder` | 酒店支付订单 |
|
|
52
|
+
| POST | `/openapi/v1/bms/order/hotel/systemSendCancelOrder` | `bms.postOrderHotelSystemSendCancelOrder` | 酒店手动发取消单 |
|
|
53
|
+
| GET | `/openapi/v1/bms/order/hotel/hotel/destinationList` | `bms.getOrderHotelHotelDestinationList` | 酒店获取目的地列表 |
|
|
54
|
+
| POST | `/openapi/v1/bms/order/hotel/product/productList` | `bms.postOrderHotelProductProductList` | 实时查询产品 |
|
|
55
|
+
| POST | `/openapi/v1/bms/report/hotel/saleReport` | `bms.postReportHotelSaleReport` | 酒店销售统计报表 |
|
|
56
|
+
| POST | `/openapi/v1/bms/report/hotel/saleReportExport` | `bms.postReportHotelSaleReportExport` | 酒店销售统计报表导出 |
|
|
57
|
+
| POST | `/openapi/v1/bms/report/hotel/transactionPage` | `bms.postReportHotelTransactionPage` | 酒店财务交易分页 |
|
|
58
|
+
| POST | `/openapi/v1/bms/report/hotel/transactionExport` | `bms.postReportHotelTransactionExport` | 酒店财务交易导出 |
|
|
59
|
+
| POST | `/openapi/v1/bms/auth/token` | `bms.postAuthToken` | 换取 BMS 登录 Token |
|
|
60
|
+
| POST | `/openapi/v1/bms/customer/agent` | `bms.postCustomerAgent` | 新增客户信息 |
|
|
61
|
+
| PUT | `/openapi/v1/bms/customer/agent` | `bms.putCustomerAgent` | 编辑客户信息 |
|
|
62
|
+
| GET | `/openapi/v1/bms/customer/agent` | `bms.getCustomerAgent` | 客户信息详情 |
|
|
63
|
+
| GET | `/openapi/v1/bms/customer/agentList` | `bms.getCustomerAgentList` | 客户信息列表 |
|
|
64
|
+
| POST | `/openapi/v1/bms/customer/agentEnable` | `bms.postCustomerAgentEnable` | 客户启用禁用 |
|
|
65
|
+
| POST | `/openapi/v1/bms/customer/agentPage` | `bms.postCustomerAgentPage` | 客户信息分页 |
|
|
66
|
+
| GET | `/openapi/v1/bms/customer/queryCountryList` | `bms.getCustomerQueryCountryList` | 获取国家列表 |
|
|
67
|
+
| GET | `/openapi/v1/bms/customer/queryCityList` | `bms.getCustomerQueryCityList` | 获取城市信息 |
|
|
68
|
+
| POST | `/openapi/v1/bms/customer/agentFlightEnable` | `bms.postCustomerAgentFlightEnable` | 客户机票服务启用禁用 |
|
|
69
|
+
| POST | `/openapi/v1/bms/customer/agentHotelEnable` | `bms.postCustomerAgentHotelEnable` | 客户酒店服务启用禁用 |
|
|
70
|
+
| PUT | `/openapi/v1/bms/customer/agentReview` | `bms.putCustomerAgentReview` | 客户审核信息编辑 |
|
|
71
|
+
| POST | `/openapi/v1/bms/customer/agentReviewPage` | `bms.postCustomerAgentReviewPage` | 客户审核信息分页 |
|
|
72
|
+
| POST | `/openapi/v1/bms/customer/agentType` | `bms.postCustomerAgentType` | 客户类型添加 |
|
|
73
|
+
| PUT | `/openapi/v1/bms/customer/agentType` | `bms.putCustomerAgentType` | 客户类型编辑 |
|
|
74
|
+
| POST | `/openapi/v1/bms/customer/agentTypeList` | `bms.postCustomerAgentTypeList` | 客户类型列表 |
|
|
75
|
+
| POST | `/openapi/v1/bms/customer/agentTypePage` | `bms.postCustomerAgentTypePage` | 客户类型分页 |
|
|
76
|
+
| POST | `/openapi/v1/bms/customer/agentQuotaLog/agentQuotaLogPage` | `bms.postCustomerAgentQuotaLogAgentQuotaLogPage` | 客户额度变更记录分页 |
|
|
77
|
+
| POST | `/openapi/v1/bms/customer/agent/product-markup/summary` | `bms.postCustomerAgentProductMarkupSummary` | 查询客户产品加幅摘要 |
|
|
78
|
+
| POST | `/openapi/v1/bms/customer/agent/product-markup/hotel/get` | `bms.postCustomerAgentProductMarkupHotelGet` | 查询酒店加幅配置详情 |
|
|
79
|
+
| POST | `/openapi/v1/bms/customer/agent/product-markup/hotel/save` | `bms.postCustomerAgentProductMarkupHotelSave` | 保存酒店加幅配置 |
|
|
80
|
+
| POST | `/openapi/v1/bms/customer/agent/product-markup/flight/get` | `bms.postCustomerAgentProductMarkupFlightGet` | 查询机票加幅配置详情 |
|
|
81
|
+
| POST | `/openapi/v1/bms/customer/agent/product-markup/flight/save` | `bms.postCustomerAgentProductMarkupFlightSave` | 保存机票加幅配置 |
|
|
82
|
+
| GET | `/openapi/v1/bms/customer/agent/order-service-fee/config` | `bms.getCustomerAgentOrderServiceFeeConfig` | 查询客户订单服务费配置 |
|
|
83
|
+
| POST | `/openapi/v1/bms/customer/agent/order-service-fee/config` | `bms.postCustomerAgentOrderServiceFeeConfig` | 保存客户订单服务费配置 |
|
|
84
|
+
| POST | `/openapi/v1/bms/customer/corporateCode/add` | `bms.postCustomerCorporateCodeAdd` | 新增大客户协议 |
|
|
85
|
+
| POST | `/openapi/v1/bms/customer/corporateCode/edit` | `bms.postCustomerCorporateCodeEdit` | 编辑大客户协议 |
|
|
86
|
+
| POST | `/openapi/v1/bms/customer/corporateCode/del` | `bms.postCustomerCorporateCodeDel` | 删除大客户协议 |
|
|
87
|
+
| POST | `/openapi/v1/bms/customer/corporateCode/detail` | `bms.postCustomerCorporateCodeDetail` | 大客户协议详情 |
|
|
88
|
+
| POST | `/openapi/v1/bms/customer/corporateCode/page` | `bms.postCustomerCorporateCodePage` | 大客户协议分页查询 |
|
|
89
|
+
| POST | `/openapi/v1/bms/customer/corporateCode/status` | `bms.postCustomerCorporateCodeStatus` | 大客户协议启停用 |
|
|
90
|
+
| GET | `/openapi/v1/bms/customer/corporateCode/airlines` | `bms.getCustomerCorporateCodeAirlines` | 航司查询 |
|
|
91
|
+
| GET | `/openapi/v1/bms/customer/corporateCode/locations` | `bms.getCustomerCorporateCodeLocations` | 地理位置查询 |
|
|
92
|
+
| GET | `/openapi/v1/bms/customer/settlementEntity/list` | `bms.getCustomerSettlementEntityList` | 结算主体列表 |
|
|
93
|
+
| GET | `/openapi/v1/bms/order/flight/order/statistics` | `bms.getOrderFlightOrderStatistics` | 机票订单统计 |
|
|
94
|
+
| POST | `/openapi/v1/bms/order/flight/order/list` | `bms.postOrderFlightOrderList` | 订单列表 |
|
|
95
|
+
| POST | `/openapi/v1/bms/order/flight/order/detail` | `bms.postOrderFlightOrderDetail` | 订单详情 |
|
|
96
|
+
| PUT | `/openapi/v1/bms/order/flight/order/supplier-order-no` | `bms.putOrderFlightOrderSupplierOrderNo` | 修改正单供应商订单号 |
|
|
97
|
+
| POST | `/openapi/v1/bms/order/flight/order/remark/add` | `bms.postOrderFlightOrderRemarkAdd` | 新增机票订单或退票单备注 |
|
|
98
|
+
| PUT | `/openapi/v1/bms/order/flight/issue` | `bms.putOrderFlightIssue` | 手工出票 |
|
|
99
|
+
| PUT | `/openapi/v1/bms/order/flight/admin-cancel` | `bms.putOrderFlightAdminCancel` | 管理端取消订单 |
|
|
100
|
+
| POST | `/openapi/v1/bms/order/flight/create` | `bms.postOrderFlightCreate` | 创建机票手工单 |
|
|
101
|
+
| PUT | `/openapi/v1/bms/order/flight/status` | `bms.putOrderFlightStatus` | 变更手工单订单状态 |
|
|
102
|
+
| PUT | `/openapi/v1/bms/order/flight/cancel` | `bms.putOrderFlightCancel` | 取消手工单订单 |
|
|
103
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/apply-source/page` | `bms.postOrderFlightAftersaleAdminApplySourcePage` | 手工申请-可发起订单分页查询 |
|
|
104
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/apply-source/detail` | `bms.postOrderFlightAftersaleAdminApplySourceDetail` | 手工申请-原订单详情预填 |
|
|
105
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/change/manual-apply` | `bms.postOrderFlightAftersaleAdminChangeManualApply` | 提交手工改签申请 |
|
|
106
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/refund/manual-apply` | `bms.postOrderFlightAftersaleAdminRefundManualApply` | 提交手工退票申请 |
|
|
107
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/change/audit` | `bms.postOrderFlightAftersaleAdminChangeAudit` | 改签人工审核 |
|
|
108
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/change/cancel` | `bms.postOrderFlightAftersaleAdminChangeCancel` | 改签人工取消 |
|
|
109
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/change/complete` | `bms.postOrderFlightAftersaleAdminChangeComplete` | 改签人工完单 |
|
|
110
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/change/page` | `bms.postOrderFlightAftersaleAdminChangePage` | 改签单分页 |
|
|
111
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/change/detail` | `bms.postOrderFlightAftersaleAdminChangeDetail` | 改签单详情 |
|
|
112
|
+
| PUT | `/openapi/v1/bms/order/flight/aftersale/admin/change/supplier-order-no` | `bms.putOrderFlightAftersaleAdminChangeSupplierOrderNo` | 修改供应商改签单号 |
|
|
113
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/refund/audit` | `bms.postOrderFlightAftersaleAdminRefundAudit` | 退票人工审核 |
|
|
114
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/refund/cancel` | `bms.postOrderFlightAftersaleAdminRefundCancel` | 退票人工取消 |
|
|
115
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/refund/complete` | `bms.postOrderFlightAftersaleAdminRefundComplete` | 退票人工退票 |
|
|
116
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/refund/page` | `bms.postOrderFlightAftersaleAdminRefundPage` | 退票单分页 |
|
|
117
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/refund/detail` | `bms.postOrderFlightAftersaleAdminRefundDetail` | 退票单详情 |
|
|
118
|
+
| PUT | `/openapi/v1/bms/order/flight/aftersale/admin/refund/supplier-order-no` | `bms.putOrderFlightAftersaleAdminRefundSupplierOrderNo` | 修改供应商退票单号 |
|
|
119
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/passenger/list` | `bms.postOrderFlightAftersaleAdminPassengerList` | 查询退改单乘机人列表 |
|
|
120
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/passenger-segment/list` | `bms.postOrderFlightAftersaleAdminPassengerSegmentList` | 查询退改子单乘机人航段 |
|
|
121
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/change/remaining/segments` | `bms.postOrderFlightAftersaleAdminChangeRemainingSegments` | 查询剩余可改签航段交集 |
|
|
122
|
+
| POST | `/openapi/v1/bms/order/flight/aftersale/admin/refund/remaining/passenger-journeys` | `bms.postOrderFlightAftersaleAdminRefundRemainingPassengerJourneys` | 查询剩余可退票乘机人与航程航段 |
|
|
123
|
+
| POST | `/openapi/v1/bms/order/flight/scheduleChangeList` | `bms.postOrderFlightScheduleChangeList` | 航变列表查询 |
|
|
124
|
+
| POST | `/openapi/v1/bms/order/flight/scheduleChangeProcess` | `bms.postOrderFlightScheduleChangeProcess` | 处理航变 |
|
|
125
|
+
| GET | `/openapi/v1/bms/order/flight/airports/search` | `bms.getOrderFlightAirportsSearch` | 查询机场信息 |
|
|
126
|
+
| GET | `/openapi/v1/bms/order/flight/airlines/search` | `bms.getOrderFlightAirlinesSearch` | 查询航司信息 |
|
|
127
|
+
| POST | `/openapi/v1/bms/report/flight/reportPage` | `bms.postReportFlightReportPage` | 机票销售统计表分页 |
|
|
128
|
+
| POST | `/openapi/v1/bms/report/flight/reportExport` | `bms.postReportFlightReportExport` | 机票销售统计表导出 |
|
|
129
|
+
| POST | `/openapi/v1/bms/report/flight/transactionPage` | `bms.postReportFlightTransactionPage` | 机票订单交易分页 |
|
|
130
|
+
| POST | `/openapi/v1/bms/report/flight/transactionExport` | `bms.postReportFlightTransactionExport` | 机票订单交易导出 |
|
|
131
|
+
| GET | `/openapi/v1/bms/common/coin` | `bms.getCommonCoin` | 获取币种列表 |
|
|
132
|
+
| GET | `/openapi/v1/bms/common/regionList` | `bms.getCommonRegionList` | 获取手机区号列表 |
|
|
133
|
+
| POST | `/openapi/v1/bms/common/s3/uploads` | `bms.postCommonS3Uploads` | 批量上传文件 |
|
|
134
|
+
| GET | `/openapi/v1/bms/common/s3/download` | `bms.getCommonS3Download` | 下载文件 |
|
|
135
|
+
| DELETE | `/openapi/v1/bms/common/s3/delete` | `bms.deleteCommonS3Delete` | 删除文件 |
|
|
136
|
+
| POST | `/openapi/v1/bms/order/platform/travelApprovalOrder/bmsApprovalDetail` | `bms.postOrderPlatformTravelApprovalOrderBmsApprovalDetail` | BMS 审批详情(订单数据权限在审批服务内校验) |
|
|
137
|
+
| POST | `/openapi/v1/bms/auth/customer/register` | `bms.postAuthCustomerRegister` | CBT 客户注册 |
|