MongoDB End Points

Summary

Following are the list of public APIs provided by Kissinger service specific to MongoDb.

End Points

POST /v3/vendors/mongodb/accounts

This API is used for creating a new Master Payer account.

Example Request

{
"vendorAccountId":"1234567890123456",
"subscriptionModel": "Marketplace",
"type": "mongodb_user",
"dependentCsp": "AWS",
"privateKey": "evuvtogx",
"publicKey": "979c5b82-52da-4222-b983-57deed91cd79"
}              

Example Response

{{
"result": {
"id": "1234567890123456",
"vendorAccountName": "1234567890123456",
"vendorAccountId": "1234567890123456",
"vendorKey": "mongodb",
"verification": {
"state": "unverified"
},
"authorization": {
"type": "mongodb_user",
"subscriptionModel": "Marketplace",
"dependentCsp": "AWS"
},
"createdAt": "2024-07-05T18:31:28+05:30",
"consumerOrgId": "",
"byodVendor": "ABSENT"
}
}

PUT /v3/vendors/mongodb/accounts/:<account_id>

This API is used for updating a Master Payer account.

Example Request

{
"vendorAccountId":"123456789012345",
"subscriptionModel": "Marketplace",
"type": "mongodb_user",
"dependentCsp": "AWS",
"privateKey": "evuvtogx",
"publicKey": "979c5b82-52da-4222-b983-57deed91cd79"
}

Example Response

{
"result": {
"id": "123456789012345",
"vendorAccountName": "123456789012345",
"vendorAccountId": "123456789012345",
"vendorKey": "mongodb",
"verification": {
"state": "unverified"
},
"authorization": {
"type": "mongodb_user",
"subscriptionModel": "Marketplace",
"dependentCsp": "AWS"
},
"createdAt": "2024-07-05T18:04:24+05:30",
"consumerOrgId": "",
"byodVendor": "ABSENT"
}
}

POST /v3/vendors/mongodb/accounts/:<account_id>/verification

This API is used for verifying accounts.

Example Response

{
"result": {
"id": "638e38139e690232cb0755c9",
"vendorAccountName": "638e38139e690232cb0755c9",
"vendorAccountId": "638e38139e690232cb0755c9",
"vendorKey": "mongodb",
"verification": {
"state": "verified",
"lastVerificationAttemptedAt": "2024-07-05T18:44:44+05:30"
},
"authorization": {
"type": "mongodb_user",
"subscriptionModel": "Marketplace",
"dependentCsp": "AWS"
},
"createdAt": "2024-07-05T18:44:01+05:30",
"consumerOrgId": "",
"byodVendor": "ABSENT"
}
}

DELETE /v3/vendors/mongodb/accounts/:<account_id>

This API is used for deleting accounts.

Example Response

{
"result": {
"message": "Successfully deleted",
"vendorKey": "mongodb",
"vendorAccountId": "1234567890123456"
}
}

GET /v3/vendors/mongodb/accounts

This API is used for getting all account details(Tree API).

Example Response

{
"result": [
{
"id": "1234567890123456",
"vendorAccountName": "1234567890123456",
"vendorAccountId": "1234567890123456",
"vendorKey": "mongodb",
"verification": {
"state": "unverified"
},
"authorization": {
"type": "mongodb_user",
"subscriptionModel": "Marketplace",
"dependentCsp": "AWS"
},
"createdAt": "2024-07-05T18:31:28+05:30",
"consumerOrgId": "",
"byodVendor": "ABSENT"
},
{
"id": "123456789012345",
"vendorAccountName": "123456789012345",
"vendorAccountId": "123456789012345",
"vendorKey": "mongodb",
"verification": {
"state": "unverified"
},
"authorization": {
"type": "mongodb_user",
"subscriptionModel": "Marketplace",
"dependentCsp": "AWS"
},
"createdAt": "2024-07-05T18:04:24+05:30",
"consumerOrgId": "",
"byodVendor": "ABSENT"
}
]
}

GET /v3/vendors/mongodb/permissions/accounts/:<account_id>

This API is used for getting permissions across all accounts.

Example Response

{
"result": [
{
"featureName": "Cost & Usage Data",
"label": "Cost",
"permissions": [
{
"name": "mongodb.get.invoices"
},
{
"name": "mongodb.list.organization"
}
]
}
]
}

GET /v3/vendors/mongodb/permissions/accounts/:<account_id>

This API is used for getting permissions across all accounts.

Example Response

{
"result": [
{
"featureName": "Cost & Usage Data",
"label": "Cost",
"permissions": [
{
"name": "mongodb.get.invoices"
},
{
"name": "mongodb.list.organization"
}
]
}
]
}

GET /v3/vendors/mongodb/permissions/accounts/:<account_id>

This API is used for getting permissions across all accounts.

Example Response

{
"result": [
{
"featureName": "Cost & Usage Data",
"label": "Cost",
"permissions": [
{
"name": "mongodb.get.invoices"
},
{
"name": "mongodb.list.organization"
}
]
}
]
}

GET /v3/vendors/mongodb/permissions/accounts/:<account_id>

This API is used for getting permissions across all accounts.

Example Response

{
"result": [
{
"featureName": "Cost & Usage Data",
"label": "Cost",
"permissions": [
{
"name": "mongodb.get.invoices"
},
{
"name": "mongodb.list.organization"
}
]
}
]
}

GET /v3/vendors/mongodb/accounts/<accountID>

This API is used for receiving details for a specified account.

Example Response

{
"result": {
"id": "1234567890123456",
"vendorAccountName": "1234567890123456",
"vendorAccountId": "1234567890123456",
"vendorKey": "mongodb",
"verification": {
"state": "unverified"
},
"authorization": {
"type": "mongodb_user",
"subscriptionModel": "Marketplace",
"dependentCsp": "AWS"
},
"createdAt": "2024-07-05T18:31:28+05:30",
"consumerOrgId": "",
"byodVendor": "ABSENT"
}
}

POST v3/vendors/mongodb/accounts/:accountId/archive

This API is used for archiving a specified account.

Example Response

{
"result": {
"id": "123456789012345",
"vendorAccountName": "123456789012345",
"vendorAccountId": "123456789012345",
"vendorKey": "mongodb",
"verification": {
"state": "archived"
},
"meta": {},
"consumerOrgId": ""
}
}