DealMaker API (1.101.5)

Download OpenAPI specification:Download

Introduction

Welcome to DealMaker’s Web API v1! This API is RESTful, easy to integrate with, and offers support in 2 different languages. This is the technical documentation for our API. There are tutorials and examples of integrations with our API available on our knowledge centre as well.

Libraries

  • Javascript
  • Ruby

Authentication

To authenticate, add an Authorization header to your API request that contains an access token. Before you generate an access token your must first create an application on your portal and retrieve the your client ID and secret

Create an Application

DealMaker’s Web API v1 supports the use of OAuth applications. Applications can be generated in your account.

To create an API Application, click on your user name in the top right corner to open a dropdown menu, and select "Integrations". Under the API settings tab, click the Create New Application button

Screenshot

Name your application and assign the level of permissions for this application

Screenshot

Once your application is created, save in a secure space your client ID and secret.

WARNING: The secret key will not be visible after you click the close button

Screenshot

From the developer tab, you will be able to view and manage all the available applications

Screenshot

Each Application consists of a client id, secret and set of scopes. The scopes define what resources you want to have access to. The client ID and secret are used to generate an access token. You will need to create an application to use API endpoints.

How to generate an access token

After creating an application, you must make a call to obtain a bearer token using the Generate an OAuth token operation. This operation requires the following parameters:

token endpoint - https://app.dealmaker.tech/oauth/token

grant_type - must be set to client_credentials

client_id - the Client ID displayed when you created the OAuth application in the previous step

client_secret - the Client Secret displayed when you created the OAuth application in the previous step

scope - the scope is established when you created the OAuth application in the previous step

Note: The Generate an OAuth token response specifies how long the bearer token is valid for. You should reuse the bearer token until it is expired. When the token is expired, call Generate an OAuth token again to generate a new one.

To use the access token, you must set a plain text header named Authorization with the contents of the header being “Bearer XXX” where XXX is your generated access token.

Example

Postman

Here's an example on how to generate the access token with Postman, where {{CLIENT_ID}} and {{CLIENT_SECRET}} are the values generated after following the steps on Create an Application

Get access token postman example

Status Codes

Content-Type Header

All responses are returned in JSON format. We specify this by sending the Content-Type header.

Status Codes

Below is a table containing descriptions of the various status codes we currently support against various resources.

Sometimes your API call will generate an error. Here you will find additional information about what to expect if you don’t format your request properly, or we fail to properly process your request.

Status Code Description
200 Success
403 Forbidden
404 Not found

Pagination

Pagination is used to divide large responses is smaller portions (pages). By default, all endpoints return a maximum of 25 records per page. You can change the number of records on a per request basis by passing a per_page parameter in the request header parameters. The largest supported per_page parameter is 100.

When the response exceeds the per_page parameter, you can paginate through the records by increasing the offset parameter. Example: offset=25 will return 25 records starting from 26th record. You may also paginate using the page parameter to indicate the page number you would like to show on the response.

Please review the table below for the input parameters

Inputs

Parameter Description
per_page Amount of records included on each page (Default is 25)
page Page number
offset Amount of records offset on the API request where 0 represents the first record

Response Headers

Response Header Description
X-Total Total number of records of response
X-Total-Pages Total number of pages of response
X-Per-Page Total number of records per page of response
X-Page Number of current page
X-Next-Page Number of next page
X-Prev-Page Number of previous page
X-Offset Total number of records offset

Search and Filtering (The q parameter)

The q optional parameter accepts a string as input and allows you to filter the request based on that string. Please note that search strings must be encoded according to ASCII. For example, "john+investor@dealmaker.tech" should be passed as “john%2Binvestor%40dealmaker.tech”. There are two main ways to filter with it.

Keyword filtering

Some keywords allow you to filter investors based on a specific “scope” of the investors, for example using the string “Invited” will filter all investors with the status invited, and the keyword “Has attachments” will filter investors with attachments.

Here’s a list of possible keywords and the “scope” each one of the keywords filters by:

Keywords Scope Decoded Example Encoded Example
Signed on (date range) Investors who signed in the provided date range Signed on (date range) [2020-07-01:2020-07-31] Signed%20on%20%28date%20range%29%20%5B2020-07-01%3A2020-07-31%5D
Enabled for countersignature on (date range) Investors who were enabled for counter signature in the provided date range Enabled for countersignature on (date range) [2022-05-24:2022-05-25] Enabled%20for%20countersignature%20on%20(date%20range)%20%5B2022-05-24%3A2022-05-25%5D
Accepted on (date range) Investors accepted in the provided date rage Accepted on (date range) [2022-05-24:2022-05-25] Accepted%20on%20(date%20range)%20%5B2022-05-24%3A2022-05-25%5D
Offline Investors added to the deal offline Offline Offline
Online Investors added to the deal online Online Online
Signed Investors who signed their agreement Signed Signed
Waiting for countersignature Investors who have signed and are waiting for counter signature Waiting for countersignature Waiting%20for%20countersignature
Invited Investors on the Invited Status Invited Invited
Accepted Investors in the Accepted Status Accepted Accepted
Questionnaire in progress All Investors who have not finished completing the questionnaire Questionnaire in progress Questionnaire%20in%20progress
Has attachments All Investors with attachments Has attachments Has%20attachments
Has notes All Investors with notes Has notes Has%20notes
Waiting for co-signature Investors who have signed and are waiting for co-signature Waiting for co-signature Waiting%20for%20co-signature
Background Check Approved Investors with approved background check Background Check Approved Background%20Check%20Approved
Document Review Pending Investors with pending review Document Review Pending Document%20Review%20Pending
Document Upload Pending Investors with pending documents to upload Document Upload Pending Document%20Upload%20Pending
Required adjudicator review Investors who are required to be review by the adjudicator Required adjudicator review Required%20adjudicator%20review

NOTE

Filtering keywords are case sensitive and need to be encoded


Search String

Any value for the parameter which does not match one of the keywords listed above, will use fields like first name, last name, email, tags to search for the investor.

For example, if you search “Robert”, because this does not match one of the keywords listed above, it will then return any investors who have the string “Robert” in their name, email, or tags fields.

Versioning

The latest version is v1.

The version can be updated on the Accept header, just set the version as stated on the following example:


Accept:application/vnd.dealmaker-v1+json
Version Accept Header
v1 application/vnd.dealmaker-v1+json

SDK’s

For instruction on installing SDKs, please view the following links

Webhooks

Our webhooks functionality allows clients to automatically receive updates on a deal's investor data.

Some of the data that the webhooks include:

  • Investor Name
  • Date created
  • Email
  • Phone
  • Allocation
  • Attachments
  • Accredited investor status
  • Accredited investor category
  • State (Draft, Invited, Signed, Accepted, Waiting, Inactive)

Via webhooks clients can subscribe to the following events as they happen on Dealmaker:

  • Investor is created
  • Investor details are updated (any of the investor details above change or are updated)
  • Investor has signed their agreement
  • Invertor fully funded their investment
  • Investor has been accepted
  • Investor is deleted

A URL supplied by the client will receive all the events with the information as part of the payload. Clients are able to add and update the URL within DealMaker.

Configuration

For a comprehensive guide on how to configure Webhooks please visit our support article: Configuring Webhooks on DealMaker – DealMaker Support.

As a developer user on DealMaker, you are able to configure webhooks by following the steps below:

  1. Sign into Dealmaker
  2. Go to “Your profile” in the top right corner
  3. Access an “Integrations” configuration via the left menu
  4. The developer configures webhooks by including:
    • The HTTPS URL where the request will be sent
    • Optionally, a security token that we would use to build a SHA1 hash that would be included in the request headers. The name of the header is X-DealMaker-Signature. If the secret is not specified, the hash won’t be included in the headers.
    • The Deal(s) to include in the webhook subscription
    • An email address that will be used to notify about errors.
  5. The developers can disable webhooks temporarily if needed

Specification

