Webbdevelop PRO RWA Platform API (1.0.0)

Download OpenAPI specification:

Our platform is is the central hub for managing the full lifecycle of tokenized assets - from creation and compliance to distribution and analytics. Our API will help you:

  • Converting real-world assets into compliant digital representations
  • Provides tools to manage the full asset lifecycle - from off-chain legal documentation to on-chain tokenization.
  • An automated digital onboarding process with comprehensive Know-Your-Customer (KYC) and Anti-Money-Laundering (AML) verification
  • Automated bookkeeping, financial statements, and reconciliations that integrate traditional accounting standards with blockchain data for unified reporting
  • Automates secure on-chain distributions of returns, dividends, or interest payments to token holders with full transparency
  • Combines traditional financial metrics with blockchain-native data to provide holistic insights

API Description

Authentication

Invest Platform uses an cookie authorize all requests, allowing access to the API. Proper cookie automatically generated during sign up process. Platform expects cookie to be included via HTTP in all API requests to the server.

Authorization

To learn the ACCOUNT_NAME for your target account, you can get it with the /authorization API call.

This returns the following as a JSON payload:

Parameter Description
id An identity, which is not used for determining who this user is within Quaderno. The id field should therefore not be used for submitting data within Quaderno's API.
name The user's full name.
email The user's email address.
publishable_key The users's publishable key (to use on frontend development).
href The custom API endpoint URL for the user, providing the sought-after ACCOUNT_NAME between https:// and .platform....

So, this curl call:

curl https://platform.com/api/authorization \
  -u <YOUR_API_KEY>:x

Returns JSON structured like this:

{
  "identity": {
    "id": "999",
    "name": "Sheldon Cooper",
    "email": "s.cooperphd@yahoo.com",
    "publishable_key":"pk_1111111111111111",
    "href": "https://nippur-999.platform.com/api/"
  }
}

Note that in all cases, if the user does not have permission to do something, you'll get a 401 Unauthorized error.

Rate Limiting

To make it easier to determine if your application is being rate-limited, or is approaching that level, we have the following HTTP headers on our successful responses:

  • X-RateLimit-Reset: The remaining window before the rate limit resets in UTC epoch seconds.
  • X-RateLimit-Remaining: The number of requests left for the time window.
  • X-RateLimit-Limit: Request limit per time window.

The current limits are 100 API calls per 15 seconds.

We reserve the right to tune the limitations, but we promise to keep them high enough to allow a well-behaving interactive app to do it's job.

When you exceed the limit you will receive a HTTP 429 (Too Many Requests).

Errors

We don't usually have any trouble on our end, but when we do we'll let you know!

The Platform API uses the following error codes:

Code Text Description
400 Bad Request Your request may be malformed
401 Unauthorized Your API key is wrong, or your user does not have access to this resource
403 Forbidden The record requested is hidden for administrators only
404 Not Found The specified record could not be found
405 Method Not Allowed You tried to access a record with an invalid method
406 Not Acceptable You requested a format that isn't JSON
410 Gone The record requested has been removed from our servers
422 Unprocessable Entity The requested method cannot process for the record in question
429 Too Many Requests You're requesting too many records! Slow down!
500 Internal Server Error We had a problem with our server. Try again later.
502 Bad Gateway We had a different problem with our server. Try again later.
503 Service Unavailable We're temporarily offline for maintenance, or you've exceeded the rate limit. Please try again later.
504 Gateway Timeout Yep, you guessed it. We'll be back soon!

Note that when API errors occur, it is up to you to retry your request - Platform does not keep track of failed calls.

Analytics Logs

Create a Log

Create a log and store it in timeline storage

Authorizations:
None
Request Body schema: application/json
optional
time
string <date-time>
message
string
severity
string
error
string
component
string
Array of objects
object
Array of objects
object (ServiceContext)

Responses

Request samples

Content type
application/json
{
  • "time": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "severity": "string",
  • "error": "string",
  • "component": "string",
  • "caller": [
    ],
  • "data": {
    },
  • "stack": [
    ],
  • "serviceContext": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string"
}

