有奖捉虫:云通信与企业服务文档专题,速来> HOT

为了帮助您快速使用腾讯云 mongodb API,这里给出一个使用示例。

本实例展示如何创建一个实例:首先查询实例购买规格;然后查询创建需要的费用,通过创建接口创建实例;最后,通过订单查询接口,查询实例创建进度。

1. 查询可创建实例规格

在创建实例前,我们需要先查询能够创建的实例规格, 可以通过查询可创建实例规格接口查询。

查询可创建规格(支持可用区、配置自定义)接口输入参数如下:

参数名称 是否必选 类型 描述 取值
zoneIds.n String 可用区ID组成的数组,数组下标从0开始, 若不传此参数将返回所有区域产品信息 100002

其中,可用区定义如下:

可用区 zoneId
广州一区 100001
广州二区 100002
广州三区 100003
上海一区 200001
香港一区 300001
多伦多一区 400001
北京一区 800001

查询可创建规格(支持可用区、配置自定义)接口的返回值是各个可用区下可创建实例的配置信息, 以返回值中广州二区实例配置为例,各个字段解释如下:

参数名称 类型 描述
region String 区域ID,详见公共请求参数
isSupportVpc Bool 是否支持私有网络,其值包括:true和false
types Object 支持的实例规格内容

其中,types 表示支持的实例规格内容,其参数构成如下:

参数名称 类型 描述
typeId String 实例类型英文名称。 GIO:高IO版;TGIO:高IO万兆
replicationNodeNum Array 副本集节点数,暂时只支持节点数为2、3
memory Int 实例内存大小,每一个内存值对应一个可选的磁盘大小范围,单位:MB
volumeMax Int 选定内存后,实例硬盘大小可选的最大值,单位:GB
volumeMin Int 选定内存后,实例硬盘大小可选的最小值,单位:GB
volumeStep Int 选定内存后,实例硬盘大小的步长,单位:GB; 创建实例时,硬盘(volume)的取值是:volume= volumeMin + volumeStep * n; 同时 volumeMin <= volume <= volumeMax
version Array 可支持的数据库版本号,例如 MONGO_3_MMAP、MONGO_3_WT

结合公共请求参数和接口请求参数,最终得到的请求形式如下:

    https://mongodb.api.qcloud.com/v2/index.php?
    Action=DescribeMongoDBProduct
    &SecretId=AKIDVxZ0PsvtxxxqkeTMFCu7z1
    &Signature=eSCz5paiDrXsdifc0Eq0GEihzsI%3D
    &Nonce=23284
    &Timestamp=1468329994
    &Region=gz
    &zoneIds.0=100002

上述请求的返回结果如下:

{
    "code": 0,
    "message": "",
    "codeDesc": "Success",
    "data": {
        "timeSpan": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            24,
            36
        ],
        "timeUnit": "m",
        "goodsDescription": {
            "100002": {
                "region": "gz",
                "isSupportVpc": true,
                "types": [
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 2048,
                        "volumeMax": 250,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 4096,
                        "volumeMax": 250,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 6144,
                        "volumeMax": 250,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 8192,
                        "volumeMax": 500,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 12288,
                        "volumeMax": 500,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 16384,
                        "volumeMax": 500,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 24576,
                        "volumeMax": 500,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 32768,
                        "volumeMax": 500,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 49152,
                        "volumeMax": 750,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 61440,
                        "volumeMax": 1000,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "GIO",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 65536,
                        "volumeMax": 1000,
                        "volumeMin": 25,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 4096,
                        "volumeMax": 300,
                        "volumeMin": 50,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 8192,
                        "volumeMax": 300,
                        "volumeMin": 100,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 16384,
                        "volumeMax": 600,
                        "volumeMin": 200,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 32768,
                        "volumeMax": 1200,
                        "volumeMin": 400,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 65536,
                        "volumeMax": 4000,
                        "volumeMin": 750,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 131072,
                        "volumeMax": 6000,
                        "volumeMin": 1500,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 245760,
                        "volumeMax": 6000,
                        "volumeMin": 1500,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    },
                    {
                        "typeId": "CY",
                        "replicationNodeNum": [
                            2,
                            3
                        ],
                        "memory": 524288,
                        "volumeMax": 6000,
                        "volumeMin": 4000,
                        "volumeStep": 5,
                        "version": [
                            "MONGO_3_MMAP",
                            "MONGO_3_WT"
                        ]
                    }
                ]
            }
        }
    }
}