Events

The initial set of events will be related to the investor. The events are:

  1. investor.created

    • Triggers every time a new investor is added to a deal
  2. investor.updated

    • Triggers on updates to any of the following fields:
      • Status
      • Name
      • Email - (this is a user field so we trigger event for all investors with webhook subscription)
      • Allocated Amount
      • Investment Amount
      • Accredited investor fields
      • Adding or removing attachments
      • Tags
    • When the investor status is signed, the payload also includes a link to the signed document; the link expires after 30 minutes
  3. investor.signed

    • Triggers when the investor signs their subscription agreement (terms and conditions)
      • When this happens the investor.state becomes signed
    • This event includes the same fields as the investor.updated event
  4. investor.funded

    • Triggers when the investor becomes fully funded
      • This happens when the investor.funded_state becomes funded
    • This event includes the same fields as the investor.updated event
  5. investor.accepted

    • Triggers when the investor is countersigned
      • When this happens the investor.state becomes accepted
    • This event includes the same fields as the investor.updated event
  6. investor.deleted

  • Triggers when the investor is removed from the deal
  • The investor key of the payload only includes investor ID
  • The deal is not included in the payload. Due to our implementation it’s impossible to retrieve the deal the investor was part of

Requests

  • The request is a POST
  • The payload’s content-type is application/json
  • Only 2XX responses are considered successful. In the event of a different response, we consider it failed and queue the event for retry
  • We retry the request five times, after the initial attempt. Doubling the waiting time between intervals with each try. The first retry happens after 30 seconds, then 60 seconds, 2 mins, 4 minutes, and 8 minutes. This timing scheme gives the receiver about 1 hour if all the requests fail
  • If an event fails all the attempts to be delivered, we send an email to the address that the user configured

Payload

Common Properties

There will be some properties that are common to all the events on the system.

Key Type Description
event String The event that triggered the call
event_id String A unique identifier for the event
deal* Object The deal in which the event occurred. please see below for an example on the deal object**

*This field is not included when deleting a resource

** Sample Deal Object in the webhook payload

"deal": {
        "id": 0,
        "title": "string",
        "created_at": "2022-12-06T18:14:44.000Z",
        "updated_at": "2022-12-08T12:46:48.000Z",
        "state": "string",
        "currency": "string",
        "security_type": "string",
        "price_per_security": 0.00,
        "deal_type": "string",
        "minimum_investment": 0,
        "maximum_investment": 0,
        "issuer": {
            "id": 0,
            "name": "string"
        },
        "enterprise": {
            "id": 0,
            "name": "string"
        }
    }

Common Properties (investor scope)

By design, we have incorporated on the webhooks payload the same investor-related fields included in the Investor model, for reference on the included fields, their types and values please click here. This will allow you to get all the necessary information you need about a particular investor without having to call the Get Investor by ID endpoint. |

Investor State

Here is a brief description of each investor state:

  • Draft: the investor is added to the platform but hasn't been invited yet and cannot access the portal
  • Invited: the investor was added to the platform but hasn’t completed the questionnaire
  • Signed: the investor signed the document (needs approval from Lawyer or Reviewer before countersignature)
  • Waiting: the investor was approved for countersignature by any of the Lawyers or Reviewers in the deal
  • Accepted: the investor's agreement was countersigned by the Signatory
  • Inactive the investor is no longer eligible to participate in the offering. This may be because their warrant expired, they requested a refund, or they opted out of the offering

Update Delay

Given the high number of updates our platform performs on any investor, we’ve added a cool down period on update events that allows us to “group” updates and trigger only one every minute. In consequence, update events will be delivered 1 minute after the initial request was made and will include the latest version of the investor data at delivery time.

Deal

The Deal is the portal which a Company uses for its raise. Each deal will have one Company, and will have multiple investors. An Investor represents a specific investment, meaning that a User could have multiple Investments. A Deal has many complex components. The Deal will have a subscription agreement, which is the document investors will sign. The Deal will have team members which have different roles and permissions in terms of how they interact with the Deal and with Investors on the Deal. The Deal will also have payment methods set up to allow Investors to pay for their investments. These features can be accessed within the DealMaker application. To set up a Deal and interact with these features, please view our help desk documentation: How can I set up my own deal?. In the production environment, a Deal’s invoice must be recorded as paid before it can be set to active, however this requirement is waived in the staging environment.

With the Deal Endpoints you may interact with your deals. Each Deal has a unique ID, which is accessible from the URL of any page on that Deal.

Get incentive plan by deal id

Gets the current active incentive plan for the given deal id.

path Parameters
id
required
integer <int32>

The deal id.

query Parameters
investment_amount
number <float>

The investment amount to get the security price for.

Responses

Request samples

const dealApi = new Dealmakerapi.DealApi()
const dealId = 100

api.getDealIncentivePlan(dealId, function(error, data, response) {
  if (error) {
    console.error(error)
  } else {
    console.log(JSON.stringify(data))
  }
})

Response samples

Content type
application/json
{
  • "full_price": {
    },
  • "final_price": {
    },
  • "computed_investment_amount": 0.1,
  • "computed_number_of_securities": 0,
  • "effective_tier": {
    },
  • "incentive_plan": {
    }
}

List available deals

List available deals

Authorizations:
oauth
query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

Responses

Request samples

Response samples

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

Get deal by Deal ID

Gets a single deal using the Deal ID

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

Responses

Request samples

const dealApi = new Dealmakerapi.DealApi()
const dealId = 100

api.getDeal(dealId, function(error, data, response) {
  if (error) {
    console.error(error)
  } else {
    console.log(JSON.stringify(data))
  }
})

Response samples

Content type
application/json
{
  • "id": 0,
  • "title": "string",
  • "state": "draft",
  • "currency": "string",
  • "security_type": "string",
  • "price_per_security": 0.1,
  • "minimum_investment": 0,
  • "maximum_investment": 0,
  • "issuer": {
    },
  • "enterprise": {
    },
  • "deal_type": "other_or_unknown",
  • "investors": {
    },
  • "funding": {
    }
}

Prepares an investor for payment

Prepare investor for payment

Authorizations:
oauth
path Parameters
id
required
string

The deal id

investor_id
required
integer <int32>

The investor id

subscription_id
required
integer <int32>

The subscription id

Responses

Request samples

Response samples

Content type
application/json
{
  • "clientSecret": "string",
  • "name": "string",
  • "email": "string"
}

Create deal setup

Create deal setup

Authorizations:
oauth
Request Body schema: application/x-www-form-urlencoded
required
invoicing_email
required
string

The invoice email address.

issuer_industry
string
Default: "other"
Enum: "other" "beverage" "blockchain" "cannabis" "cpc" "gaming" "health" "industry" "mining" "real_estate" "retail" "tech" "psychedelics" "office_of_life_sciences" "office_of_energy_and_transportation" "office_of_real_estate_and_construction" "office_of_manufacturing" "office_of_technology" "office_of_trade_and_services" "office_of_finance" "office_of_international_corp_fin"

The industry.

prohibited_industry
string
Default: "prohibited"
Enum: "prohibited" "not_prohibited"

Determine if the deal is a high risk or not.

offering_type
required
string
Default: "other"
Enum: "other" "canadian_private_placement" "regulation_a_plus_offering" "offering_memorandum" "regulation_cf_offering" "reg_d_506_c" "reg_d_506_b" "reg_s"

The deal kind

title
required
string

The name of deal to setup.

company_id
required
integer <int32>

the company id.

representative
string

The email of the representative.

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "deal_name": "string",
  • "deal_type": 0,
  • "invoice_contact": "string",
  • "industry": "string",
  • "high_risk": true,
  • "company_id": 0,
  • "link": "string",
  • "representative": {
    }
}

Investor