Analytics PageView

Create a PageView

Create a PageView log and store it in timeline storage

Authorizations:
None
Request Body schema: application/json
optional
time
string <date-time>
message
string
severity
string
error
string
component
string
Array of objects
object
Array of objects
object (ServiceContext)

Responses

Request samples

Content type
application/json
{
  • "time": "2019-08-24T14:15:22Z",
  • "message": "string",
  • "severity": "string",
  • "error": "string",
  • "component": "string",
  • "caller": [
    ],
  • "data": {
    },
  • "stack": [
    ],
  • "serviceContext": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string"
}

Analytics PageView Internal

Get a PageView List

Return a list of PageView Rows

Return PageView Stats

Return PageView Statistics in format usable for diagrams

distribution

getDistributions

Create Distribution of profile

Responses

createDistribution

Create Distribution for profile

Responses

accreditation

accreditationCreate

Initialize accreditation request in escrow account

query Parameters
user_id
required
any

user id

profile_id
required
any

profile id

Responses

accreditationUpdate

Start accreditation process

query Parameters
profile_id
required
any

profile id

Responses

accreditationUploadDocument

Send accreditation document for verification

query Parameters
user_id
required
any

user id

profile_id
required
any

profile id

Responses

accreditationManual

Manually update user accreditation status. Use only in case of emergency

query Parameters
user_id
required
any

user id

profile_id
required
any

profile id

Responses

accreditationSync

Synchronize accreditation status with accreditation partner

query Parameters
user_id
required
any

user id

profile_id
required
any

profile id

Responses

accreditationUpdateStatus

Handle accreditation provider status change webhook

query Parameters
api_key
required
any

request api key

Responses

escrow

escrowCreate

Create escrow account in escrow partner

query Parameters
user_id
required
any

user id

profile_id
required
any

profile id

Responses

offeringCreate

Create offer in escrow provider

query Parameters
user_id
required
any

user id

offer_id
required
any

profile id

Responses

issuer

issuerCreate

Create issuer in escrow provider

query Parameters
user_id
required
any

user id

profile_id
required
any

profile id

Responses

signature

CreateDocument

Create Esign Signature Request

Responses

RetriveDocument

Return binary blob of signed document

Responses

CryptoWallet

exchangeToken

Exchange tokens

Responses

getWalletInfo

Get Wallet Information

Responses

withdrawalToken

Withdraw token from a wallet

Responses

auth

delete file by ID

delete file by ID

path Parameters
id
required
any

File ID

header Parameters
Authorization
required
any

IdentityID

Responses

get file by ID

get file by ID

path Parameters
id
required
any

File ID

query Parameters
size
any

Size

header Parameters
Authorization
required
any

IdentityID

Responses

returns url for file downloading

returns url for file downloading

path Parameters
id
required
any

File ID

header Parameters
Authorization
required
any

IdentityID

Responses

returns url for file uploading

returns url for file uploading

header Parameters
Authorization
required
any

IdentityID

Responses

returns metadata by object ID and object Name

returns metadata by object ID and object Name

path Parameters
object_path
required
any

Object Name

header Parameters
Authorization
required
any

IdentityID

Responses

returns user's files

returns user's files

header Parameters
Authorization
required
any

IdentityID

Responses

internal

delete file by ID

delete file by ID

path Parameters
id
required
any

File ID

Responses

get file by ID

get file by ID

path Parameters
id
required
any

File ID

query Parameters
size
any

Size

Responses

returns url for file downloading

returns url for file downloading

path Parameters
id
required
any

File ID

query Parameters
size
any

Size

Responses

returns url for file uploading

returns url for file uploading

Responses

returns metadata by object ID and object Name

returns metadata by object ID and object Name

path Parameters
object_path
required
any

Object Name

Responses

public

get file by ID

get file by ID

path Parameters
id
required
any

File ID

query Parameters
size
any

Size

Responses

returns metadata by object ID and object Name

