IntentLink User Withdrawals API

The user-withdrawals API from IntentLink — 6 operation(s) for user-withdrawals.

GitHub OpenAPI

Operations 7

GET /api/v1/user/withdrawals/balance Get User Withdrawal Balance #
GET /api/v1/user/withdrawals/stripe-balance Get User Stripe Balance #
GET /api/v1/user/withdrawals List User Withdrawals #
POST /api/v1/user/withdrawals Create User Withdrawal #
GET /api/v1/user/withdrawals/payout-account Get User Payout Account #
POST /api/v1/user/withdrawals/payout-account/onboarding-link Create User Payout Account Onboarding Link #
POST /api/v1/user/withdrawals/payout-account/login-link Create User Payout Account Login Link #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/intentlink-io:intentlink-io-user-withdrawals-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

intentlink-io-user-withdrawals-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Affiliate Recommendation Service User Withdrawals API
  version: 0.1.0
tags:
- name: user-withdrawals
paths:
  /api/v1/user/withdrawals/balance:
    get:
      tags:
      - user-withdrawals
      summary: Get User Withdrawal Balance
      operationId: get_user_withdrawal_balance_api_v1_user_withdrawals_balance_get
      security:
      - HTTPBearer: []
      parameters:
      - name: currency
        in: query
        required: false
        schema:
          type: string
          minLength: 3
          maxLength: 3
          default: USD
          title: Currency
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserWithdrawalBalanceResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/user/withdrawals/stripe-balance:
    get:
      tags:
      - user-withdrawals
      summary: Get User Stripe Balance
      operationId: get_user_stripe_balance_api_v1_user_withdrawals_stripe_balance_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserStripeBalanceResponse'
      security:
      - HTTPBearer: []
  /api/v1/user/withdrawals:
    get:
      tags:
      - user-withdrawals
      summary: List User Withdrawals
      operationId: list_user_withdrawals_api_v1_user_withdrawals_get
      security:
      - HTTPBearer: []
      parameters:
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 200
          minimum: 1
          default: 50
          title: Limit
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          minimum: 0
          default: 0
          title: Offset
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserWithdrawalListResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    post:
      tags:
      - user-withdrawals
      summary: Create User Withdrawal
      operationId: create_user_withdrawal_api_v1_user_withdrawals_post
      security:
      - HTTPBearer: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserWithdrawalCreate'
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserWithdrawalResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/user/withdrawals/payout-account:
    get:
      tags:
      - user-withdrawals
      summary: Get User Payout Account
      operationId: get_user_payout_account_api_v1_user_withdrawals_payout_account_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserPayoutAccountResponse'
      security:
      - HTTPBearer: []
  /api/v1/user/withdrawals/payout-account/onboarding-link:
    post:
      tags:
      - user-withdrawals
      summary: Create User Payout Account Onboarding Link
      operationId: create_user_payout_account_onboarding_link_api_v1_user_withdrawals_payout_account_onboarding_link_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserPayoutOnboardingLinkCreate'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserPayoutOnboardingLinkResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /api/v1/user/withdrawals/payout-account/login-link:
    post:
      tags:
      - user-withdrawals
      summary: Create User Payout Account Login Link
      operationId: create_user_payout_account_login_link_api_v1_user_withdrawals_payout_account_login_link_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserPayoutLoginLinkResponse'
      security:
      - HTTPBearer: []