Each individual investment in a deal is an Investor. Investments belong to a User, and a User may have multiple Investments, across different deals or in the same deal. Each Investor has a unique ID, which is accessible on the overview page for that Investor. The access link for each Investor will also be unique, even if multiple investors belong to the same User. If an Investor is using an Investor Profile, a snapshot of the profile will be included with the Investor payload once they are in the signed state. An Investor enters the signed state when they sign their subscription agreement. If an Investor has not yet signed their agreement, or if an Investor is created without an associated profile, then the “investor_profile” field will be null.

Delete investor profile.

Deletes the investor profile.

Authorizations:
oauth
path Parameters
type
required
integer <int32>
id
required
integer <int32>

Responses

Request samples

Update a deal investor

Update deal investor

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

investor_id
required
integer <int32>

The investor id.

Request Body schema: application/json
required
warrant_expiry_date
string <date>

The warrant expiry date of the investor.

warrant_certificate_number
integer <int32>

The certificate number of the investor.

allocated_amount
number <float>

The allocation amount of the investor.

allocation_unit
string
Default: "securities"
Enum: "securities" "amount"

The allocation unit of the investor.

investment_value
DollarAmount

The investment value of the investor.

notes
string

The notes of the investor.

Responses

Request samples

Content type
application/json
{
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "allocated_amount": 0.1,
  • "allocation_unit": "securities",
  • "investment_value": null,
  • "notes": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Patch a deal investor

Patch deal investor

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

investor_id
required
integer <int32>

The investor id.

Request Body schema: application/x-www-form-urlencoded
required
investor_profile_id
required
integer <int32>

Investor profile id that needs to be set on investor

current_step
string
Default: "contact-information"
Enum: "contact-information" "investor-confirmation"

Step on checkout page.

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Get a deal investor by id

Gets a single investor by the id.

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

investor_id
required
integer <int32>

The investor id.

Responses

Request samples

const dealApi = new Dealmakerapi.DealApi()
const dealId = 56
const id = 56

dealApi.getInvestor(dealId, id, (error, data, response) => {
  if (error) {
    console.error(error)
  } else {
    console.log(JSON.stringify(data))
  }
})

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

List deal investors

List deal investors according to the specified search criteria.

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

investor_ids
Array of integers <int32> [ items <int32 > ]

An array of investor ids.

q
string

The search query for investors. For additional information on filtering and seach, click here

Responses

Request samples

const dealApi = new Dealmakerapi.DealApi()
const dealId = 56
const investorId = [null]

dealApi.listInvestors(dealId, investorId, (error, data, response) => {
  if (error) {
    console.error(error)
  } else {
    console.log(JSON.stringify(data))
  }
})

Response samples

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

Create a deal investor

Create a single deal investor.

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

Request Body schema: application/json
required
email
required
string

The investor email address.

investor_profile_id
integer <int32>

The Investor Profile id.

tags
Array of strings
first_name
string

The first name of the investor.

last_name
string

The last name of the investor.

phone_number
string

The phone number of the investor.

message
string

The reminder email text of the investor.

warrant_expiry_date
string <date>

The warrant expiry date of the investor.

warrant_certificate_number
integer <int32>

The certificate number of the investor.

allocated_amount
number <float>

The allocation amount of the investor.

investment_value
DollarAmount

The investment value of the investor.

allocation_unit
string
Default: "securities"
Enum: "securities" "amount"

The allocation unit of the investor.

state
string
Default: "invited"
Enum: "draft" "invited"

The initial state of the investor.

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "investor_profile_id": 0,
  • "tags": [
    ],
  • "first_name": "string",
  • "last_name": "string",
  • "phone_number": "string",
  • "message": "string",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "allocated_amount": 0.1,
  • "investment_value": null,
  • "allocation_unit": "securities",
  • "state": "draft"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Get investor incentive plan by investor id

Gets a single investor incentive plan by the investor id.

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

investor_id
required
integer <int32>

The investor id.

Responses

Request samples

Response samples

Content type
application/json
{
  • "full_price": {
    },
  • "final_price": {
    },
  • "computed_investment_amount": 0.1,
  • "computed_number_of_securities": 0,
  • "effective_tier": {
    },
  • "incentive_plan": {
    }
}

Delete document for deal investor

Delete document for deal investor

Authorizations:
oauth
path Parameters
id
required
integer <int32>
investor_id
required
integer <int32>
document_id
required
integer <int32>

Responses

Request samples

Add document for deal investor

Add document for deal investor

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

investor_id
required
integer <int32>

The investor id.

Request Body schema: application/x-www-form-urlencoded
required
type
required
string
Default: "regular"
Enum: "regular" "AML/KYC"

Document type.

file
required
string <binary>

File to upload.

caption
string

The caption.

search_entity_id
integer <int32>

Search entity id.

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Add 506c document for deal investor

Add 506c document for deal investor

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

investor_id
required
integer <int32>

The investor id.

Request Body schema: application/x-www-form-urlencoded
required
file
required
string <binary>

File to upload

caption
string

The caption

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Bulk upload investors for deal investor

Bulk upload investors

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

Request Body schema: application/x-www-form-urlencoded
required
import_file
required
string <binary>

The CSV file with data to upload.

alerts_email
string

The email to send alerts to.

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Append or replace tag(s) for a specific investor

Edit investor tag

Authorizations:
oauth
path Parameters
id
required
integer <int32>
investor_id
required
integer <int32>
Request Body schema: application/x-www-form-urlencoded
required
tags
required
Array of strings

The list of tags.

mode
string
Default: "append"
Enum: "append" "replace"

The type of request for the tag(s): "append" or "replace".

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Get the search entities attached to the investor

Get the entities that needs to be updated due to wrong information.

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The deal id.

investor_id
required
integer <int32>

The investor id.

Responses

Request samples

const dealApi = new DealmakerApi.DealApi()
const dealId = 56
const investorId = 56

dealApi.getDealInvestorSearchEntities(dealId, investorId, (error, data, response) => {
  if (error) {
    console.error(error)
  } else {
    console.log(JSON.stringify(data))
  }
})

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "type": "individual",
  • "type_num": "string",
  • "status": "pending",
  • "re_run_performed": true,
  • "email_content": "string",
  • "attachments": {
    },
  • "last_review_time": "2019-08-24T14:15:22Z",
  • "required_fields": {
    }
}

Get enforcements for a background search

Get enforcements for a background search

Authorizations:
oauth
path Parameters
id
required
integer <int32>
investor_id
required
integer <int32>
search_entity_id
required
integer <int32>

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Run Alloy background search for the investor

Run Alloy background search for the investor

Authorizations:
oauth
path Parameters
id
required
integer <int32>
investor_id
required
integer <int32>
Request Body schema: application/x-www-form-urlencoded
required
search_entity_ids
required
Array of integers <int32> [ items <int32 > ]

An array of search entity ids.

Responses

Request samples

Request new document for a specific entity

Request new document to entity

Authorizations:
oauth
path Parameters
id
required
integer <int32>
investor_id
required
integer <int32>
search_entity_id
required
integer <int32>
Request Body schema: application/x-www-form-urlencoded
required
type
required
string
Enum: "incomplete" "approved" "additional_docs_requested" "flagged"

The type of request.

message
string

The message added by the reviewer.

Responses

Request samples

Investor Profile

An Investor Profile contains information about the identity of the investor. The Investor Profile is the information which identifies how the investor’s securities will be registered, namely the type of investor, the investor’s name, and the investor’s address. There are four possible investor types: Individual, Joint (i.e. joint tenants, tenants in common, community property), Trust, and Corporation.

The profile will also contain more detailed information, depending on what type of investor it is. An individual investor will contain the date of birth and taxpayer identification number, while a corporation profile will contain information about the signing officer and beneficial owners. The investor profile will also contain the investor’s accredited investor status.

An investor profile belongs to the User. An investor profile may be created by the user themselves, when they complete an investment, or it may be created by an external API application on behalf of the user. Only a User may update their own profile - an external API application cannot update a profile on a User’s behalf. When an investment is created, it may be associated to an investor profile. A User may have many Investor Profiles, and an Investor Profile may have many Investors associated to it. This may be represented by the structure below. Screenshot