returns metadata by object ID and object Name

path Parameters
object_path
required
any

Object Name

Responses

Investment Creation

Initialize

Create an investor’s initial commitment to an offering.

Workflow overview:
1. Validate investor eligibility (KYC/AML).
2. Verify offering availability and minimum investment amount.
3. Record the commitment, status, and allocation.
4. Return the created investment record with its unique identifier.
    
Authorizations:
None
path Parameters
offer_slug
required
string
profile_id
required
string
Request Body schema: application/json
optional
id
integer
object (Offer)
profile_id
integer
user_id
integer
price_per_share
number
number_of_shares
integer
amount
number
step
string
status
string
created_at
string
submited_at
string
funding_type
string
funding_status
string
object
object
object (PaymentData)
payment_type
string
escrow_type
string
entity_id
string
transaction_ref
string

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

Amount

Set up investment amount

Authorizations:
None
path Parameters
offer_slug
required
string
id
required
string
profile_id
required
string
Request Body schema: application/json
optional
number_of_shares
required
integer

Responses

Request samples

Content type
application/json
{
  • "number_of_shares": 0
}

Response samples

Content type
application/json
{
  • "number_of_shares": 0
}

Ownership

Set up Ownership information

Authorizations:
None
path Parameters
offer_slug
required
string
id
required
string
profile_id
required
string
Request Body schema: application/json
optional
first_name
required
string >= 2 characters
last_name
required
string >= 2 characters
dob
required
string <date>
middle_name
string >= 2 characters
phone
required
string >= 9 characters
ssn
required
string = 9 characters
address1
required
string >= 4 characters
address2
string >= 3 characters
citizenship
required
string >= 3 characters
city
required
string >= 2 characters
state
required
string >= 2 characters
zip_code
required
string >= 5 characters
country
required
string >= 2 characters

Responses

Request samples

Content type
application/json
{
  • "first_name": "string",
  • "last_name": "string",
  • "dob": "2019-08-24",
  • "middle_name": "string",
  • "phone": "stringstr",
  • "ssn": "stringstr",
  • "address1": "string",
  • "address2": "string",
  • "citizenship": "string",
  • "city": "string",
  • "state": "string",
  • "zip_code": "string",
  • "country": "string"
}

Response samples

Content type
application/json
{
  • "first_name": "string",
  • "last_name": "string",
  • "dob": "2019-08-24",
  • "middle_name": "string",
  • "phone": "stringstr",
  • "ssn": "stringstr",
  • "address1": "string",
  • "address2": "string",
  • "citizenship": "string",
  • "city": "string",
  • "state": "string",
  • "zip_code": "string",
  • "country": "string"
}

Esignature

Create electronical signature document with legal binding

Authorizations:
None
path Parameters
offer_slug
required
string
id
required
string
profile_id
required
string
Request Body schema: application/json
optional
signature_id
required
string >= 2 characters
user_browser
string
ip_address
string

Responses

Request samples

Content type
application/json
{
  • "signature_id": "string",
  • "user_browser": "string",
  • "ip_address": "string"
}

Response samples

Content type
application/json
{
  • "signature_id": "string",
  • "user_browser": "string",
  • "ip_address": "string"
}

Funding

Funding step

Authorizations:
None
path Parameters
offer_slug
required
string
id
required
string
profile_id
required
string
Request Body schema: application/json
optional
funding_type
required
string
funding_source_id
integer
object

Responses

Request samples

Content type
application/json
{
  • "funding_type": "string",
  • "funding_source_id": 0,
  • "payment_data": {
    }
}

Response samples

Content type
application/json
{
  • "funding_type": "string",
  • "funding_source_id": 0,
  • "payment_data": {
    }
}

Confirmation

Investment Confirmation Step

Authorizations:
None
path Parameters
offer_slug
required
string
id
required
string
profile_id
required
string
Request Body schema: application/json
optional
object (ReviewStep)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{ }

Investment Management

List Confirmed

Get list of user confirmed investments

