---
updatedAt: 2025-03-06T23:33:39.000Z
agentTools:
  projectIndex: https://developer-gigpay.readme.io/llms.txt
---

# (Auth policies: AppUserAuthorizationPolicy)

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "GigPay.Core.Host",
    "version": "1.0"
  },
  "paths": {
    "/v1/withdrawal-methods": {
      "post": {
        "tags": [
          "WithdrawalMethods"
        ],
        "summary": " (Auth policies: AppUserAuthorizationPolicy)",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWithdrawMethodRequestModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWithdrawMethodRequestModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWithdrawMethodRequestModel"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExternalUserWithdrawMethodResponseModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "Bearer": [
              "AppUserAuthorizationPolicy"
            ]
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "CreateWithdrawMethodRequestModel": {
        "required": [
          "countryCode",
          "externalUserId",
          "name"
        ],
        "type": "object",
        "properties": {
          "externalUserId": {
            "minLength": 1,
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "$ref": "#/components/schemas/WithdrawalTypeModel"
          },
          "countryCode": {
            "minLength": 1,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ExternalUserWithdrawMethodResponseModel": {
        "type": "object",
        "properties": {
          "externalUserId": {
            "type": "string",
            "format": "uuid"
          },
          "withdrawalMethodId": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "$ref": "#/components/schemas/WithdrawalTypeModel"
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          },
          "fee": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "WithdrawalTypeModel": {
        "enum": [
          "zelle",
          "ach",
          "wire"
        ],
        "type": "string"
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "apiKey",
        "description": "Put access token in the box below.<br>For example: <b>Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6I</b>",
        "name": "Authorization",
        "in": "header"
      }
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  }
}
```