An investor profile contains all the information about an investor which is needed to complete an investment. The specific investment in a deal is done through the Investor model. The Investor model takes all the information contained in the Investor Profile and applies it to a specific investment, in a deal. When an Investor moves into the signed state (which happens the investor signs their digital subscription agreement), a snapshot is created of the Investor Profile to which that Investor is associated. This snapshot will make available the core information about that investor, including name, address, date of birth, taxpayer ID, and other fields (depending on profile type). The snapshot will reflect the information contained in the profile at the time the Investor moved into the signed state, meaning if the Investor Profile is update at a future time, any existing Investors associated with it who were in the signed (or waiting or accepted) states will not reflect the updates.

An Investor is related to a deal, but an Investor Profile is not. A User is also not related to any specific deal. A User may use an Investor Profile to create an Investor, the latter of which will be related to a specific deal.

Get list of InvestorProfiles for a specific deal

Get investor profiles for a specific deal. Because an investor profile belongs to the user associated with it, external applications may not use this endpoint for other profiles. Only the user may use this endpoint for their own profiles (i.e. to see existing profiles within the DealMaker application).

Authorizations:
oauth
path Parameters
deal_id
required
integer <int32>

The deal id.

query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

user_id
integer <int32>

The user id filter.

Responses

Request samples

Response samples

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

Get list of InvestorProfiles

Get investor profiles. Because an investor profile belongs to the user associated with it, external applications may not use this endpoint for other profiles. Only the user may use this endpoint for their own profiles (i.e. to see existing profiles within the DealMaker application).

Authorizations:
oauth
query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

Responses

Request samples

Response samples

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

Get an investor profile by id

Get an investor profile. Because an investor profile belongs to the user associated with it, external applications may not use this endpoint for other profiles. Only the user may use this endpoint for their own profiles (i.e. to see existing profiles within the DealMaker application).

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The id of the investor profile.

Responses

Request samples

Response samples

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

Create new corporation investor profile.

Create new corporation investor profile associated to the user by email.

Authorizations:
oauth
Request Body schema: application/json
required
email
required
string

User email which is associated with investor profile (required).

us_accredited_category
string
Enum: "entity_owned_by_accredited_investors" "assets_other" "assets_family_office" "assets_benefit_plan" "assets_state_plan" "assets_501_c_3" "assets_corporation" "broker_or_dealer" "bank_3_a_2" "business_development_company" "small_business" "private_business_development_company" "investment_company" "rural_business_investment_company" "insurance_company" "family_client" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "a" "b" "c" "d" "f" "g" "h" "i" "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "x"

The Canadian accredited investor information.

name
string

The name of the corporation (required).

country
Country

The country of the corporation (required).

street_address
string

The street address of the corporation (required).

unit2
string

The street address line 2 of the corporation.

city
string

The city of the corporation (required).

region
string

The region or state of the corporation (required).

postal_code
string

The postal code or zipcode of the corporation (required).

business_number
string

The taxpayer identification number of the corporation (required).

phone_number
string

The phone number o of the corporation (required).

income
number <float>

The income of the individual investor profile

net_worth
number <float>

The net worth of the individual investor profile

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the individual investor profile

signing_officer_first_name
string

The first name of the signing officer (required).

signing_officer_last_name
string

The last name of the signing officer (required).

signing_officer_title
string

The title of the signing officer.

signing_officer_suffix
string

The suffix of the signing officer.

signing_officer_country
Country

The country of the signing officer (required).

signing_officer_street_address
string

The street address of the signing officer (required).

signing_officer_unit2
string

The street address line 2 of the signing officer.

signing_officer_city
string

The city of the signing officer (required).

signing_officer_region
string

The region or state of the signing officer (required).

signing_officer_postal_code
string

The postal code or zipcode of the signing officer (required).

signing_officer_date_of_birth
string

The date of birth of the signing officer (required).

signing_officer_taxpayer_id
string

The taxpayer identification number of the signing officer (required).

signing_officer_phone_number
string

The phone number of the signing officer (required).

Array of objects

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "entity_owned_by_accredited_investors",
  • "ca_accredited_investor": "a",
  • "name": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "business_number": "string",
  • "phone_number": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "signing_officer_first_name": "string",
  • "signing_officer_last_name": "string",
  • "signing_officer_title": "string",
  • "signing_officer_suffix": "string",
  • "signing_officer_country": null,
  • "signing_officer_street_address": "string",
  • "signing_officer_unit2": "string",
  • "signing_officer_city": "string",
  • "signing_officer_region": "string",
  • "signing_officer_postal_code": "string",
  • "signing_officer_date_of_birth": "string",
  • "signing_officer_taxpayer_id": "string",
  • "signing_officer_phone_number": "string",
  • "beneficial_owners": [
    ]
}

Response samples

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

Patch a corporation investor profile

Patch corporation investor profile

Authorizations:
oauth
path Parameters
investor_profile_id
required
integer <int32>
Request Body schema: application/json
required
email
string

The email associated with the profile to be updated.

us_accredited_category
string
Enum: "entity_owned_by_accredited_investors" "assets_other" "assets_family_office" "assets_benefit_plan" "assets_state_plan" "assets_501_c_3" "assets_corporation" "broker_or_dealer" "bank_3_a_2" "business_development_company" "small_business" "private_business_development_company" "investment_company" "rural_business_investment_company" "insurance_company" "family_client" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "a" "b" "c" "d" "f" "g" "h" "i" "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "x"

The Canadian accredited investor information.

name
string

Corporation name.

country
Country

Corporation country.

street_address
string

Corporation street address.

unit2
string

Corporation street address line 2.

city
string

Corporation city.

region
string

Corporation region or state.

postal_code
string

Corporation postal code or zipcode.

business_number
string

The business number of the investor profile.

phone_number
string

The phone number of the investor profile.

income
number <float>

The income of the individual investor profile

net_worth
number <float>

The net worth of the individual investor profile

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the individual investor profile

signing_officer_first_name
string

Signing officer first name.

signing_officer_last_name
string

Signing officer last name.

signing_officer_title
string

Signing officer title.

signing_officer_suffix
string

Signing officer suffix.

signing_officer_country
Country

Signing officer country.

signing_officer_street_address
string

Signing officer street address.

signing_officer_unit2
string

Signing officer street address line 2.

signing_officer_city
string

Signing officer city.

signing_officer_region
string

Signing officer region or state.

signing_officer_postal_code
string

Signing officer postal code or zipcode.

signing_officer_date_of_birth
string

Signing officer date of birth.

signing_officer_taxpayer_id
string

The taxpayer identification number of the investor profile.

signing_officer_phone_number
string

The phone number of the signing officer (required).

Array of objects

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "entity_owned_by_accredited_investors",
  • "ca_accredited_investor": "a",
  • "name": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "business_number": "string",
  • "phone_number": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "signing_officer_first_name": "string",
  • "signing_officer_last_name": "string",
  • "signing_officer_title": "string",
  • "signing_officer_suffix": "string",
  • "signing_officer_country": null,
  • "signing_officer_street_address": "string",
  • "signing_officer_unit2": "string",
  • "signing_officer_city": "string",
  • "signing_officer_region": "string",
  • "signing_officer_postal_code": "string",
  • "signing_officer_date_of_birth": "string",
  • "signing_officer_taxpayer_id": "string",
  • "signing_officer_phone_number": "string",
  • "beneficial_owners": [
    ]
}

Response samples

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

Create new joint investor profile

Create new joint investor profile associated to the user by email.

Authorizations:
oauth
Request Body schema: application/json
required
email
required
string

User email which is associated with investor profile.

us_accredited_category
string
Enum: "income_individual" "assets_individual" "director" "knowledgable_employee" "broker_or_dealer" "investment_advisor_registered" "investment_advisor_relying" "designated_accredited_investor" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "d" "e" "e_1" "j" "j_1" "k_individual" "k_spouse" "l" "q" "v" "x"