Authorizations:
None
path Parameters
profile_id
required
string
Request Body schema: application/json
optional
id
integer
object (Offer)
profile_id
integer
user_id
integer
price_per_share
number
number_of_shares
integer
amount
number
step
string
status
string
created_at
string
submited_at
string
funding_type
string
funding_status
string
object
object
object (PaymentData)
payment_type
string
escrow_type
string
entity_id
string
transaction_ref
string

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

List Unconfirmed

Get list of user unconfirmed investments

Authorizations:
None
Request Body schema: application/json
optional
id
integer
object (Offer)
profile_id
integer
user_id
integer
price_per_share
number
number_of_shares
integer
amount
number
step
string
status
string
created_at
string
submited_at
string
funding_type
string
funding_status
string
object
object
object (PaymentData)
payment_type
string
escrow_type
string
entity_id
string
transaction_ref
string

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

List Accounts

List of user bank accounts

Authorizations:
None
Request Body schema: application/json
optional
id
integer
object (Offer)
profile_id
integer
number_of_shares
integer
amount
number
step
string
payment_type
string
escrow_type
string
funding_type
string
funding_status
string
object
status
string
updated_at
string
submited_at
string
object

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "payment_type": "string",
  • "escrow_type": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "escrow_data": {
    },
  • "status": "string",
  • "updated_at": "string",
  • "submited_at": "string",
  • "signature_data": {
    }
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "payment_type": "string",
  • "escrow_type": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "escrow_data": {
    },
  • "status": "string",
  • "updated_at": "string",
  • "submited_at": "string",
  • "signature_data": {
    }
}

Get investment

Get user investment by id

Authorizations:
None
path Parameters
id
required
string
Request Body schema: application/json
optional
id
integer
object (Offer)
profile_id
integer
user_id
integer
price_per_share
number
number_of_shares
integer
amount
number
step
string
status
string
created_at
string
submited_at
string
funding_type
string
funding_status
string
object
object
object (PaymentData)
payment_type
string
escrow_type
string
entity_id
string
transaction_ref
string

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

Cancel investment

Cancel user investment by id

Authorizations:
None
path Parameters
id
required
string
Request Body schema: application/json
optional
cancelation_reason
required
string >= 4 characters

Responses

Request samples

Content type
application/json
{
  • "cancelation_reason": "string"
}

Response samples

Content type
application/json
{
  • "cancelation_reason": "string"
}

Investment Internal

Get Investment

Get investment by id without authorization and status check

path Parameters
id
required
any
Request Body schema: application/json
optional
id
integer
object (Offer)
profile_id
integer
user_id
integer
price_per_share
number
number_of_shares
integer
amount
number
step
string
status
string
created_at
string
submited_at
string
funding_type
string
funding_status
string
object
object
object (PaymentData)
payment_type
string
escrow_type
string
entity_id
string
transaction_ref
string

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "offer": {
    },
  • "profile_id": 0,
  • "user_id": 0,
  • "price_per_share": 0,
  • "number_of_shares": 0,
  • "amount": 0,
  • "step": "string",
  • "status": "string",
  • "created_at": "string",
  • "submited_at": "string",
  • "funding_type": "string",
  • "funding_status": "string",
  • "signature_data": {
    },
  • "escrow_data": {
    },
  • "payment_data": {
    },
  • "payment_type": "string",
  • "escrow_type": "string",
  • "entity_id": "string",
  • "transaction_ref": "string"
}

kyc

Create a link for the KYC verification process

Create a link for the KYC verification process

Responses

Manually update KYC

Manually update KYC

Responses

Sync KYC status with kyc-provider

Sync KYC status with kyc-provider

Responses

other

Get all notifications

Responses

mark notification as read

Responses

mark all notification as read

Responses

Offers

List

List of public offers

