开发者文档

创建会员订单

POST/api/orgs/:orgId/membership-orders

权限与前置条件

工作区所有者或管理员;受业务状态及交接规则约束。

此接口仅支持浏览器登录,不接受 API Key。Cookie 写入仍需允许来源的 Origin 和 X-Requested-With: suren360。不能同时携带 Cookie 与 API Key。所有路径参数须使用真实 ID。

积分授权和充值可能需要用户到账号中心确认。创建订单不表示已支付;重试划转应使用原请求,不要重复创建。

请求参数

orgId · 路径参数 · 必填字符串

JSON 请求体

字段类型必填约束
planstring是{"pattern":"^[a-z][a-z0-9-]{1,19}$"}
periodstring否{"default":"month","enum":["month","year"]}
查看完整请求 JSON Schema
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "pattern": "^[a-z][a-z0-9-]{1,19}$"
    },
    "period": {
      "default": "month",
      "type": "string",
      "enum": [
        "month",
        "year"
      ]
    }
  },
  "required": [
    "plan"
  ],
  "additionalProperties": false
}

调用示例

先通过浏览器统一登录,使用受控环境中的已有会话。 请替换部署地址与示例字段,不要将凭证粘贴到聊天或日志中。

cURL · 示例占位值需替换
curl --request POST \
  'https://YOUR_DEPLOYMENT_HOST/api/orgs/YOUR_orgId/membership-orders' \
  --cookie "$SUREN360_COOKIE" \
  --header 'Origin: https://YOUR_DEPLOYMENT_HOST' \
  --header 'X-Requested-With: suren360' \
  --header 'Content-Type: application/json' \
  --data '{
  "plan": "替换为实际值"
}'

响应结构

成功返回 HTTP 200 的 JSON 对象。下方为响应结构定义,不是虚构的业务数据。

字段类型必填约束
orderobject是{"required":["id","organizationId","plan","planName","memberLimit","amountFen","period","source","status","createdAt","paidAt","startsAt","expiresAt"],"additionalProperties":false}
查看完整响应 JSON Schema
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "order": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "organizationId": {
          "type": "string"
        },
        "plan": {
          "type": "string",
          "pattern": "^[a-z][a-z0-9-]{1,19}$"
        },
        "planName": {
          "type": "string"
        },
        "memberLimit": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "amountFen": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "period": {
          "type": "string",
          "enum": [
            "month",
            "year"
          ]
        },
        "source": {
          "type": "string",
          "enum": [
            "purchase",
            "grant"
          ]
        },
        "status": {
          "type": "string",
          "enum": [
            "pending",
            "paid",
            "cancelled",
            "granted"
          ]
        },
        "createdAt": {
          "type": "string",
          "format": "date-time",
          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
        },
        "paidAt": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
            },
            {
              "type": "null"
            }
          ]
        },
        "startsAt": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
            },
            {
              "type": "null"
            }
          ]
        },
        "expiresAt": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
            },
            {
              "type": "null"
            }
          ]
        },
        "organization": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            }
          },
          "required": [
            "name"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "id",
        "organizationId",
        "plan",
        "planName",
        "memberLimit",
        "amountFen",
        "period",
        "source",
        "status",
        "createdAt",
        "paidAt",
        "startsAt",
        "expiresAt"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "order"
  ],
  "additionalProperties": false
}
查看错误码与重试规则