The Canadian accredited investor information.

joint_type
string
Enum: "joint_tenant" "tenants_in_common" "community_property"

The types of joint investor.

first_name
string

The first name of the primary holder (required).

last_name
string

The last name of the primary holder (required).

suffix
string

The suffix of the primary holder.

country
Country

The country the primary holder (required).

street_address
string

The street address of the primary holder (required).

unit2
string

The street address line 2 of the primary holder.

city
string

The city of the primary holder (required).

region
string

The region or State of the primary holder (required).

postal_code
string

The postal code or zipcode of the primary holder (required).

date_of_birth
string

The date of birth of the primary holder (required).

taxpayer_id
string

The taxpayer identification number of the primary holder (required).

phone_number
string

The phone number of the primary holder (required).

income
number <float>

The income of the primary holder.

net_worth
number <float>

The net worth of the primary holder.

reg_cf_prior_offerings_amount
number <float>

The prior offerings amount of the primary holder.

joint_holder_first_name
string

The first name of the joint holder (required).

joint_holder_last_name
string

The last name of the joint holder (required).

joint_holder_suffix
string

The suffix of the joint holder.

joint_holder_country
Country

The country of the joint holder (required).

joint_holder_street_address
string

The street address of the joint holder (required).

joint_holder_unit2
string

The street address line 2 of the joint holder.

joint_holder_city
string

The city of the joint holder (required).

joint_holder_region
string

The region or state of the joint holder (required).

joint_holder_postal_code
string

The postal code or zipcode of the joint holder (required).

joint_holder_date_of_birth
string

The date of birth of the joint holder (required).

joint_holder_taxpayer_id
string

The taxpayer identification number of the joint holder (required).

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "income_individual",
  • "ca_accredited_investor": "d",
  • "joint_type": "joint_tenant",
  • "first_name": "string",
  • "last_name": "string",
  • "suffix": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "date_of_birth": "string",
  • "taxpayer_id": "string",
  • "phone_number": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "joint_holder_first_name": "string",
  • "joint_holder_last_name": "string",
  • "joint_holder_suffix": "string",
  • "joint_holder_country": null,
  • "joint_holder_street_address": "string",
  • "joint_holder_unit2": "string",
  • "joint_holder_city": "string",
  • "joint_holder_region": "string",
  • "joint_holder_postal_code": "string",
  • "joint_holder_date_of_birth": "string",
  • "joint_holder_taxpayer_id": "string"
}

Response samples

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

Patch a joint investor profile

Patch joint investor profile

Authorizations:
oauth
path Parameters
investor_profile_id
required
integer <int32>
Request Body schema: application/json
required
email
string

The email associated with the profile to be updated.

us_accredited_category
string
Enum: "income_individual" "assets_individual" "director" "knowledgable_employee" "broker_or_dealer" "investment_advisor_registered" "investment_advisor_relying" "designated_accredited_investor" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "d" "e" "e_1" "j" "j_1" "k_individual" "k_spouse" "l" "q" "v" "x"

The Canadian accredited investor information.

joint_type
string
Enum: "joint_tenant" "tenants_in_common" "community_property"

The kind of joint investor.

first_name
string

The first name of the investor profile.

last_name
string

The last name of the investor profile.

suffix
string

The suffix of the investor profile.

country
Country

The country the investor profile.

street_address
string

The street address of the investor profile.

unit2
string

The street address line 2 of the investor profile.

city
string

The city of the investor profile.

region
string

The region or State of the investor profile.

postal_code
string

The postal code or zipcode of the investor profile.

date_of_birth
string

The date of birth of the investor profile.

taxpayer_id
string

The taxpayer identification number of the investor profile.

phone_number
string

The phone number of the investor profile.

income
number <float>

The income of the investor profile.

net_worth
number <float>

The net worth of the investor profile.

reg_cf_prior_offerings_amount
number <float>

The prior offerings amount of the investor profile.

joint_holder_first_name
string

The joint holder first name of the investor profile.

joint_holder_last_name
string

The joint holder last name of the investor profile.

joint_holder_suffix
string

The suffix of the individual investor profile.

joint_holder_country
Country

The joint holder country of the investor profile.

joint_holder_street_address
string

The joint holder street address of the investor profile.

joint_holder_unit2
string

The Joint holder street address line 2 of the investor profile.

joint_holder_city
string

The Joint holder city of the investor profile.

joint_holder_region
string

The joint holder region or state of the investor profile.

joint_holder_postal_code
string

The joint holder postal code or zipcode of the investor profile.

joint_holder_date_of_birth
string

The joint holder date of birth of the investor profile.

joint_holder_taxpayer_id
string

The joint holder taxpayer identification number of the investor profile.

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "income_individual",
  • "ca_accredited_investor": "d",
  • "joint_type": "joint_tenant",
  • "first_name": "string",
  • "last_name": "string",
  • "suffix": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "date_of_birth": "string",
  • "taxpayer_id": "string",
  • "phone_number": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "joint_holder_first_name": "string",
  • "joint_holder_last_name": "string",
  • "joint_holder_suffix": "string",
  • "joint_holder_country": null,
  • "joint_holder_street_address": "string",
  • "joint_holder_unit2": "string",
  • "joint_holder_city": "string",
  • "joint_holder_region": "string",
  • "joint_holder_postal_code": "string",
  • "joint_holder_date_of_birth": "string",
  • "joint_holder_taxpayer_id": "string"
}

Response samples

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

Create new individual investor profile

Create new individual investor profile associated to the user by email.

Authorizations:
oauth
Request Body schema: application/json
required
email
required
string

User email which is associated with individual investor profile.

us_accredited_category
string
Enum: "income_individual" "assets_individual" "director" "knowledgable_employee" "broker_or_dealer" "investment_advisor_registered" "investment_advisor_relying" "designated_accredited_investor" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "d" "e" "e_1" "j" "j_1" "k_individual" "k_spouse" "l" "q" "v" "x"

The Canadian accredited investor information.

first_name
string

The first name of the individual investor profile (required).

last_name
string

The last name of the individual investor profile (required)

suffix
string

The suffix of the individual investor profile

date_of_birth
string

The date of birth of the investor profile (required)

taxpayer_id
string

The taxpayer identification number of the investor profile (required)

phone_number
string

The phone number of the investor profile (required)

country
Country

The country of the individual investor profile (required)

street_address
string

The street address of the individual investor profile (required)

unit2
string

The street address line 2 of the individual investor profile

city
string

The city of the individual investor profile (required)

region
string

The region or state of the individual investor profile (required)

postal_code
string

The postal code or zipcode of the individual investor profile (required)

income
number <float>

The income of the individual investor profile

net_worth
number <float>

The net worth of the individual investor profile

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the individual investor profile

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "income_individual",
  • "ca_accredited_investor": "d",
  • "first_name": "string",
  • "last_name": "string",
  • "suffix": "string",
  • "date_of_birth": "string",
  • "taxpayer_id": "string",
  • "phone_number": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1
}

Response samples

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

Patch an individual investor profile.

Patch individual investor profile.

Authorizations:
oauth
path Parameters
investor_profile_id
required
integer <int32>
Request Body schema: application/json
required
email
string

The email associated with the profile to be updated.

us_accredited_category
string
Enum: "income_individual" "assets_individual" "director" "knowledgable_employee" "broker_or_dealer" "investment_advisor_registered" "investment_advisor_relying" "designated_accredited_investor" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "d" "e" "e_1" "j" "j_1" "k_individual" "k_spouse" "l" "q" "v" "x"

The Canadian accredited investor information.

first_name
string

The first name of the individual investor profile.

last_name
string

The last name of the individual investor profile.

suffix
string

The suffix of the individual investor profile.

date_of_birth
string

The date of birth of the investor profile.

taxpayer_id
string