Request Body schema: application/json
optional
id
integer
name
string
legal_name
string
slug
string
title
string
security_type
string
price_per_share
number
min_investment
number
image_link_id
integer
total_shares
integer
valuation
number
subscribed_shares
integer
confirmed_shares
integer
status
string
approved_at
string
website
string
state
string
city
string
object
close_at
string <date-time>
seo_title
string
seo_description
string

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "legal_name": "string",
  • "slug": "string",
  • "title": "string",
  • "security_type": "string",
  • "price_per_share": 0,
  • "min_investment": 0,
  • "image_link_id": 0,
  • "total_shares": 0,
  • "valuation": 0,
  • "subscribed_shares": 0,
  • "confirmed_shares": 0,
  • "status": "string",
  • "approved_at": "string",
  • "website": "string",
  • "state": "string",
  • "city": "string",
  • "security_info": {
    },
  • "close_at": "2019-08-24T14:15:22Z",
  • "seo_title": "string",
  • "seo_description": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "legal_name": "string",
  • "slug": "string",
  • "title": "string",
  • "security_type": "string",
  • "price_per_share": 0,
  • "min_investment": 0,
  • "image_link_id": 0,
  • "total_shares": 0,
  • "valuation": 0,
  • "subscribed_shares": 0,
  • "confirmed_shares": 0,
  • "status": "string",
  • "approved_at": "string",
  • "website": "string",
  • "state": "string",
  • "city": "string",
  • "security_info": {
    },
  • "close_at": "2019-08-24T14:15:22Z",
  • "seo_title": "string",
  • "seo_description": "string"
}

Detail

Get detail information about the offer

path Parameters
slug
required
string
Request Body schema: application/json
optional
id
integer
name
string
legal_name
string
slug
string
title
string
security_type
string
price_per_share
number
min_investment
number
image_link_id
integer
total_shares
integer
valuation
number
subscribed_shares
integer
confirmed_shares
integer
status
string
approved_at
string
website
string
state
string
city
string
object
close_at
string <date-time>
seo_title
string
seo_description
string
description
string
highlights
string
additional_details
string
object (OfferOfferData)
linkedin
string
facebook
string
twitter
string
github
string
instagram
string
telegram
string
mastodon
string

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "legal_name": "string",
  • "slug": "string",
  • "title": "string",
  • "security_type": "string",
  • "price_per_share": 0,
  • "min_investment": 0,
  • "image_link_id": 0,
  • "total_shares": 0,
  • "valuation": 0,
  • "subscribed_shares": 0,
  • "confirmed_shares": 0,
  • "status": "string",
  • "approved_at": "string",
  • "website": "string",
  • "state": "string",
  • "city": "string",
  • "security_info": {
    },
  • "close_at": "2019-08-24T14:15:22Z",
  • "seo_title": "string",
  • "seo_description": "string",
  • "description": "string",
  • "highlights": "string",
  • "additional_details": "string",
  • "data": {
    },
  • "linkedin": "string",
  • "facebook": "string",
  • "twitter": "string",
  • "github": "string",
  • "instagram": "string",
  • "telegram": "string",
  • "mastodon": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "legal_name": "string",
  • "slug": "string",
  • "title": "string",
  • "security_type": "string",
  • "price_per_share": 0,
  • "min_investment": 0,
  • "image_link_id": 0,
  • "total_shares": 0,
  • "valuation": 0,
  • "subscribed_shares": 0,
  • "confirmed_shares": 0,
  • "status": "string",
  • "approved_at": "string",
  • "website": "string",
  • "state": "string",
  • "city": "string",
  • "security_info": {
    },
  • "close_at": "2019-08-24T14:15:22Z",
  • "seo_title": "string",
  • "seo_description": "string",
  • "description": "string",
  • "highlights": "string",
  • "additional_details": "string",
  • "data": {
    },
  • "linkedin": "string",
  • "facebook": "string",
  • "twitter": "string",
  • "github": "string",
  • "instagram": "string",
  • "telegram": "string",
  • "mastodon": "string"
}

Comments

List

Get a list of published comments for the offer

path Parameters
id
required
string
Request Body schema: application/json
optional
created_at
string <date-time>
comment
string
related
string
object (Author)

Responses

Request samples

