---
updatedAt: 2026-06-12T17:46:13.000Z
agentTools:
  projectIndex: https://mcm-docs.moloco.com/llms.txt
---

# WithdrawWallet

Withdraw an amount of money (VAT exclusive) from a wallet of the ad account.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "Management API",
    "description": "MOLOCO RMP Management API provides functionalities for MOLOCO RMP systems.",
    "version": "1.0",
    "contact": {
      "name": "Moloco Inc.",
      "url": "https://www.molocoads.com"
    }
  },
  "paths": {
    "/rmp/mgmt/v1/platforms/{platform_id}/ad-accounts/{ad_account_id}/wallets/{wallet_id}/withdraw/{request_id}": {
      "put": {
        "summary": "WithdrawWallet",
        "description": "Withdraw an amount of money (VAT exclusive) from a wallet of the ad account.",
        "operationId": "RmpManagementApi_WithdrawWallet",
        "responses": {
          "200": {
            "description": "A successful response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/publicWithdrawWalletResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. Detailed cause can be found in the response message.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/publicRepresentedError"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/publicRepresentedError"
                }
              }
            }
          },
          "403": {
            "description": "Permission denied.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/publicRepresentedError"
                }
              }
            }
          },
          "404": {
            "description": "Not found. One or more required resources do not exist.You can see the details in the response message.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/publicRepresentedError"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. Detailed cause can be found in the response message.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/publicRepresentedError"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "platform_id",
            "description": "The Platform id.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ad_account_id",
            "description": "The AdAccount id.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "wallet_id",
            "description": "The Wallet id.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "request_id",
            "description": "The Withdraw request ID. For retries, the same request_id should be used again to prevent duplicate requests. Only alphanumeric characters, underscores, and hyphens are allowed, and 8-64 characters are required.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "withdraw": {
                    "$ref": "#/components/schemas/v1AccountUpdateAmount"
                  },
                  "comment": {
                    "type": "string",
                    "description": "A comment for transaction. Optional."
                  }
                },
                "description": "WithdrawWallet request.",
                "required": [
                  "withdraw"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "tags": [
          "Wallet"
        ]
      }
    }
  },
  "security": [
    {
      "ApiKeyAuth": []
    }
  ],
  "x-readme": {
    "explorer-enabled": false
  },
  "servers": [
    {
      "url": "https://<platform>-mgmt.mcm-api.moloco.com"
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "name": "x-api-key",
        "in": "header"
      }
    },
    "schemas": {
      "RepresentedErrorDetail": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the metadata."
          },
          "category": {
            "$ref": "#/components/schemas/commonErrorCategory"
          },
          "metadata": {
            "type": "object",
            "description": "The metadata of the responded error.",
            "additionalProperties": true
          }
        },
        "required": [
          "type",
          "category"
        ],
        "additionalProperties": true
      },
      "commonAccountType": {
        "type": "string",
        "enum": [
          "UNKNOWN_ACCOUNT_TYPE",
          "CREDITS",
          "PRE_PAID"
        ],
        "default": "UNKNOWN_ACCOUNT_TYPE",
        "description": "AccountType.\n\n - CREDITS: Account Type given as free.\n - PRE_PAID: Account Type pre paid."
      },
      "commonErrorCategory": {
        "type": "string",
        "enum": [
          "DEFAULT_ERROR_CATEGORY",
          "INPUT_VALIDATION",
          "CHARACTER_LIMIT_EXCEEDED",
          "TIMESTAMP_MISMATCH",
          "FEATURE_NOT_ALLOWED",
          "REINVITE_NOT_ALLOWED",
          "LAST_OWNER_REVOKE_NOT_ALLOWED",
          "LAST_OWNER_DELETE_NOT_ALLOWED",
          "SSO_USER_JOIN_REQUEST_NOT_ALLOWED",
          "MFA_VERIFICATION_FAILED",
          "INSUFFICIENT_SPENDING_LIMIT",
          "AD_ACCOUNT_ALREADY_OWNED",
          "INSUFFICIENT_WALLET_BALANCE",
          "INSUFFICIENT_SPEND_CAP_BUDGET",
          "MAX_SPEND_CAP_COUNT_REACHED",
          "MAX_CAMPAIGNS_COUNT_PER_SPEND_CAP_REACHED",
          "MAX_CAMPAIGN_COUNT_REACHED",
          "MODIFY_ARCHIVED_CAMPAIGN_NOT_ALLOWED",
          "INVALID_CAMPAIGN_STATUS_FOR_ARCHIVE",
          "INVALID_MANAGED_CPT_CAMPAIGN_SCHEDULE",
          "INACTIVE_AD_ACCOUNT",
          "DUPLICATE_AUDIENCE",
          "INVALID_RESERVED_TIME_LINE_ITEM_SCHEDULE",
          "EXCEED_MAX_IMAGE_SIZE",
          "MAX_LABEL_COUNT_REACHED",
          "MAX_LABEL_VALUE_COUNT_REACHED",
          "MAX_LABEL_VALUE_RELATIONSHIP_COUNT_REACHED",
          "PLATFORM_INSIGHT_UNAVAILABLE",
          "MAX_CUSTOM_TARGETING_KEY_COUNT_REACHED",
          "INVALID_CUSTOM_TARGETING"
        ],
        "default": "DEFAULT_ERROR_CATEGORY",
        "title": "- INPUT_VALIDATION: INPUT_VALIDATION: reserved for 1 ~ 99\n - TIMESTAMP_MISMATCH: TIMESTAMP_MISSMATCH: reserved for 100 ~ 199\n - FEATURE_NOT_ALLOWED: General policy: 1000 ~ 1999\n - REINVITE_NOT_ALLOWED: User policy: 2000 ~ 2999\n - INSUFFICIENT_SPENDING_LIMIT: Account policy: 3000 ~ 3999\nThis policy includes ad manager account, ad account, and wallet related policies\n - MAX_CAMPAIGN_COUNT_REACHED: Campaign policy: 4000 ~ 4999\n - INVALID_RESERVED_TIME_LINE_ITEM_SCHEDULE: Returned when a RESERVED_TIME line item's schedule overlaps an existing enabled RD booking on the same inventory.\n - EXCEED_MAX_IMAGE_SIZE: Asset policy: 5000 ~ 5999\n - MAX_LABEL_COUNT_REACHED: Labeling policy: 6000 ~ 6999\n - PLATFORM_INSIGHT_UNAVAILABLE: Insight metric policy: 7000 ~ 7999\n - MAX_CUSTOM_TARGETING_KEY_COUNT_REACHED: Custom Targeting policy: 8000 ~ 8999"
      },
      "commonWalletType": {
        "type": "string",
        "enum": [
          "UNKNOWN_WALLET_TYPE",
          "PRE_PAYMENT",
          "POST_PAYMENT"
        ],
        "default": "UNKNOWN_WALLET_TYPE",
        "description": "WalletType.\n\n - PRE_PAYMENT: Wallet type for Pre-payment use case\n - POST_PAYMENT: Wallet type for Post-payment use case"
      },
      "publicRepresentedError": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32",
            "description": "The status code, which should be an enum value of google.rpc.Code.(https://developers.google.com/actions-center/reference/grpc-api/status_codes)"
          },
          "message": {
            "type": "string",
            "description": "The detailed message of responded error."
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RepresentedErrorDetail"
            },
            "description": "The detailed information of responded error. Please refer to the error category section in guides for more detailed information.(https://rmp-docs.moloco.com/docs/management-api-error-categories)"
          }
        },
        "title": "Overridden from grpc status(https://github.com/grpc/grpc/blob/master/src/proto/grpc/status/status.proto)",
        "required": [
          "code",
          "message",
          "details"
        ],
        "additionalProperties": true
      },
      "publicWithdrawWalletResponse": {
        "type": "object",
        "properties": {
          "wallet": {
            "$ref": "#/components/schemas/v1Wallet"
          }
        },
        "description": "WithdrawWallet response.",
        "additionalProperties": true
      },
      "rmpcommonCurrency": {
        "type": "string",
        "enum": [
          "UNKNOWN_CURRENCY",
          "USD",
          "KRW",
          "JPY",
          "EUR",
          "GBP",
          "SEK",
          "INR",
          "THB",
          "IDR",
          "CNY",
          "CAD",
          "RUB",
          "BRL",
          "SGD",
          "HKD",
          "AUD",
          "PLN",
          "DKK",
          "VND",
          "MYR",
          "PHP",
          "TRY",
          "VES",
          "AED",
          "CHF"
        ],
        "default": "UNKNOWN_CURRENCY",
        "description": "Currency enumerates available currencies.\n\n - UNKNOWN_CURRENCY: Unknown currency.\n - USD: US Dollar.\n - KRW: Korean Won.\n - JPY: Japanese Yen.\n - EUR: EU Euro.\n - GBP: British Pound.\n - SEK: Swedish Krona.\n - INR: India Rupee.\n - THB: Thailand Baht.\n - IDR: Indonesia Rupiah.\n - CNY: China Yuan.\n - CAD: Canada Dollar.\n - RUB: Russia Ruble.\n - BRL: Brazil Real.\n - SGD: Singapore Dollar.\n - HKD: Hong Kong Dollar.\n - AUD: Autrailia Dollar.\n - PLN: Poland Zloty.\n - DKK: Denmark Krone.\n - VND: Viet Nam Dong.\n - MYR: Malaysia Ringgit.\n - PHP: Philippines Peso.\n - TRY: Turkey Lira.\n - VES: Venezuela Bolívar Soberano.\n - AED: United Arab Emirates Dirham.\n - CHF: Swiss Franc."
      },
      "rmpcommonMoneyMicro": {
        "type": "object",
        "properties": {
          "currency": {
            "$ref": "#/components/schemas/rmpcommonCurrency"
          },
          "amount_micro": {
            "type": "string",
            "format": "int64",
            "description": "Amount in micro unit. (e.g., 1234 means 0.001234)"
          }
        },
        "description": "A monetary amount in a specific currency; the unit is micro at fixed point value for accurate accumulation operation.\nFor example, `{\"currency\": \"USD\", \"amount_micro\": \"1234\"}` means $0.001234.",
        "required": [
          "currency",
          "amount_micro"
        ],
        "additionalProperties": true
      },
      "v1Account": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/commonAccountType"
          },
          "balance": {
            "$ref": "#/components/schemas/rmpcommonMoneyMicro"
          }
        },
        "additionalProperties": true
      },
      "v1AccountUpdateAmount": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/commonAccountType"
          },
          "amount": {
            "$ref": "#/components/schemas/rmpcommonMoneyMicro"
          }
        },
        "additionalProperties": true
      },
      "v1Wallet": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The id of the Wallet. Must be left unset for the Wallet creation request. Must be set for the other requests."
          },
          "title": {
            "type": "string",
            "description": "A friendly name for the Wallet."
          },
          "ad_account_id": {
            "type": "string",
            "description": "The id of the AdAccount that owns this Wallet. It is platform-specific ad_account_id. Value and format can vary according to each Platform."
          },
          "type": {
            "$ref": "#/components/schemas/commonWalletType"
          },
          "accounts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/v1Account"
            },
            "description": "List of Accounts that belong to the wallet."
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Created timestamp. API user should not touch this field; it is set internally.",
            "readOnly": true
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Updated timestamp. Set internally during creation, but required during update."
          }
        },
        "description": "Definition of a Wallet.",
        "required": [
          "id",
          "ad_account_id",
          "type",
          "accounts",
          "created_at",
          "updated_at"
        ],
        "additionalProperties": true
      }
    }
  }
}
```