The taxpayer identification number of the investor profile.

phone_number
string

The phone number of the investor profile.

country
Country

The country of the individual investor profile.

street_address
string

The street address of the individual investor profile.

unit2
string

The street address line 2 of the individual investor profile.

city
string

The city of the individual investor profile.

region
string

The region or state of the individual investor profile.

postal_code
string

The postal code or zipcode of the individual investor profile.

income
number <float>

The income of the individual investor profile

net_worth
number <float>

The net worth of the individual investor profile

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the individual investor profile

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "income_individual",
  • "ca_accredited_investor": "d",
  • "first_name": "string",
  • "last_name": "string",
  • "suffix": "string",
  • "date_of_birth": "string",
  • "taxpayer_id": "string",
  • "phone_number": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1
}

Response samples

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

Create new trust investor profile.

Create new trust investor profile associated to the user by email.

Authorizations:
oauth
Request Body schema: application/json
required
email
required
string

User email which is associated with investor profile (required).

us_accredited_category
string
Enum: "entity_owned_by_accredited_investors" "broker_or_dealer" "assets_trust" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "p" "w"

The Canadian accredited investor information.

name
string

The name of the trust (required).

date
string

The creation date of the trust (required).

country
Country

The country of the trust (required).

street_address
string

Trust street address of the trust (required).

unit2
string

The street address line 2 of the trust.

city
string

The city of the trust (required).

region
string

The region or state of the trust (required).

postal_code
string

The postal code or zipcode of the trust (required).

phone_number
string

The phone number of the trust (required).

income
number <float>

The income of the trust.

net_worth
number <float>

The net worth of the trust.

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the trust.

Array of objects

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "entity_owned_by_accredited_investors",
  • "ca_accredited_investor": "p",
  • "name": "string",
  • "date": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "phone_number": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "trustees": [
    ]
}

Response samples

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

Patch a trust investor profile

Patch trust investor profile

Authorizations:
oauth
path Parameters
investor_profile_id
required
integer <int32>
Request Body schema: application/json
required
email
string

The email associated with the profile to be updated.

us_accredited_category
string
Enum: "entity_owned_by_accredited_investors" "broker_or_dealer" "assets_trust" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "p" "w"

The Canadian accredited investor information.

name
string

The name of the trust.

date
string

The creation date of the trust.

phone_number
string

The phone number of the trust.

country
Country

Trust country.

street_address
string

Trust street address.

unit2
string

Trust street address line 2.

city
string

Trust city.

region
string

Trust region or state.

postal_code
string

Trust postal code or zipcode.

income
number <float>

The income of the Trust.

net_worth
number <float>

The net worth of the Trust.

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the Trust.

Array of objects

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "entity_owned_by_accredited_investors",
  • "ca_accredited_investor": "p",
  • "name": "string",
  • "date": "string",
  • "phone_number": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "trustees": [
    ]
}

Response samples

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

Create new managed investor profile.

Create new managed investor profile associated to the user by email.

Authorizations:
oauth
Request Body schema: application/json
required
email
required
string

User email which is associated with investor profile (required).

us_accredited_category
string
Enum: "income_individual" "assets_individual" "director" "knowledgable_employee" "broker_or_dealer" "investment_advisor_registered" "investment_advisor_relying" "designated_accredited_investor" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "d" "e" "e_1" "j" "j_1" "k_individual" "k_spouse" "l" "q" "v" "x"

The Canadian accredited investor information.

name
string

The name of the provider (required).

provider_email
string

The email of the provider (required).

country
Country

The country of the provider (required).

street_address
string

The street address of the provider (required).

unit2
string

The street address line 2 of the provider.

city
string

The city of the provider (required).

region
string

The region or state of the provider (required).

postal_code
string

The postal code or zipcode of the provider (required).

taxpayer_id
string

The taxpayer identification number of the provider (required).

confirmation
boolean

Confirms that the provider is able to custody these securities and release respective funds in order to complete the purchase (required).

income
number <float>

The income of the managed investor profile

net_worth
number <float>

The net worth of the managed investor profile

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the managed investor profile

beneficiary_account_number
string

The account number of the beneficiary (required).

beneficiary_first_name
string

The first name of the beneficiary (required).

beneficiary_last_name
string

The last name of the beneficiary (required).

beneficiary_suffix
string

The suffix of the beneficiary.

beneficiary_country
Country

The country of the beneficiary (required).

beneficiary_street_address
string

The street address of the beneficiary (required).

beneficiary_unit2
string

The street address line 2 of the beneficiary.

beneficiary_city
string

The city of the beneficiary (required).

beneficiary_region
string

The region or state of the beneficiary (required).

beneficiary_postal_code
string

The postal code or zipcode of the beneficiary (required).

beneficiary_date_of_birth
string

The date of birth of the beneficiary (required).

beneficiary_taxpayer_id
string

The taxpayer identification number of the beneficiary (required).

beneficiary_phone_number
string

The phone number of the beneficiary (required).

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "income_individual",
  • "ca_accredited_investor": "d",
  • "name": "string",
  • "provider_email": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "taxpayer_id": "string",
  • "confirmation": true,
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "beneficiary_account_number": "string",
  • "beneficiary_first_name": "string",
  • "beneficiary_last_name": "string",
  • "beneficiary_suffix": "string",
  • "beneficiary_country": null,
  • "beneficiary_street_address": "string",
  • "beneficiary_unit2": "string",
  • "beneficiary_city": "string",
  • "beneficiary_region": "string",
  • "beneficiary_postal_code": "string",
  • "beneficiary_date_of_birth": "string",
  • "beneficiary_taxpayer_id": "string",
  • "beneficiary_phone_number": "string"
}

Response samples

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

Patch managed investor profile.

Patch managed investor profile associated to the profile id.

Authorizations:
oauth
path Parameters
investor_profile_id
required
integer <int32>
Request Body schema: application/json
required
email
required
string

User email which is associated with investor profile (required).

us_accredited_category
string
Enum: "income_individual" "assets_individual" "director" "knowledgable_employee" "broker_or_dealer" "investment_advisor_registered" "investment_advisor_relying" "designated_accredited_investor" "not_accredited"

The United States accredited investor information.

ca_accredited_investor
string
Enum: "d" "e" "e_1" "j" "j_1" "k_individual" "k_spouse" "l" "q" "v" "x"

The Canadian accredited investor information.

name
string

The name of the provider.

provider_email
string

The email of the provider.

country
Country

The country of the provider.

street_address
string

The street address of the provider.

unit2
string

The street address line 2 of the provider.

city
string

The city of the provider.

region
string

The region or state of the provider.

postal_code
string

The postal code or zipcode of the provider.

taxpayer_id
string

The taxpayer identification number of the provider.

confirmation
boolean

Confirms that the provider is able to custody these securities and release respective funds in order to complete the purchase.

income
number <float>

The income of the managed investor profile.

net_worth
number <float>

The net worth of the managed investor profile

reg_cf_prior_offerings_amount
number <float>

The prior offering amount of the managed investor profile.

beneficiary_account_number
string

The account number of the beneficiary.

beneficiary_first_name
string

The first name of the beneficiary.

beneficiary_last_name
string

The last name of the beneficiary.

beneficiary_suffix
string

The suffix of the beneficiary.

beneficiary_country
Country

The country of the beneficiary.

beneficiary_street_address
string

The street address of the beneficiary.

beneficiary_unit2
string

The street address line 2 of the beneficiary.

beneficiary_city
string

The city of the beneficiary.

beneficiary_region
string

The region or state of the beneficiary.

beneficiary_postal_code
string

The postal code or zipcode of the beneficiary.

beneficiary_date_of_birth
string

The date of birth of the beneficiary.

beneficiary_taxpayer_id
string

The taxpayer identification number of the beneficiary.

beneficiary_phone_number
string