Content type
application/json
{
  • "created_at": "2019-08-24T14:15:22Z",
  • "comment": "string",
  • "related": "string",
  • "user": {
    }
}

Response samples

Content type
application/json
{
  • "created_at": "2019-08-24T14:15:22Z",
  • "comment": "string",
  • "related": "string",
  • "user": {
    }
}

Create

Post question/answer for the offer

Authorizations:
None
Request Body schema: application/json
optional
comment
required
string >= 10 characters
related
string
Enum: "none" "adviser" "employee" "affiliated" "investor"
offer_id
required
integer [ 0 .. 2147483647 ]

Responses

Request samples

Content type
application/json
{
  • "comment": "stringstri",
  • "related": "none",
  • "offer_id": 2147483647
}

Response samples

Content type
application/json
{
  • "comment": "stringstri",
  • "related": "none",
  • "offer_id": 2147483647
}

Offers Internal

Patch

Update offer information

path Parameters
id
required
string
Request Body schema: application/json
optional
image_link_id
required
integer or null [ 0 .. 2147483647 ]

Responses

Request samples

Content type
application/json
{
  • "image_link_id": 2147483647
}

Response samples

Content type
application/json
{
  • "image_link_id": 2147483647
}

funding

LinkInvestment

Link investment with escrow provider

query Parameters
investment_id
required
any

investment id

Responses

FundingTransfer

Transfer funding from linked bank account to escrow account

query Parameters
investment_id
required
any

investment id

Responses

FundingUpdate

Update funding transfer status

query Parameters
investment_id
required
any

investment id

Responses

account

AccountSync

Check if account created in escrow but not in our system

query Parameters
user_id
required
any

user id

profile_id
required
any

profile id

Responses

queue

Process an event and send it to the queue

Process an event and send it to the queue

path Parameters
service
required
any

Service Name

topic
required
any

Topic Name

Responses

Profiles

Create

Create profile for a user

Authorizations:
None
path Parameters
type
required
any

Responses

Response samples

Content type
application/json
{
  • "first_name": "string",
  • "last_name": "string",
  • "middle_name": "string",
  • "citizenship": "U.S. Citizen",
  • "dob": "2019-08-24",
  • "phone": "stringstr",
  • "ssn": "stringstr",
  • "address1": "string",
  • "address2": "string",
  • "city": "string",
  • "state": "AL",
  • "zip_code": "string",
  • "country": "AF",
  • "employment": {
    },
  • "finra_affiliated": {
    },
  • "ten_percent_shareholder": {
    },
  • "irs_backup_withholding": true,
  • "educational_materials": true,
  • "cancelation_restrictions": true,
  • "resell_difficulties": true,
  • "risk_involved": true,
  • "no_legal_advices_from_company": true,
  • "beneficiary": {
    },
  • "limitation_rule": true,
  • "limitation_rule_confirmation": true,
  • "annual_income": 0,
  • "net_worth": 0,
  • "invested_external": 0,
  • "reg_cf": {
    },
  • "investment_objectives": {
    },
  • "accredited_investor": {
    }
}

Update

Update profile information

Authorizations:
None
path Parameters
type
required
any
id
required
any

Responses

Response samples

Content type
application/json
{
  • "first_name": "string",
  • "last_name": "string",
  • "middle_name": "string",
  • "citizenship": "U.S. Citizen",
  • "dob": "2019-08-24",
  • "phone": "stringstr",
  • "ssn": "stringstr",
  • "address1": "string",
  • "address2": "string",
  • "city": "string",
  • "state": "AL",
  • "zip_code": "string",
  • "country": "AF",
  • "employment": {
    },
  • "finra_affiliated": {
    },
  • "ten_percent_shareholder": {
    },
  • "irs_backup_withholding": true,
  • "educational_materials": true,
  • "cancelation_restrictions": true,
  • "resell_difficulties": true,
  • "risk_involved": true,
  • "no_legal_advices_from_company": true,
  • "beneficiary": {
    },
  • "limitation_rule": true,
  • "limitation_rule_confirmation": true,
  • "annual_income": 0,
  • "net_worth": 0,
  • "invested_external": 0,
  • "reg_cf": {
    },
  • "investment_objectives": {
    },
  • "accredited_investor": {
    }
}

