sFOX API
Sign InOpen Account
Connect API
Connect API
  • Introduction
    • Welcome
    • Getting Started
    • Resources
      • Terminology
      • Systems & Operations
      • Integration Options
    • Guides
      • End User Onboarding & KYC
        • Individuals
        • Businesses
        • Enhanced Due Diligence
  • REST API
    • REST Endpoints
    • Authentication
    • End Users
      • Create End User Account
      • Request Verification Code
      • Confirm Verification Code
      • Create User Auth Token(s)
      • Get End User(s)
      • Get EDD Requests
      • Get EDD Prompts
      • Create EDD Responses
        • Uploading Files as Responses
      • Submit Documents
      • Deactivate User
    • Payments
      • Create Bank Account (Plaid)
      • Create Bank Account
      • Get Bank Account
      • Get Plaid Processors
      • Amend Plaid Processors
      • Verify Bank Account
      • Delete Bank Account
      • Get Wire Instructions
      • Get ACH Agreement Status
      • Request ACH Onboarding
      • Get ACH Deposit Limit
    • Withdrawals
      • Confirm Withdrawal
      • Resend Confirmation Code
      • Cancel Withdrawal
    • Transfers
      • Create Transfer
      • Confirm Transfer
      • Resend Confirmation Code
      • Cancel Transfer
      • Get Transfer Permissions
      • Get Transfer History
    • Monetization
      • Create Setting
      • Update Setting
      • Delete Setting
      • Get Settings
      • Get Permissions
      • Get Monetization History
  • WebSocket API
    • Connecting
    • Authentication
    • Subscribing & Unsubscribing
    • Message Format
    • End Users
      • Onboarding
      • Balances
      • Orders
      • Trades
    • Market Data
      • Order Book
      • Trades
      • Ticker
  • Single Sign-On
    • Overview
      • IdP Initiated SSO
    • IdP Data
    • SAML Response Data
  • Errors
    • Error Codes
Powered by GitBook
  1. REST API
  2. Monetization

Create Setting

POST https://api.sfox.com/v1/enterprise/monetization/settings

The first step to monetizing your user's activity is to create monetization settings. Using this endpoint, Partners can specify the feature, method, currency, and user they would like the fee to be applied to.

Monetization Configuration Combinations

The following combinations of Feature and Method are supported

Monetization Feature
Monetization Method(s)

RFQ

FEE_RATE

SPREAD_ADJUSTMENT

SPOT_TRADE

FEE_RATE

WITHDRAW

FEE_FLAT

Body Parameters

Name
Type
Description

feature required

string

  • RFQ

  • SPOT_TRADE

  • WITHDRAW

method required

string

  • FEE_RATE

  • FEE_FLAT

  • SPREAD_ADJUSTMENT

currency

string

The currency that this fee is specified for. If no currency is specified, the fee is applied to all currencies. i.e. btc

user_id

string

The Connect user ID this fee is specified for. If no user_id is specified, the fee is applied to all users.

amount required

number

The monetization amount in decimal format i.e. 0.01 (1%)

Responses

201 Created
{
    "data": {
        "monetization_id": 1310717,
        "monetization_feature": "Spot Trading",
        "monetization_feature_code": "SPOT_TRADE",
        "monetization_method": "Fee Rate",
        "monetization_method_code": "FEE_RATE",
        "monetization_amount": 0.01,
        "user_id": "client25",
        "currency_code": null,
        "currency_pair": null,
        "date_updated": "2023-06-07T21:49:22.000Z"
    }
}
422 Unprocessable Content
Duplicate Setting
{
    "error": "Monetization setting already exists"
}
403 Forbidden
No Feature Permission
{
    "error": "You do not have RFQ monetization permission"
}
No Method Permission
{
    "error": "You do not have FEE_RATE monetization permission for RFQ"
}

Response Body

Key
Description

monetization_id

Unique ID for this monetization setting

monetization_feature

Feature the fee will apply to

monetization_feature_code

API readable monetization feature

monetization_method

Monetization method of the setting

monetization_method_code

API readable monetization method

monetization_amount

Monetization amount in decimal format

user_id

User Id of the user that the fee is specified for

currency_code

Currency that the fee is specified for

currency_pair

Currency pair that the fee is specified for

date_updated

Date and time the fee was created or updated

Example Requests

curl -X POST \
 -H 'Content-type: application/json' \
 -H "Authorization: Bearer ${ENTERPRISE_API_KEY}" \
 --data '{ "feature": "SPOT_TRADE",
          "method": "FEE_RATE",
          "amount": 0.01,
          "user_id": "client25" }'  \
 'https://api.sfox.com/v1/enterprise/monetization/settings'
const axios = require('axios');

const config = {
  method: 'post',
  url: 'https://api.sfox.com/v1/enterprise/monetization/settings',
  headers: {
    "Content-Type": "application/json",
    'Authorization': `Bearer ${process.env.ENTERPRISE_API_KEY}`
  },
  data: {
    feature: 'SPOT_TRADE',
    method: 'FEE_RATE',
    amount: 0.01,
    user_id: 'client25'
  }
}

axios(config)
  .then((response) => {
    console.log(response.status);
    console.log(response.data);
  })
  .catch((error) => {
    console.error(error.response.status);
    console.error(error.response.data);
  });
import requests
import os

data = requests.post(
  "https://api.sfox.com/v1/enterprise/monetization/settings",
  headers={
    "Authorization": f"Bearer {os.environ['ENTERPRISE_API_KEY']}"
  },
  json={
    "feature": "SPOT_TRADE",
    "method": "FEE_RATE",
    "amount": 0.01,
    "user_id": "client25"
  }
)
print(data.status_code)
print(data.json())
PreviousMonetizationNextUpdate Setting

Last updated 11 months ago