The phone number of the beneficiary.

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "us_accredited_category": "income_individual",
  • "ca_accredited_investor": "d",
  • "name": "string",
  • "provider_email": "string",
  • "country": null,
  • "street_address": "string",
  • "unit2": "string",
  • "city": "string",
  • "region": "string",
  • "postal_code": "string",
  • "taxpayer_id": "string",
  • "confirmation": true,
  • "income": 0.1,
  • "net_worth": 0.1,
  • "reg_cf_prior_offerings_amount": 0.1,
  • "beneficiary_account_number": "string",
  • "beneficiary_first_name": "string",
  • "beneficiary_last_name": "string",
  • "beneficiary_suffix": "string",
  • "beneficiary_country": null,
  • "beneficiary_street_address": "string",
  • "beneficiary_unit2": "string",
  • "beneficiary_city": "string",
  • "beneficiary_region": "string",
  • "beneficiary_postal_code": "string",
  • "beneficiary_date_of_birth": "string",
  • "beneficiary_taxpayer_id": "string",
  • "beneficiary_phone_number": "string"
}

Response samples

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

Company

Access to your companies

Get list of all Companies accessible by the user

Get user accessible companies

Authorizations:
oauth
query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "type": 0,
  • "name": "string",
  • "description": "string",
  • "reply_email": "string",
  • "company_url": "string",
  • "addresses": {
    },
  • "portals": {
    },
  • "primary_color": "string"
}

Creates an email template

Create new email template

Authorizations:
oauth
path Parameters
id
required
integer <int32>
Request Body schema: application/x-www-form-urlencoded
required
name
required
string

The name of the email template

json_content
required
string

The json content of the email template

html_content
required
string

The HTML content markup

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "jsonContent": "string",
  • "companyId": 0,
  • "thumbnailImage": "string"
}

Get a list of email events for a company communication

Gets a list of email events for a specific company communication.

Authorizations:
oauth
path Parameters
company_communication_id
required
integer <int32>

The id of the company communication.

Responses

Request samples

Response samples

Content type
application/json
{
  • "rows": {
    },
  • "rowsCount": 0
}

Create new company

Creates a new company.

Authorizations:
oauth
Request Body schema: application/x-www-form-urlencoded
required
name
required
string

The company name

country
required
string

The country of the company

street
required
string

The street of the company

line_2
string

The second line of the address of the company

city
required
string

The city of the company

state
required
string

The state of the company

postal_code
required
string

The postal code/zip code of the company

primary_color
string

The primary color of the company

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "type": 0,
  • "name": "string",
  • "description": "string",
  • "reply_email": "string",
  • "company_url": "string",
  • "addresses": {
    },
  • "portals": {
    },
  • "primary_color": "string"
}

Get list of Companies

Get companies

Authorizations:
oauth
query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "type": 0,
  • "name": "string",
  • "description": "string",
  • "reply_email": "string",
  • "company_url": "string",
  • "addresses": {
    },
  • "portals": {
    },
  • "primary_color": "string"
}

Get a Company

Get a Company.

Authorizations:
oauth
path Parameters
id
required
integer <int32>

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "type": 0,
  • "name": "string",
  • "description": "string",
  • "reply_email": "string",
  • "company_url": "string",
  • "addresses": {
    },
  • "portals": {
    },
  • "primary_color": "string"
}

Get shareholder ledger by company

Get shareholder ledger by company.

Authorizations:
oauth
path Parameters
id
required
integer <int32>

Responses

Request samples

Response samples

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

Return dividends

Return dividends associated with a shareholder

Authorizations:
oauth
path Parameters
company_id
required
integer <int32>

Responses

Request samples

Response samples

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

Return bulk uploads

Return bulk uploads

Authorizations:
oauth
path Parameters
id
required
integer <int32>
query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

Responses

Request samples

Response samples

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

Create bulk upload record

Create bulk upload record

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The company id

Request Body schema: application/x-www-form-urlencoded
required
file_identifier
required
string

The file identifier

document_type
required
string

The document type

upload_name
required
string

The bulk upload name

send_notification
required
boolean

Send notification to the user

notification_message
required
string

Notification message

json_notification_message
required
json

JSON notification message

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "company_id": 0,
  • "file_identifier": "string",
  • "document_type": "drs_statement",
  • "upload_name": "string",
  • "files_count": 0,
  • "errors_count": 0,
  • "success_count": 0,
  • "status": "string",
  • "created_at": "string",
  • "updated_at": "string"
}

Return a given bulk upload by id

Return a given bulk upload by id

Authorizations:
oauth
path Parameters
id
required
integer <int32>
bulk_upload_id
required
integer <int32>
query Parameters
page
integer <int32>
Default: 1

Page offset to fetch.

per_page
integer <int32>
Default: 25

Number of results to return per page.

offset
integer <int32>
Default: 0

Pad a number of results.

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "company_id": 0,
  • "file_identifier": "string",
  • "document_type": "drs_statement",
  • "upload_name": "string",
  • "files_count": 0,
  • "errors_count": 0,
  • "success_count": 0,
  • "status": "string",
  • "created_at": "string",
  • "updated_at": "string"
}

Return bulk upload details grouped by status

Return bulk upload details grouped by status

Authorizations:
oauth
path Parameters
company_id
required
integer <int32>
bulk_upload_id
required
integer <int32>

Responses

Request samples

Response samples

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

Returns a full list of details with errors of the given bulk upload ordered by status desc and id asc

Returns a full list of details with errors of the given bulk upload

Authorizations:
oauth
path Parameters
company_id
required
integer <int32>
bulk_upload_id
required
integer <int32>

Responses

Request samples

Response samples

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

Create a BulkUploadDetail class record

Create a BulkUploadDetail class record

Authorizations:
oauth
path Parameters
bulk_upload_id
required
string

The Bulk upload ID from which detail is associated with

company_id
required
integer <int32>
Request Body schema: application/x-www-form-urlencoded
required
file_key
required
string

The file ID

file_name
required
string

The name of the file

status
integer <int32>

The status of the bulk upload detail

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "bulk_upload_id": 0,
  • "file_key": "string",
  • "file_name": "string",
  • "status": 0,
  • "readable_status": "string",
  • "created_at": "string",
  • "updated_at": "string"
}

Create a shareholder action

Create a shareholder action

Authorizations:
oauth
path Parameters
company_id
required
integer <int32>

The company id

shareholder_id
required
integer <int32>

The shareholder id

Request Body schema: application/x-www-form-urlencoded
required
request_type
required
string

The request type of the shareholder action

description
required
string

The description of the shareholder action

request_documents
Array of file

The document associated with the shareholder action

Responses

Request samples

Response samples

Content type
application/json
{
  • "success": true,
  • "message": "string"
}

Send portal invite to shareholder

Send portal invite to shareholder.

Authorizations:
oauth
path Parameters
id
required
integer <int32>
shareholder_id
required
integer <int32>
Request Body schema: application/x-www-form-urlencoded
subject
string

The custom subject of the invite email

email_content
string

The custom email content of the invite email

Responses

Request samples

Get a email template

Get a email template

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The company id

template_id
required
integer <int32>

The email template id

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "jsonContent": "string",
  • "companyId": 0,
  • "thumbnailImage": "string"
}

Get list of email template

Get list of email template

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The company id

query Parameters
page
integer <int32>
Default: 0

The page number

per_page
integer <int32>
Default: 10

The number of items per page

public_template
boolean
Default: false

The public template

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "jsonContent": "string",
  • "companyId": 0,
  • "thumbnailImage": "string"
}

Get bulk uploads records

Get members bulk uploads records

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The company id

Responses

Request samples

Response samples

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

Create bulk upload record

Create members bulk upload record

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The company id

Request Body schema: application/x-www-form-urlencoded
required
csv_file
required
string <binary>

The file csv

send_notification
boolean
Default: false

Send notification to the user

offsite_shareholder
boolean
Default: false

Offside shareholder

email_subject
string

Email subject

email_content
string