2. 查询实例价格(包年包月)

创建副本集实例会扣除涉及的费用,可以通过查询实例价格(包年包月)接口查询涉及的费用。 我们这里假设购买一个广州二区高IO版实例, 查询价格的输入参数如下:

参数名称 是否必选 类型 描述 取值
operation String 必须填newmongodb,表示新购实例 newmongodb
zoneId Int 可用区ID,请使用查询可创建实例规格接口获取可创建的可用区 100002
typeId String 实例类型英文名称。 GIO:高IO版;TGIO:高IO万兆 GIO
memory Int 实例内存大小,每一个内存值对应一个可选的磁盘大小范围,单位:MB 8192
diskSize Int 实例磁盘大小,单位:GB 245
secondaryNum Int 副本集实例的从节点个数,暂时只支持节点数为1、2 2
version Int 数据库版本号,例如 MONGO_3_MMAP、MONGO_3_WT MONGO_3_MMAP
goodsNum Int 一次购买的实例数 1
period Int 购买时长, 单位:月, 取值范围 [1,2,3,4,5,6,7,8,9,10,11,12,24,36] 1

结合公共请求参数和接口请求参数,最终得到的请求形式如下:

https://mongodb.api.qcloud.com/v2/index.php?
Action=InquiryMongoDBReplSetPrice
&Timestamp=1468328627
&Nonce=51897
&SecretId=AKIDVxZ0PsvtxxxqkeTMFCu7z1
&Signature=u34AneL09yCx50BwrUZtibiHxNw%3D
&Region=gz
&operation=newmongodb
&zoneId=100002
&typeId=GIO
&memory=8192
&diskSize=245
&secondaryNum=2
&version=MONGO_3_MMAP
&goodsNum=1
&period=1

从返回值知道, 购买上面规格的实例, 价格合计 188800 分(人民币)

{
    "code": 0,
    "message": "",
    "codeDesc": "Success",
    "data": {
        "price": 188800
    }
}

3. 创建副本集实例

接下来,我们按照上面的规格,调用创建实例(包年包月)接口, 输入参数如下:

参数名称 是否必选 类型 描述 取值
zoneId Int 可用区ID,请使用查询可创建实例规格接口获取可创建的可用区 100002
typeId String 实例类型英文名称。 GIO:高IO版;TGIO:高IO万兆 GIO
memory Int 实例内存大小,每一个内存值对应一个可选的磁盘大小范围,单位:MB 4096
diskSize Int 实例磁盘大小,单位:GB 30
secondaryNum Int 复制集从节点个数,暂时只支持节点数为1、2 2
version Int 数据库版本号,例如 MONGO_3_MMAP、MONGO_3_WT MONGO_3_MMAP
goodsNum Int 一次购买的实例数 1
period Int 购买时长, 单位:月, 取值范围 [1,2,3,4,5,6,7,8,9,10,11,12,24,36] 1
password String 实例密码,密码规则:1.长度为8-16个字符;2:至少包含字母、数字和字符(!@#%^())中的两种 49A2d!e@f12e
vpcId Int vpc网络ID, 如果是基础网络, vpcId=0, vpc网络下,取值以查询私有网络列表 返回的vpcid为准 0
subnetId Int 基础网络下, subnetId无效, vpc子网下,取值以查询私有网络列表 返回的subnetid为准 0
projectId Int 项目id,取值以用户账户>用户账户相关接口查询>项目列表返回的projectId为准 0

结合公共请求参数和接口请求参数,最终得到的请求形式如下:

https://mongodb.api.qcloud.com/v2/index.php?
Action=CreateMongoDBReplSet
&Timestamp=1468328920
&Nonce=27412
&SecretId=AKIDVxZ0PsvtxxxqkeTMFCu7z1
&Signature=4Dvpkk1bJov%2FUd%2FElWjAHfJaoD8%3D
&zoneId=100002
&typeId=GIO
&memory=4096
&diskSize=30
&secondaryNum=2
&version=MONGO_3_MMAP
&goodsNum=1
&period=1
&password=49A2d!e@f12e

从返回值知道, 购买上面规格的实例对应订单号为3373037,可以通过查询订单详情接口查询该订单的详情

{
    "code": 0,
    "message": "",
    "codeDesc": "Success",
    "data": {
        "dealId": "3373037"
    }
}

4. 查询订单详情

创建实例后, 可以使用dealId返回值到 查询订单详情 接口查询订单详情

参数名称 是否必选 类型 描述 取值
dealIds.n String 订单号组成的数组,数组下标从0开始 3373037

结合公共请求参数和接口请求参数,最终得到的请求形式如下:

https://mongodb.api.qcloud.com/v2/index.php?
Action=DescribeMongodbDealDetail
&Timestamp=1468329117
&Nonce=40727
&SecretId=AKIDVxZ0PsvtxxxqkeTMFCu7z1
&Signature=Y9rMVWyvjoijSl6zJxMW822edGk%3D
&dealIds.0=3373037

对应输出如下:

{
    "code": 0,
    "message": "",
    "codeDesc": "Success",
    "details": [
        {
            "dealId": "3373037",
            "dealName": "20170206121420",
            "zoneId": 100002,
            "goodsNum": 1,
            "creater": "3374998458",
            "creatTime": "2017-02-06 14:07:46",
            "overdueTime": "2017-02-21 14:07:46",
            "endTime": "2017-02-06 14:11:54",
            "status": 4,
            "price": 72200,
            "goodsDetail": {
                "memSize": 4096,
                "disksize": 30,
                "typeId": "GIO",
                "clusterType": "ReplSet",
                "secondaryNum": 2,
                "zoneId": 100002,
                "mongoVersion": "MONGO_3_MMAP",
                "timeSpan": 1,
                "timeUnit": "m",
                "SerialIds": [
                    "cmgo-6ozqe0uh"
                ]
            }
        }
    ]
}

查询订单详情接口返回值 details 表示订单详情数组,其各字段含义如下:

参数名称 类型 描述
details.dealId String 短订单号ID,调用云API时使用此ID
details.dealName String 长订单号ID,反馈订单问题给官方客服使用此ID
details.zoneId Int 可用区ID
details.goodsNum Int 订单关联的实例数
details.creater String 创建订单的用户uin
details.creatTime String 订单创建时间
details.overdueTime String 订单过期时间
details.endTime String 订单完成时间
details.status Int 订单状态
1:未支付
2:已支付,未发货
3:发货中
4:发货成功
5:发货失败
6:已退款
7:已关闭订单
8:订单过期
9:订单已失效
10:产品已失效
11:代付拒绝
12:支付中
details.price Int 订单实际总价,单位:分
details.goodsDetail Object 订单关联的商品详情

创建实例时返回的goodsDetail:

参数名称 类型 描述
memSize int 实例的内存容量,单位:MB
disksize int 实例的磁盘大小,单位:GB
typeId String 实例类型英文名称。 GIO:高IO版;TGIO:高IO万兆
clusterType Array 实例集群类型,目前仅为复制集
secondaryNum Array 复制集从节点个数,暂时只支持节点数为1、2
zoneId Array 可用区ID
mongoVersion Array 数据库版本号,例如 MONGO_3_MMAP、MONGO_3_WT
timeSpan Array 实例的时长,单位以timeUnit返回为准
timeUnit Array 实例时长单位,m:月;d:天
SerialIds Array 实例ID的数组

续费实例时返回的goodsDetail:

参数名称 类型 描述
curDeadline String 续费前,实例的到期时间
timeSpan int 续费时长,单位以timeUnit返回为准
timeUnit String 续费时长的单位,m:月;d:天
SerialIds Array 实例ID的数组

升级实例时返回的goodsDetail:

参数名称 类型 描述
curDeadline String 实例的到期时间
newMemsize int 升级后实例的内存容量,单位:MB
newDisksize int 升级后实例的磁盘容量,单位:GB
oldMemsize int 升级前实例的内存容量,单位:MB
oldDisksize int 升级前实例的磁盘容量, 单位:GB
SerialIds Array 实例ID的数组