Retrieve

Retrieve profile information

Authorizations:
None
path Parameters
type
required
any
id
required
any

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "first_name": "string",
  • "last_name": "string",
  • "phone": "stringstr",
  • "image_link_id": 2147483647,
  • "created_at": "string",
  • "updated_at": "string"
}

Users

Update

Update user information

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "first_name": "string",
  • "last_name": "string",
  • "phone": "stringstr",
  • "image_link_id": 2147483647
}

Retrieve

Retrieve current user information

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "first_name": "string",
  • "last_name": "string",
  • "phone": "stringstr",
  • "image_link_id": 2147483647,
  • "created_at": "string",
  • "updated_at": "string"
}

Users Internal

Create

Create user

Responses

Response samples

Content type
application/json
{
  • "identity": {
    }
}

bankAccount

bankAccountDelete

Delete connected bank account

query Parameters
ProfileID
required
any
Example: ProfileID=3
header Parameters
Authorization
required
any
Example: f8a61466-8964-4ade-8ca5-fa452bceba3f
XRequestID
required
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

Responses

bankAccountExchangeToken

Exchange token between dwolla and plaid to get access_token

query Parameters
ProfileID
required
any
Example: ProfileID=3
header Parameters
Authorization
required
any
Example: f8a61466-8964-4ade-8ca5-fa452bceba3f
XRequestID
required
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

Responses

bankAccountProcessToken

Connect bank account using access token

query Parameters
ProfileID
required
any
Example: ProfileID=3
header Parameters
Authorization
required
any
Example: f8a61466-8964-4ade-8ca5-fa452bceba3f
XRequestID
required
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

Responses

wallet

getWalletDetail

Get Wallet Info

query Parameters
ProfileID
required
any
Example: ProfileID=3
header Parameters
Authorization
required
any
Example: f8a61466-8964-4ade-8ca5-fa452bceba3f
XRequestID
required
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

Responses

getTransactionList

Get Transaction list

query Parameters
WalletID
any
Example: WalletID=3
header Parameters
Authorization
required
any
Example: f8a61466-8964-4ade-8ca5-fa452bceba3f
XRequestID
required
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

Responses

createPendingTransaction

Create Pending Transaction

query Parameters
type
required
any
Example: type=3
amount
required
any
Example: amount=12.2
funding_source_id
required
any
Example: funding_source_id=3
WalletID
required
any
Example: WalletID=3
header Parameters
Authorization
required
any
Example: f8a61466-8964-4ade-8ca5-fa452bceba3f
XRequestID
required
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

Responses

adminWallet

internalSyncTransaction

Sync transaction status with dwolla

query Parameters
TransID
required
any
Example: TransID=1

Responses

internalReCreateWallet

Create wallet in dwolla if it does not exist

query Parameters
WalletID
required
any
Example: WalletID=3

Responses

internalWalletSync

Sync wallet status with dwolla

query Parameters
WalletID
required
any
Example: WalletID=3

Responses

webhook

Sync transaction status with dwolla

webhookSetTransactionErrorStatus

Update Transaction Failed Status

webhookProcessTransaction

Update Transaction Status

query Parameters
amount
required
any
Example: amount=12.2
funding_source_id
required
any
Example: funding_source_id=3
header Parameters
XRequestID
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

webhookUpdateWalletStatus

Update Wallet Status

transfer

webhookSetTransactionErrorStatus

Update Transaction Failed Status

webhookProcessTransaction

Update Transaction Status

query Parameters
amount
required
any
Example: amount=12.2
funding_source_id
required
any
Example: funding_source_id=3
header Parameters
XRequestID
any
Example: 0191701c-da51-749a-a4fc-e96579ebc043

webhookUpdateWalletStatus

Update Wallet Status