Email content

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "companyId": 0,
  • "status": "string",
  • "totalCount": 0,
  • "processedCount": 0,
  • "errorCount": 0,
  • "sendNotification": "string",
  • "offsiteShareholder": "string",
  • "emailSubject": "string",
  • "emailContent": "string",
  • "errorDetails": "string",
  • "createdAt": "string",
  • "updatedAt": "string"
}

Get bulk upload record

Get members bulk upload record

Authorizations:
oauth
path Parameters
id
required
integer <int32>

The company id

id_members_bulk_upload
required
integer <int32>

The bulk upload id

Responses

Request samples

Response samples

Content type
application/json
{
  • "id": 0,
  • "companyId": 0,
  • "status": "string",
  • "totalCount": 0,
  • "processedCount": 0,
  • "errorCount": 0,
  • "sendNotification": "string",
  • "offsiteShareholder": "string",
  • "emailSubject": "string",
  • "emailContent": "string",
  • "errorDetails": "string",
  • "createdAt": "string",
  • "updatedAt": "string"
}

Country

Access to your companies

Returns a list of all valid countries and it states

Get countries and states

Authorizations:
oauth

Responses

Response samples

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

Deal

id
integer <int32>

The deal's unique id.

title
string

The deal title.

state
string
Enum: "draft" "close" "active" "amending" "ending"

The deal state.

currency
string

The primary currency associated with the deal.

security_type
string

The deal security type.

price_per_security
number <float>

The deal price per security.

minimum_investment
integer <int32>

The minimum investment amount, in cents.

maximum_investment
integer <int32>

The maximum investment amount, in cents.

object (V1_Entities_DealIssuer)
object (V1_Entities_DealEnterprise)
deal_type
string
Enum: "other_or_unknown" "dm_plus" "dm_basic" "mini_deal" "reg_cf" "reg_a" "warrants" "offering_memorandum" "reg_d_506_c" "reg_d_506_b" "reg_s"

The deal type.

object (V1_Entities_DealInvestorMetrics)
object (V1_Entities_DealFundingMetrics)
{
  • "id": 0,
  • "title": "string",
  • "state": "draft",
  • "currency": "string",
  • "security_type": "string",
  • "price_per_security": 0.1,
  • "minimum_investment": 0,
  • "maximum_investment": 0,
  • "issuer": {
    },
  • "enterprise": {
    },
  • "deal_type": "other_or_unknown",
  • "investors": {
    },
  • "funding": {
    }
}

Investor

id
integer <int32>

Investor id.

object (V1_Entities_InvestorUser)
created_at
string <date-time>

The creation time.

updated_at
string <date-time>

The last update time.

name
string

The full name of the investor.

allocation_unit
string
Enum: "securities" "amount"

The allocation unit.

state
string
Enum: "draft" "invited" "cosigning" "signed" "waiting" "accepted" "inactive" "processing_countersign"

The state.

funding_state
string
Enum: "unfunded" "underfunded" "funded" "overfunded"

The funding state.

funds_pending
boolean

True if any funds are pending; false otherwise.

beneficial_address
string

The address.

phone_number
string

The beneficial phone number associated with the investor. If there is no phone number, this returns the phone number associated with the user profile.

tags
Array[String]

An array of associated tags.

investor_currency
string

The investor currency.

number_of_securities
integer <int32>

The number of securities.

investment_value
number <float>

The current investment value.

allocated_amount
number <float>

The amount allocated.

funds_value
number <float>

The current amount that has been funded.

access_link
string

The access link for the investor. This is the access link for the specific investment, not the user. If the same user has multiple investments, each one will have a different access link. Please note that this access link expires every hour. In order to redirect the investor into their authentication screen, use the https://app.dealmaker.tech/deals/{{deal_id}}/investors/{{investor_id}}/otp_access url.

subscription_id
integer <int32>

The investor subscription id.

object (V1_Entities_SubscriptionAgreement)
object (V1_Entities_Attachment)
background_check_tags
Array[String]
Enum: "flagged" "document_upload_pending" "document_review_pending" "approved" "pending"

An array of background check tags

object (V1_Entities_BackgroundCheckSearch)
verification_status
string
Enum: "pending" "approved" "rejected" "new_documents_requested"

The current 506c verification state.

warrant_expiry_date
string <date>

The warrant expiry date.

warrant_certificate_number
integer <int32>

The warrant certificate number.

ranking_score
number <float>

A value [0, 1] that represents the propensity for the investor to complete payment for the investment. A larger value indicates a higher likelihood of payment, as predicted by DealMaker’s machine learning algorithm. This field will only populate if DealMaker Compass is enabled for a deal and the investor funds_state value is not funded or overfunded

investor_profile
string
investor_profile_id
integer <int32>

The investor profile id.

checkout_state
string
Enum: "pre_checkout" "investment_amount" "contact_information" "investor_confirmation" "terms_conditions" "payment" "checkout_complete" "resubmit_agreement" "legacy_checkout" "document_upload"

Current state on the checkout page.

legacy_flow_link
string

The legacy link for the investor. If the investor is already on the legacy flow, this link will be null.

{
  • "id": 0,
  • "user": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "allocation_unit": "securities",
  • "state": "draft",
  • "funding_state": "unfunded",
  • "funds_pending": true,
  • "beneficial_address": "string",
  • "phone_number": "string",
  • "tags": null,
  • "investor_currency": "string",
  • "number_of_securities": 0,
  • "investment_value": 0.1,
  • "allocated_amount": 0.1,
  • "funds_value": 0.1,
  • "access_link": "string",
  • "subscription_id": 0,
  • "subscription_agreement": {
    },
  • "attachments": {
    },
  • "background_check_tags": "flagged",
  • "background_check_searches": {
    },
  • "verification_status": "pending",
  • "warrant_expiry_date": "2019-08-24",
  • "warrant_certificate_number": 0,
  • "ranking_score": 0.1,
  • "investor_profile": "string",
  • "investor_profile_id": 0,
  • "checkout_state": "pre_checkout",
  • "legacy_flow_link": "string"
}

Investor Profile

id
integer <int32>

Investor Profile id

user_id
integer <int32>

User id

email
string

User email

type
string
Enum: "individual" "joint" "corporation" "trust" "managed"

Investor Profile type

us_accredited_category
string

The United States accredited investor information

ca_accredited_investor
string

The Canadian accredited investor information

complete
boolean

To check if the profile is complete or not

owner_type
string

Type of the investor profile owner

object (V1_Entities_InvestorProfile_Owner)
object (V1_Entities_InvestorProfile_Fields_PrimaryHolder)
{
  • "id": 0,
  • "user_id": 0,
  • "email": "string",
  • "type": "individual",
  • "us_accredited_category": "string",
  • "ca_accredited_investor": "string",
  • "complete": true,
  • "owner_type": "string",
  • "owner": {
    },
  • "account_holder": {
    }
}

Company

id
integer <int32>

The unique id.

type
integer <int32>

The entity company.

name
string

The name of the company.

description
string

The description of the company.

reply_email
string

The reply email of the company.

company_url
string

The url of the company.

object (V1_Entities_Addresses)
object (V1_Entities_CompanyDeals)
primary_color
string

The primary color of the company. This should be a hex color code, with the leading "#".

{
  • "id": 0,
  • "type": 0,
  • "name": "string",
  • "description": "string",
  • "reply_email": "string",
  • "company_url": "string",
  • "addresses": {
    },
  • "portals": {
    },
  • "primary_color": "string"
}

Address

street
string

The street.

line_2
string

The second line.

city
string

The city.

state
string

The state/province.

postal_code
string

The postal code/zip code.

country
string

The country.

{
  • "street": "string",
  • "line_2": "string",
  • "city": "string",
  • "state": "string",
  • "postal_code": "string",
  • "country": "string"
}

Country

country
string

The name of the country.

country_code
string

The country code.

object (V1_Entities_State)
{
  • "country": "string",
  • "country_code": "string",
  • "states": {
    }
}