components:
  schemas:
    UserWithdrawalBalanceResponse:
      properties:
        owner_user_id:
          type: string
          title: Owner User Id
        currency:
          type: string
          title: Currency
        commission_amount:
          type: number
          title: Commission Amount
        withdrawn_amount:
          type: number
          title: Withdrawn Amount
        available_amount:
          type: number
          title: Available Amount
      type: object
      required:
      - owner_user_id
      - currency
      - commission_amount
      - withdrawn_amount
      - available_amount
      title: UserWithdrawalBalanceResponse
    UserWithdrawalListResponse:
      properties:
        items:
          items:
            $ref: '#/components/schemas/UserWithdrawalResponse'
          type: array
          title: Items
        count:
          type: integer
          title: Count
        limit:
          type: integer
          title: Limit
        offset:
          type: integer
          title: Offset
      type: object
      required:
      - items
      - count
      - limit
      - offset
      title: UserWithdrawalListResponse
    UserStripeBalanceItem:
      properties:
        currency:
          type: string
          title: Currency
        available_amount:
          type: number
          title: Available Amount
        pending_amount:
          type: number
          title: Pending Amount
        available_minor_amount:
          type: integer
          title: Available Minor Amount
        pending_minor_amount:
          type: integer
          title: Pending Minor Amount
      type: object
      required:
      - currency
      - available_amount
      - pending_amount
      - available_minor_amount
      - pending_minor_amount
      title: UserStripeBalanceItem
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    BankAccountInput:
      properties:
        country:
          type: string
          maxLength: 2
          minLength: 2
          title: Country
        account_number:
          type: string
          maxLength: 64
          minLength: 1
          title: Account Number
        routing_number:
          anyOf:
          - type: string
            maxLength: 64
            minLength: 1
          - type: 'null'
          title: Routing Number
        account_holder_name:
          anyOf:
          - type: string
            maxLength: 160
          - type: 'null'
          title: Account Holder Name
        account_holder_type:
          anyOf:
          - $ref: '#/components/schemas/BankAccountHolderType'
          - type: 'null'
      type: object
      required:
      - country
      - account_number
      title: BankAccountInput
    UserWithdrawalResponse:
      properties:
        withdrawal_id:
          type: string
          title: Withdrawal Id
        owner_user_id:
          type: string
          title: Owner User Id
        developer_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Developer Id
        amount:
          type: number
          title: Amount
        currency:
          type: string
          title: Currency
        status:
          type: string
          title: Status
        bank_account_last4:
          anyOf:
          - type: string
          - type: 'null'
          title: Bank Account Last4
        bank_account_country:
          anyOf:
          - type: string
          - type: 'null'
          title: Bank Account Country
        bank_account_holder_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Bank Account Holder Name
        bank_account_holder_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Bank Account Holder Type
        stripe_external_account_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe External Account Id
        stripe_transfer_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Transfer Id
        stripe_payout_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Payout Id
        stripe_payment_link_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Payment Link Id
        stripe_payment_link_product_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Payment Link Product Id
        stripe_payment_link_price_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Payment Link Price Id
        stripe_checkout_session_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Checkout Session Id
        stripe_payment_intent_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Payment Intent Id
        stripe_status:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Status
        failure_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Failure Code
        failure_message:
          anyOf:
          - type: string
          - type: 'null'
          title: Failure Message
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
      - withdrawal_id
      - owner_user_id
      - amount
      - currency
      - status
      - created_at
      - updated_at
      title: UserWithdrawalResponse
    UserPayoutOnboardingLinkResponse:
      properties:
        url:
          type: string
          title: Url
        expires_at:
          anyOf:
          - type: integer
          - type: 'null'
          title: Expires At
        account:
          $ref: '#/components/schemas/UserPayoutAccountResponse'
      type: object
      required:
      - url
      - account
      title: UserPayoutOnboardingLinkResponse
    UserPayoutAccountResponse:
      properties:
        payout_account_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Payout Account Id
        owner_user_id:
          type: string
          title: Owner User Id
        stripe_connected_account_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Connected Account Id
        account_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Account Type
        country:
          anyOf:
          - type: string
          - type: 'null'
          title: Country
        email:
          anyOf:
          - type: string
          - type: 'null'
          title: Email
        status:
          type: string
          title: Status
        details_submitted:
          type: boolean
          title: Details Submitted
          default: false
        payouts_enabled:
          type: boolean
          title: Payouts Enabled
          default: false
        charges_enabled:
          type: boolean
          title: Charges Enabled
          default: false
        requirements_currently_due:
          items:
            type: string
          type: array
          title: Requirements Currently Due
        requirements_eventually_due:
          items:
            type: string
          type: array
          title: Requirements Eventually Due
        requirements_past_due:
          items:
            type: string
          type: array
          title: Requirements Past Due
        requirements_disabled_reason:
          anyOf:
          - type: string
          - type: 'null'
          title: Requirements Disabled Reason
        created_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Created At
        updated_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Updated At
      type: object
      required:
      - owner_user_id
      - status
      title: UserPayoutAccountResponse
    UserStripeBalanceResponse:
      properties:
        owner_user_id:
          type: string
          title: Owner User Id
        stripe_connected_account_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Stripe Connected Account Id
        livemode:
          type: boolean
          title: Livemode
          default: false
        items:
          items:
            $ref: '#/components/schemas/UserStripeBalanceItem'
          type: array
          title: Items
      type: object
      required:
      - owner_user_id
      title: UserStripeBalanceResponse
    UserWithdrawalCreate:
      properties:
        amount:
          anyOf:
          - type: number
            minimum: 50.0
          - type: string
            pattern: ^(?!^[-+.]*$)[+-]?0*(?:\d{0,12}|(?=[\d.]{1,19}0*$)\d{0,12}\.\d{0,6}0*$)
          title: Amount
        currency:
          type: string
          maxLength: 3
          minLength: 3
          title: Currency
          default: USD
        bank_account:
          anyOf:
          - $ref: '#/components/schemas/BankAccountInput'
          - type: 'null'
      type: object
      required:
      - amount
      title: UserWithdrawalCreate
    BankAccountHolderType:
      type: string
      enum:
      - individual
      - company
      title: BankAccountHolderType
    UserPayoutOnboardingLinkCreate:
      properties:
        return_url:
          anyOf:
          - type: string
            maxLength: 2048
          - type: 'null'
          title: Return Url
        refresh_url:
          anyOf:
          - type: string
            maxLength: 2048
          - type: 'null'
          title: Refresh Url
        country:
          anyOf:
          - type: string
            maxLength: 2
            minLength: 2
          - type: 'null'
          title: Country
      type: object
      title: UserPayoutOnboardingLinkCreate
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    UserPayoutLoginLinkResponse:
      properties:
        url:
          type: string
          title: Url
      type: object
      required:
      - url
      title: UserPayoutLoginLinkResponse
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer