NAV

Nucleus  Proton  Electron

curl

Introduction

Sandbox Base URL

https://sandbox.hydrogenplatform.com/electron/v1

Production Base URL

https://api.hydrogenplatform.com/electron/v1

The Hydrogen Electron API is designed to compliment the core Nucleus API within the Hydrogen Atom platform. Electron provides additional functionality to help you manage and grow your business such as frameworks for marketing and support.

Electron is built on REST principles, with resource oriented URLs and HTTP response codes. All API responses are returned in JSON format.

Authentication

API Authentication

After successful registration of your application, you will be provided a client_id and client_secret which will be used to identify your application when calling any Hydrogen API.

We require all API calls to be made over HTTPS connections.

OAuth2 Authorization

Example Request

curl -X POST https://api.hydrogenplatform.com/authorization/v1/oauth/token?grant_type=client_credentials \
  -H "Authorization: Basic aHlkcm9nZW5faWQ6aHlkcm9nZW5fc2VjcmV0"

Example Response

{
  "access_token": "ac6b8213-2a77-4ecc-89fd-68c9f2aff256",
  "token_type": "bearer",
  "expires_in": 86400,
  "scope": "all",
  "apps": "nucleus,proton,electron"
}

All subsequent API calls will then be made like the following example:

curl -X GET https://api.hydrogenplatform.com/electron/v1/campaign \
-H "Authorization: Bearer ac6b8213-2a77-4ecc-89fd-68c9f2aff256"

Hydrogen uses OAuth 2.0 to facilitate authorization on the API, an industry standard framework for authorization. The client credentials flow is used by your application to obtain permission to act on its own behalf. A call will be made to our OAuth server to exchange your client_id, client_secret, and grant_type=client_credentials for an access_token, which can then be used to make calls to Hydrogen on behalf of the application.


REQUEST ARGUMENTS

Parameter Type Required Description
client_id string required Application id for identification, which will be given to you when you are onboarded.
client_secret string required Application secret, which will be given to you only once when you are onboarded. Please keep this in a safe place.
grant_type string required Must be set to client_credentials.


RESPONSE

Field Description
access_token Token that will be used for all subsequent API calls
expires_in When the token expires in seconds and will need to be called again. Default is 86400 or 24 hours.
token_type Always will be bearer
scope The scope your user has been granted in the application
apps APIs to which the user has access. Possible values include nucleus, proton, electron, ion

Token Refresh

An access_token will need to be refreshed to continue being authorized for the app. Access tokens are short lived: 24 hours. The Client Credentials grant type doesn’t return a refresh token. When your access_token expires, the app has to simply request a new token which will invalidate the previous token. The token can be deserialized to determine how much longer it is valid.

Fields

IDS

All Object IDs are represented in universally unique identifier (UUID) format. A UUID is a string of 32 alphanumeric characters in the format 8-4-4-4-12. An example would be efa289b2-3565-42e6-850b-8dad25727e99.

DATES

All dates are represented in ISO 8601 format YYYY-MM-DD. An example would be 2018-01-10.

TIMESTAMPS

All object responses will include a create_date and update_date in timestamp format. All timestamps are represented in ISO 8601 format YYYY-MM-DDThh:mm:ssTZD. The “T” appears before the time element and the TZD before the time zone. An example would be 2018-01-10T16:00:30+01:00.

Errors

ERROR CODES

Code Description
400 Bad Request
401 Unauthorized. Occurs when you are using an invalid or expired access token.
403 Forbidden. The request was valid but you are not authorized to access the resource.
404 Not Found. Occurs when you are requesting a resource which doesn’t exist such as an incorrect URL, incorrect ID, or empty result.
429 Too Many Requests. Exceeded the rate limit set. Currently, there is no rate limit on the APIs.
500 Internal Server Error.
503 Service Unavailable. If the API is down for maintenance you will see this error.


STATUS CODES

Code Description
200 Ok. The request was successful.
204 No Content. The request was successful but there is no additional content to send in the response body. This will occur on a successful DELETE.

Versioning

The Electron API is currently in major version 1.0. All features which are not backwards compatible will be pushed as a major version release. Features that we consider to be backwards compatible include the following:

Changelog

Date Version Description
2018-11-30 v1.2.0 Added new optional fields to the document and FAQ entities

Pagination

Example Request

curl -X GET \ 
"https://api.hydrogenplatform.com/electron/v1/campaign?
page=0&size=10&order_by=id&ascending=true" \
-H "Authorization: Bearer ac6b8213-2a77-4ecc-89fd-68c9f2aff256"

Example Response

{
    "content": [
    ],
    "first": true,
    "last": false,
    "number_of_elements": 10,
    "total_elements": 29,
    "total_pages": 3,
    "size": 10,
    "number": 0,
    "sort": [
    {
      "direction": "ASC", 
      "property": "id",
      "ignore_case": false, 
      "null_handling": "NATIVE", 
      "ascending": true, 
      "descending": false 
     }
]

For API resources that return a large volume of results you may use pagination. When using these “List all” API methods, rather than returning a large list of results, the results will be paginated by default.

ARGUMENTS

Parameter Type Description
page
optional
integer Page number for the page that should be returned as the starting page. For example, if this is specified as 0, then the first page of the results will be the shown, if it is set as 3 then the third page of the results will be shown, and so on. The default is 0
size
optional
integer The number or records to be included per page. The default is 25 and max is 1000
order_by
optional
string The field in the response body to order the list by. For example, if ‘order by’ is specified as ID, then the response returned will be organized based on the value of their ID. No default is set.
ascending
optional
boolean If true, order the results in ascending order. For an alphabetical result this would be A-Z. If false, order the results in descending order. For an alphabetical result this would be Z-A. Default is false which would order by descending.

Filters

Example Requests

Filter the support ticket object to pull back all tickets for a specified account:

/support_ticket?filter=account_id==19ef73a9-8dd9-4df0-970e-c3f57c6f8d38

Filter all support tickets for a specified account, AND have the subject “billing”:

/support_ticket?filter=account_id==19ef73a9-8dd9-4df0-970e-c3f57c6f8d38;subject==billing

Every field within an object using the GET method can be filtered. Filtering is especially useful for calls that return many different fields.

A filter query may consist of one or more logical comparisons:

AND: ; or and
OR: , or or

Comparison operators may consist of the following:

Equal to: ==
Not equal to: !=
Less than: =lt= or <
Less than or equal to: =le= or <=
Greater than: =gt= or >
Greater than or equal to: =ge= or >=
In: =in=
Not in: =out=

The basic construct for a filtering query is as follow:

/<endpoint>?filter=<query>

To filter using a field within an embedded object, you would do the following:

/<endpoint>?filter=<object>.<field>

Metadata

Many objects support optional metadata fields, as denoted in the documentation. Metadata is intended to allow developers to extend our API and store custom information that is relevant to their business. Some examples may include:

Metadata may consist of any key-value pair you define such as “Age”:”35” or “City”:”New York”

All metadata that is entered will be returned in the JSON and may consist of up to 255 alphanumeric, string, integer, and boolean characters for each key and each value.

Endpoints

Document

The document repository can be used to create documents for firm-wide distribution, for a specific client, or for a specific account.

Field Type Description
id UUID The id of the document
doc_size integer Size of the document. Must be a whole number
doc_name string Name or title of the document
doc_type string Type of document such as “Compliance” or “Registration”
doc_file string File path to the document
url_path string URL path for the document such as http://domain.com/sample.pdf
client_id UUID In the case that the document relates to a specific Client, the id of the client
account_id UUID In the case that the document relates to a specific Account, the id of the account
metadata map Custom information associated with the document in the format key:value
See Metadata
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the document was created
update_date timestamp Timestamp for the date and time that the that the document was last updated

List all documents

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/document"

Example Response

{
    {
        "content": [
            {
                "id": "36f9cb66-88a9-4a1f-a305-338a0f0e0a57",
                "create_date": "2018-04-12T18:47:38.000+0000",
                "update_date": "2018-04-13T09:00:00.000+0000",
                "doc_size": 256,
                "doc_name": "deposit confirmation",
                "doc_type": "Confirmation screenshot",
                "doc_file": "C:\user\docs\confirmation",
                "metadata": {}
            },
            {
                "id": "c4ea6c00-d0b4-4d75-9e7a-e9dd04319586",
                "create_date": "2018-04-12T18:46:12.000+0000",
                "update_date": "2018-04-13T09:00:00.000+0000",
                "doc_size": 256,
                "doc_name": "deposit confirmation",
                "doc_type": "Confirmation screenshot",
                "doc_file": "C:\user\docs\confirmation",
                "metadata": {}
            },
            {
                "id": "849256af-6f8a-44bc-a69f-82639cb2f1a9",
                "create_date": "2018-04-10T21:06:22.000+0000",
                "update_date": "2018-04-10T21:06:22.000+0000",
                "doc_size": 144,
                "url_path": "http://domain.com/sample.pdf",
                "doc_name": "Compliance Letter",
                "doc_type": "Compliance",
                "metadata": {}
            }
        ],
        "total_pages": 1,
        "total_elements": 3,
        "last": true,
        "first": true,
        "sort": [
            {
                "direction": "DESC",
                "property": "updateDate",
                "ignore_case": false,
                "null_handling": "NATIVE",
                "descending": true,
                "ascending": false
            }
        ],
        "number_of_elements": 3,
        "size": 25,
        "number": 0
    }

Get the information for all documents defined for your firm. You can filter using a client_id or an account_id to view the documents for a specific client or account.

HTTP REQUEST

GET /document

Create a document

Example Request

curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
     -H "Content-Type: application/json" \
     -d '{
            "doc_size": 256,
            "doc_name": "deposit confirmation",
            "doc_type": "Confirmation screenshot",
            "url_path": "http://domain.com/sample.pdf",
            "doc_file": "C:\user\docs\confirmation"
          }' "https://api.hydrogenplatform.com/electron/v1/document"

Example Response

{
    "id": "c4ea6c00-d0b4-4d75-9e7a-e9dd04319586",
    "create_date": "2018-04-12T18:46:12.000+0000",
    "update_date": "2018-04-13T09:00:00.000+0000",
    "doc_size": 256,
    "doc_name": "deposit confirmation",
    "doc_type": "Confirmation screenshot",
    "url_path": "http://domain.com/sample.pdf",
    "doc_file": "C:\user\docs\confirmation",
       "metadata": {}
}

Create a document for your firm to store the document. You must either store the content of the document as a Base 64 string under doc_file or provide a URL for the document under url_path. The create_date will default to the current date. The endpoint returns a document_id used to identify and manage the document.

HTTP REQUEST

POST /document

ARGUMENTS

Parameter Type Required Description
doc_size integer required Size of the document. Must be a whole number
doc_name string optional Name or title of the document
doc_type string optional Type of document such as “Compliance” or “Registration”
doc_file string optional File path to the document
url_path string optional URL path for the document such as http://domain.com/sample.pdf
client_id UUID optional In the case that the document relates to a specific Client, the id of the client
account_id UUID optional In the case that the document relates to a specific Account, the id of the account
metadata map optional Custom information associated with the document in the format key:value
See Metadata
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a document

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/document/c4ea6c00-d0b4-4d75-9e7a-e9dd04319586"

Example Response

{
    "id": "c4ea6c00-d0b4-4d75-9e7a-e9dd04319586",
    "create_date": "2018-04-12T18:46:12.000+0000",
    "update_date": "2018-04-13T09:00:00.000+0000",
    "doc_size": 256,
    "doc_name": "deposit confirmation",
    "doc_type": "Confirmation screenshot",
    "url_path": "http://domain.com/sample.pdf",
    "doc_file": "C:\user\docs\confirmation",
        "metadata": {}
}

Retrieve a document for your firm. The document_id must be provided. The endpoint returns the document_id and the details for the document specified.

HTTP REQUEST

GET /document/{document_id}

Update a document

Example Request

curl -X PUT -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
     -H "Content-Type: application/json" \
     -d '{
        "doc_size": 256,
        "doc_name": "deposit confirmation",
        "doc_type": "Confirmation screenshot",
        "url_path": "http://domain.com/sample.pdf",
        "doc_file": "C:\user\docs\confirmation"
          }' "https://api.hydrogenplatform.com/electron/v1/document/c4ea6c00-d0b4-4d75-9e7a-e9dd04319586"

Example Response

{
    "id": "c4ea6c00-d0b4-4d75-9e7a-e9dd04319586",
    "create_date": "2018-04-12T18:46:12.000+0000",
    "update_date": "2018-04-13T09:00:00.000+0000",
    "doc_size": 256,
    "doc_name": "deposit confirmation",
    "doc_type": "Confirmation screenshot",
    "url_path": "http://domain.com/sample.pdf",
    "doc_file": "C:\user\docs\confirmation",
        "metadata": {}
}

Update a document for your firm. The document_id must be provided. To obtain the appropriate document_id, use the GET /document endpoint to view all of the documents for your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the document_id and the details for the document.

HTTP REQUEST

PUT /document/{document_id}

Delete a document

Example Request

curl -X DELETE -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/document/c4ea6c00-d0b4-4d75-9e7a-e9dd04319586"

Response (204 No Content)

Permanently delete a document for your firm. The document_id must be provided. To obtain the appropriate document_id, use the GET /document endpoint to view all of the documents for your firm. This deletes the document_id and the details for the document record.

HTTP REQUEST

DELETE /document/{document_id}

FAQ

Frequently Asked Questions (FAQs) and their corresponding answers can be stored in a repository, either by category or in a particular order. Keywords can also be attached to FAQs in order to help users find them. Search Engine Optimization (SEO) names can also be added to each FAQ to make them easier to find.

Field Type Description
id UUID The id of the FAQ
question string Value for the question in the FAQ
answer string Value for the answer to the question in the FAQ
category string Category that the FAQ falls under
subcategory string Subcategory that the FAQ falls under within a category
is_active boolean Indicates if the FAQ is active. Defaults to true which indicates that the FAQ is active
number integer Order number of the FAQ. For example 3 indicates it’s the third FAQ in a list. Must be a whole number
seo_name string File name used to optimize finding the FAQ in a search engine query
faq_keywords array List of keywords that can be used to identify the FAQ and their priority. Must be a whole number
      keyword string The content of the keyword that is referenced or searched by the user to identify the FAQ. Can be a single word or a phrase
      priority integer The priority of the keyword in comparison to the other keywords, based on how closely it is related to the FAQ
is_featured boolean Indicator if this is a featured FAQ. Defaults to false indicating it is not featured
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all FAQs

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/faq"

Example Response

{
    "content": [
        {
            "id": "6c940582-7699-4fe6-a836-4f05809c0c44",
            "create_date": "2018-04-10T22:53:05.000+0000",
            "update_date": "2018-04-10T22:53:05.000+0000",
            "is_active": true,
            "category": "Initial Set-up",
            "number": 1,
            "question": "How do I link my bank account?",
            "seo_name": "account",
            "subcategory": "Bank Link",
            "answer": "You will be prompted to provide your bank account information and verify the bank account via an external method.",
            "faq_keywords": [
                {
                    "keyword": "Bank Account",
                    "priority": 2
                },
                {
                    "keyword": "Bank link",
                    "priority": 1
                },
                {
                    "keyword": "bank",
                    "priority": 3
                }
            ],
            "is_featured": false
        },
        {
            "id": "9ba5f476-5e5d-4a69-ae16-7935dfd9327c",
            "create_date": "2018-04-10T21:21:25.000+0000",
            "update_date": "2018-04-10T21:21:25.000+0000",
            "is_active": true,
            "number": 1,
            "question": "How do I add money to my account?",
            "seo_name": "account",
            "category": "Initial Set-up",
            "subcategory": "Bank Link",
            "answer": "You will be prompted to provide and verify your bank account. Once verified, you can create a one-off or recurring request to deposit money from your bank account into your investment account",
            "faq_keywords": [
                {
                    "keyword": "funding",
                    "priority": 3
                },
                {
                    "keyword": "Bank Account",
                    "priority": 2
                },
                {
                    "keyword": "Bank link",
                    "priority": 1
                },
                {
                    "keyword": "invest",
                    "priority": 4
                },
            ],
            "is_featured": false
        }
    ],
    "last": true,
    "total_elements": 2,
    "total_pages": 1,
    "sort": [
        {
            "direction": "DESC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "ascending": false,
            "descending": true
        }
    ],
    "first": true,
    "number_of_elements": 2,
    "size": 25,
    "number": 0
}

Get the information for all the active and inactive FAQs defined for your firm. The endpoint returns a list of ids and details for each FAQ. Note that the keywords are nested objects within the FAQ object. They will also be returned as a list of ids and details within the FAQ details.

HTTP REQUEST

GET /faq

Create an FAQ

Example Request


curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
     -H "Content-Type: application/json" \
     -d '{
        "category": "Initial Set-up",
        "number": 1,
        "question": "How do I link my bank account?",
        "seo_name": "account",
        "subcategory": "Bank Link",
        "answer": "You will be prompted to provide your bank account information and verify the bank account via an external method.",
        "faq_keywords": [
            {
                "keyword": "Bank Account",
                "priority": 2
            },
            {
                "keyword": "Bank link",
                "priority": 1
            },
            {
                "keyword": "bank",
                "priority": 3
            }
        ],
                "is_featured": true
        }' "https://api.hydrogenplatform.com/electron/v1/faq"

Example Response

{
    "id": "6c940582-7699-4fe6-a836-4f05809c0c44",
    "create_date": "2018-04-10T22:53:05.000+0000",
    "is_active": true,
    "category": "Initial Set-up",
    "number": 1,
    "question": "How do I link my bank account?",
    "seo_name": "account",
    "subcategory": "Bank Link",
    "answer": "You will be prompted to provide your bank account information and verify the bank account via an external method.",
    "faq_keywords": [
        {
            "keyword": "Bank Account",
            "priority": 2
        },
        {
            "keyword": "Bank link",
            "priority": 1
        },
        {
            "keyword": "bank",
            "priority": 3
        }
    ],
        "is_featured": true
}

Create a new FAQ for your firm. Must provide the FAQ keyword details as a nested list within the FAQ. The create_date defaults to the current date. The endpoint returns a faq_id used to manage the FAQ.

HTTP REQUEST

POST /faq

ARGUMENTS

Parameter Type Required Description
question string required Value for the question in the FAQ
answer string required Value for the answer to the question in the FAQ
category string optional Category that the FAQ falls under
subcategory string optional Subcategory that the FAQ falls under within a category
is_active boolean optional Indicates if the FAQ is active. Defaults to true which indicates that the FAQ is active
number integer optional Order number of the FAQ. For example 3 indicates it’s the third FAQ in a list. Must be a whole number
seo_name string optional File name used to optimize finding the FAQ in a search engine query
faq_keywords array optional List of keywords that can be used to identify the FAQ and their priority
      keyword string required The content of the keyword that is referenced or searched by the user to identify the FAQ. Can be a single word or a phrase
      priority integer required The priority of the keyword in comparison to the other keywords, based on how closely it is related to the FAQ
is_featured boolean optional Indicator for whether or not this is a featured FAQ. Defaults to false indicating it is not featured
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve an FAQ

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/faq/6c940582-7699-4fe6-a836-4f05809c0c44"

Example Response

{
    "id": "6c940582-7699-4fe6-a836-4f05809c0c44",
    "create_date": "2018-04-10T22:53:05.000+0000",
    "update_date": "2018-04-10T22:53:05.000+0000",
    "is_active": true,
    "category": "Initial Set-up",
    "number": 1,
    "question": "How do I link my bank account?",
    "seo_name": "account",
    "subcategory": "Bank Link",
    "answer": "You will be prompted to provide your bank account information and verify the bank account via an external method.",
    "faq_keywords": [
        {
            "keyword": "Bank Account",
            "priority": 2
        },
        {
            "keyword": "Bank link",
            "priority": 1
        },
        {
            "keyword": "bank",
            "priority": 3
        }
    ],
       "is_featured": true
}

Retrieve a FAQ for your firm. The faq_id must be provided. The endpoint returns the faq_id and the details for the FAQ specified.

HTTP REQUEST

GET /faq/{faq_id}

Update an FAQ

Example Request


curl -X PUT -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
     -H "Content-Type: application/json" \
     -d '{
        "category": "Initial Set-up",
        "number": 1,
        "question": "How do I link my bank account?",
        "seo_name": "account",
        "subcategory": "Bank Link",
        "answer": "You will be prompted to provide your bank account information and verify the bank account via an external method.",
        "faq_keywords": [
            {
                "keyword": "Bank Account",
                "priority": 2
            },
            {
                "keyword": "Bank link",
                "priority": 1
            },
            {
                "keyword": "bank",
                "priority": 3
            }
        ],
        "is_featured": false
        }' "https://api.hydrogenplatform.com/electron/v1/faq/6c940582-7699-4fe6-a836-4f05809c0c44"

Example Response

{
    "id": "6c940582-7699-4fe6-a836-4f05809c0c44",
    "create_date": "2018-04-10T22:53:05.000+0000",
    "update_date": "2018-04-10T22:53:05.000+0000",
    "is_active": true,
    "category": "Initial Set-up",
    "number": 1,
    "question": "How do I link my bank account?",
    "seo_name": "account",
    "subcategory": "Bank Link",
    "answer": "You will be prompted to provide your bank account information and verify the bank account via an external method.",
    "faq_keywords": [
        {
            "keyword": "Bank Account",
            "priority": 2
        },
        {
            "keyword": "Bank link",
            "priority": 1
        },
        {
            "keyword": "bank",
            "priority": 3
        }
    ],
        "is_featured": false
}

Update a FAQ for your firm. The faq_id must be provided. To obtain the appropriate faq_id, use the GET /faq endpoint to view all FAQs defined for your firm. The details to be updated and the details to be maintained must also be provided. The endpoint returns the faq_id and the details for the FAQ. If you wish to have an FAQ be no longer available without permanently deleting it, use this endpoint to mark the is_active field as false.

HTTP REQUEST

PUT /faq/{faq_id}

Delete an FAQ

Example Request

curl -X DELETE -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/faq/6c940582-7699-4fe6-a836-4f05809c0c44"

Response (204 No Content)

Permanently delete a FAQ for your firm. The faq_id must be provided. To obtain the appropriate faq_id, use the GET /faq endpoint to view all FAQs defined for your firm and their current information. This deletes the faq_id and the details for the FAQ record. If you wish to have an FAQ be no longer available without permanently deleting it, use the PUT /faq/{faq_id} endpoint to mark the is_active field as false.

HTTP REQUEST

DELETE /faq/{faq_id}

Marketing

Campaign Management

Campaigns represent marketing efforts to enroll clients onto your platform. This can be done in the form of rebates, rewards, special pricing, etc. Clients that are registered as part of the campaign are recorded so that the results of the campaign can be tracked and measured.

Field Type Description
id UUID The id of the marketing campaign
title string Title of the campaign
description string Description of the campaign such as its purpose
start_date date Date that the marketing campaign begins
end_date date Date that the marketing campaign ends
is_acquisition boolean Indicates if the campaign is an acquisition campaign, such as affiliate. Defaults to false meaning it is not an acquisition campaign
campaign_category string The category assigned to the campaign
campaign_plan_id UUID The id of a campaign plan associated with a campaign
cookie_code string Cookie code associated with the campaign used for tracking purposes
is_active boolean Indicates if the campaign is currently active. Defaults to true which indicates that it is active
landing_page string Name for the landing page of the campaign
rate double Rate of client/user registration for the campaign
utm_campaign string Name of an Urchin Tracking Module (UTM) for a marketing feature used in the campaign
utm_content string Content of an Urchin Tracking Module (UTM) for a marketing campaign feature used in the campaign. For example, content in a site banner
utm_medium string Platform of an Urchin Tracking Module (UTM) for a marketing campaign feature such as Social Media
utm_source string Feature Urchin Tracking Module (UTM) for a marketing campaign such as a banner advertisement
utm_term string Term of an Urchin Tracking Module (UTM) for a marketing campaign
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all marketing campaigns

Example Request

curl -X GET -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/campaign"

Example Response

{
    "content": [
        {
            "id": "25c5dc49-1dcd-4f42-81af-a39d00f8c4f7",
            "create_date": "2018-04-12T17:48:59.000+0000",
            "update_date": "2018-04-12T17:48:59.000+0000",
            "is_acquisition": false,
            "cookie_code": "4SjIDgtzYK",
            "description": "registration package",
            "end_date": "2018-02-24",
            "is_active": true,
            "landing_page": "hydrogenplatform.com",
            "rate": 0.59,
            "start_date": "2018-02-01",
            "title": "registration rewards",
            "utm_campaign": "rewards",
            "utm_content": "free-month reward",
            "utm_medium": "email",
            "utm_source": "hydrogenplatform.com",
            "utm_term": " registration rewards"
        },
        {
            "id": "464b026e-4346-4c1e-a829-764b7b2a4f1b",
            "create_date": "2018-04-10T21:36:09.000+0000",
            "update_date": "2018-04-10T21:36:09.000+0000",
            "is_acquisition": false,
            "cookie_code": "4SjIDgtzYK",
            "description": "Referral Reward package",
            "end_date": "2018-02-24",
            "is_active": true,
            "landing_page": "hydrogenplatform.com",
            "rate": 0.59,
            "start_date": "2018-02-07",
            "title": "Referral Reward",
            "utm_campaign": "rewards",
            "utm_content": "referral credit",
            "utm_medium": "email",
            "utm_source": "hydrogenplatform.com",
            "utm_term": "Referral Reward",
            "campaign_category": "Credit"
        },
        {
            "id": "a0e57459-5015-45ed-9b68-2fb8420e1f63",
            "create_date": "2018-04-10T20:41:33.000+0000",
            "update_date": "2018-04-10T20:47:22.000+0000",
            "is_acquisition": false,
            "cookie_code": "4SjIDgtzYK",
            "description": "health & wellness package",
            "end_date": "2018-02-24",
            "is_active": true,
            "landing_page": "hydrogenplatform.com",
            "rate": 0.59,
            "start_date": "2018-02-01",
            "title": "health & wellness rewards",
            "utm_campaign": "rewards",
            "utm_content": "health & wellness gift pass",
            "utm_medium": "email",
            "utm_source": "hydrogenplatform.com",
            "utm_term": "health & wellness rewards",
            "campaign_category": "Print"
        }
    ],
    "total_pages": 1,
    "total_elements": 3,
    "last": true,
    "first": true,
    "sort": [
        {
            "direction": "DESC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "descending": true,
            "ascending": false
        }
    ],
    "number_of_elements": 3,
    "size": 25,
    "number": 0
}

Get a list of active and inactive marketing campaigns defined for your firm. The endpoint returns a list of ids and details for all campaigns.

HTTP REQUEST

GET /campaign

Create a marketing campaign

Example Request

curl -X POST -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    -H "Content-Type: application/json" \
    -d '{
        "cookie_code": "4SjIDgtzYK",
        "description": "Referral Reward package",
        "start_date": "2018-02-07",
        "end_date": "2018-02-24",
        "landing_page": "hydrogenplatform.com",
        "rate": 0.59,
        "title": "Referral Reward",
        "utm_campaign": "rewards",
        "utm_content": "referral credit",
        "utm_medium": "email",
        "utm_source": "hydrogenplatform.com",
        "utm_term": "Referral Reward",
        "campaign_category": "Credit"
    }' "https://api.hydrogenplatform.com/electron/v1/campaign"

Example Response

{
    "id": "464b026e-4346-4c1e-a829-764b7b2a4f1b",
    "create_date": "2018-04-10T21:36:09.000+0000",
    "update_date": "2018-04-10T21:36:09.000+0000",
    "is_acquisition": false,
    "cookie_code": "4SjIDgtzYK",
    "description": "Referral Reward package",
    "end_date": "2018-02-24",
    "is_active": true,
    "landing_page": "hydrogenplatform.com",
    "rate": 0.59,
    "start_date": "2018-02-07",
    "title": "Referral Reward",
    "utm_campaign": "rewards",
    "utm_content": "referral credit",
    "utm_medium": "email",
    "utm_source": "hydrogenplatform.com",
    "utm_term": "Referral Reward",
    "campaign_category": "Credit"
}

Create a marketing campaign for your firm. The create_date will default to the current date. The endpoint returns a campaign_id which can be used to manage the campaign. Once you have created a campaign, you can create a campaign plan to assign it to a campaign, though a campaign is not required to create a campaign plan. Campaigns can only be created at a firm level.

HTTP REQUEST

POST /campaign

ARGUMENTS

Parameter Type Required Description
title string required Title of the campaign
description string required Description of the campaign such as its purpose
start_date date required Date that the marketing campaign begins
end_date date required Date that the marketing campaign ends
is_acquisition boolean optional Indicates if the campaign is an acquisition campaign, such as affiliate. Defaults to false meaning it is not an acquisition campaign
campaign_category string optional The category assigned to the campaign
campaign_plan_id UUID optional The id of a campaign plan associated with a campaign
cookie_code string optional Cookie code associated with the campaign used for tracking purposes
is_active boolean optional Indicates if the campaign is currently active. Defaults to true which indicates that it is active
landing_page string optional Name for the landing page of the campaign
rate double optional Rate of client/user registration for the campaign
utm_campaign string optional Name of an Urchin Tracking Module (UTM) for a marketing feature used in the campaign
utm_content string optional Content of an Urchin Tracking Module (UTM) for a marketing campaign feature used in the campaign. For example, content in a site banner
utm_medium string optional Platform of an Urchin Tracking Module (UTM) for a marketing campaign feature such as Social Media
utm_source string optional Feature Urchin Tracking Module (UTM) for a marketing campaign such as a banner advertisement
utm_term string optional Term of an Urchin Tracking Module (UTM) for a marketing campaign
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a marketing campaign

Example Request

curl -X GET -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/campaign/464b026e-4346-4c1e-a829-764b7b2a4f1b"

Example Response

{
    "id": "464b026e-4346-4c1e-a829-764b7b2a4f1b",
    "create_date": "2018-04-10T21:36:09.000+0000",
    "update_date": "2018-04-10T21:36:09.000+0000",
    "is_acquisition": false,
    "cookie_code": "4SjIDgtzYK",
    "description": "Referral Reward package",
    "end_date": "2018-02-24",
    "is_active": true,
    "landing_page": "hydrogenplatform.com",
    "rate": 0.59,
    "start_date": "2018-02-07",
    "title": "Referral Reward",
    "utm_campaign": "rewards",
    "utm_content": "referral credit",
    "utm_medium": "email",
    "utm_source": "hydrogenplatform.com",
    "utm_term": "Referral Reward",
    "campaign_category": "Credit"
}

Retrieve information for a marketing campaign for your firm. The unique campaign_id must be provided. The endpoint returns the campaign_id and the underlying details for the campaign specified.

HTTP REQUEST

GET /campaign/{campaign_id}

Update a marketing campaign

Example Request

curl -X PUT -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    -H "Content-Type: application/json" \
    -d '{
        "cookie_code": "4SjIDgtzYK",
        "description": "Referral Reward package",
        "start_date": "2018-02-07",
        "end_date": "2018-02-24",
        "landing_page": "hydrogenplatform.com",
        "rate": 0.59,
        "title": "Referral Reward",
        "utm_campaign": "rewards",
        "utm_content": "referral credit",
        "utm_medium": "email",
        "utm_source": "hydrogenplatform.com",
        "utm_term": "Referral Reward",
        "campaign_category": "Credit"
    }' "https://api.hydrogenplatform.com/electron/v1/campaign/464b026e-4346-4c1e-a829-764b7b2a4f1b"

Example Response

{
    "id": "464b026e-4346-4c1e-a829-764b7b2a4f1b",
    "create_date": "2018-04-10T21:36:09.000+0000",
    "update_date": "2018-04-10T21:36:09.000+0000",
    "is_acquisition": false,
    "cookie_code": "4SjIDgtzYK",
    "description": "Referral Reward package",
    "end_date": "2018-02-24",
    "is_active": true,
    "landing_page": "hydrogenplatform.com",
    "rate": 0.59,
    "start_date": "2018-02-07",
    "title": "Referral Reward",
    "utm_campaign": "rewards",
    "utm_content": "referral credit",
    "utm_medium": "email",
    "utm_source": "hydrogenplatform.com",
    "utm_term": "Referral Reward",
    "campaign_category": "Credit"
}

Update the information for a marketing campaign for your firm. The unique campaign_id must be provided. To obtain the appropriate campaign_id, use the GET /campaign endpoint to view all campaigns defined for your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the campaign_id and the details for the campaign. If you wish to end the campaign and make the campaign_id unavailable for further use without permanently deleting the campaign_id and all associated information, use this endpoint to mark the is_active field as false and update the end_date to the desired date.

HTTP REQUEST

PUT /campaign/{campaign_id}

Delete a marketing campaign

Example Request

curl -X DELETE -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/campaign/464b026e-4346-4c1e-a829-764b7b2a4f1b"

Response (204 No Content)

Permanently delete a marketing campaign from your firm. The unique campaign_id must be provided. To obtain the appropriate campaign_id, use the GET /campaign endpoint to view all campaigns defined for your firm. This deletes the campaign_id and the details for the campaign record. If you wish to end the campaign and make the campaign_id unavailable for further use without permanently deleting the campaign_id and all associated information, use the PUT /campaign/{campaign_id} endpoint to mark the is_active field as false and update the end_date to the desired date.

HTTP REQUEST

DELETE /campaign/{campaign_id}

Campaign Plan

A campaign plan is composed of the pricing structure of a campaign. For example, you may want to run multiple marketing campaigns for various target demographics with varying pricing structures to maximize the effectiveness of the marketing campaigns. Note that the plan rates are stored a nested objects within the campaign plan object.

Field Type Description
id UUID The id of the campaign plan
description string Description for the campaign plan
is_active boolean Indicates if the campaign plan is currently active. Defaults to true which indicates that it is active
plan_rates array List of plan rates and the asset size range to which each rate applies for the campaign plan
      max_asset double Maximum client or account asset size to which the rate applies
      min_asset double Minimum client or account asset size to which the rate applies
      rate double Pricing rate to be applied for this asset size range
secondary_id string Alternate id that can be used to identify the object such as an internal id `
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all campaign plans

Example Request

curl -X GET -H "Authorization: Bearer 7f137375-c63b-49fb-84eb-5abbd3b780a3" \
    "https://api.hydrogenplatform.com/electron/v1/campaign_plan"

Example Response

{
  "content": [
    {
        "id": "a1d45dc4-c5b9-463f-97d8-2d1dd4408761",
        "create_date": "2018-04-17T00:10:32.054+0000",
        "update_date": "2018-04-17T00:10:32.054+0000",
        "description": "Affiliate Marketing",
        "is_active": true,
        "plan_rates": [
            {
                "max_asset": 100000,
                "min_asset": 10001,
                "rate": 100
            },
            {
                "max_asset": 10000000,
                "min_asset": 500000,
                "rate": 750
            },
            {
                "max_asset": 1000,
                "min_asset": 1,
                "rate": 25
            },
            {
                "max_asset": 10000,
                "min_asset": 1001,
                "rate": 50
            },
            {
                "max_asset": 500000,
                "min_asset": 100001,
                "rate": 250
            }
        ]
    }
],
  "total_pages": 1,
  "total_elements": 1,
  "last": true,
  "sort": [
    {
      "direction": "DESC",
      "property": "id",
      "ignore_case": false,
      "null_handling": "NATIVE",
      "ascending": false,
      "descending": true
    }
  ],
  "first": true,
  "number_of_elements": 1,
  "size": 25,
  "number": 0
}

List information for all active and inactive campaign plans defined for your firm. The endpoint returns a list of ids and the details for each campaign plan as well as a list of ids and details for each plan rate. Note that the plan rates information are stored a nested objects within the campaign plan object.

HTTP REQUEST

GET /campaign_plan

Create a campaign plan

Example Request

curl -X POST -H "Authorization: Bearer 7f137375-c63b-49fb-84eb-5abbd3b780a3" \
    -H "Content-Type: application/json" \
    -d '{
        "description": "Affiliate Marketing",
        "plan_rates": [
            {
                "max_asset": 100000,
                "min_asset": 10001,
                "rate": 100
            },
            {
                "max_asset": 10000000,
                "min_asset": 500000,
                "rate": 750
            },
            {
                "max_asset": 1000,
                "min_asset": 1,
                "rate": 25
            },
            {
                "max_asset": 10000,
                "min_asset": 1001,
                "rate": 50
            },
            {
                "max_asset": 500000,
                "min_asset": 100001,
                "rate": 250
            }
         ]
       }' "https://api.hydrogenplatform.com/electron/v1/campaign_plan"

Example Response

{
    "id": "a1d45dc4-c5b9-463f-97d8-2d1dd4408761",
    "create_date": "2018-04-17T00:10:32.054+0000",
    "update_date": "2018-04-17T00:10:32.054+0000",
    "description": "Affiliate Marketing",
    "is_active": true,
    "plan_rates": [
        {
            "max_asset": 100000,
            "min_asset": 10001,
            "rate": 100
        },
        {
            "max_asset": 10000000,
            "min_asset": 500000,
            "rate": 750
        },
        {
            "max_asset": 1000,
            "min_asset": 1,
            "rate": 25
        },
        {
            "max_asset": 10000,
            "min_asset": 1001,
            "rate": 50
        },
        {
            "max_asset": 500000,
            "min_asset": 100001,
            "rate": 250
        }
    ]
}

Create a campaign plan for your firm. The create_date will default to the current date. The endpoint returns a campaign_plan_id used to manage the plan. Note that plan rates are created at the same time as the campaign plan as nested objects.

HTTP REQUEST

POST /campaign_plan

ARGUMENTS

Parameter Type Required Description
description string required Description for the campaign plan
is_active boolean optional Indicates if the campaign plan is currently active. Defaults to true which indicates that it is active
plan_rates array optional List of plan rates and the asset size range to which each rate apply for the campaign plan
      max_asset double required Maximum client or account asset size to which the rate applies
      min_asset double required Minimum client or account asset size to which the rate applies
      rate double required Pricing rate to be applied for this asset size range
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a campaign plan

Example Request

curl -X GET -H "Authorization: Bearer 7f137375-c63b-49fb-84eb-5abbd3b780a3" \
    "https://api.hydrogenplatform.com/electron/v1/campaign_plan/a1d45dc4-c5b9-463f-97d8-2d1dd4408761"

Example Response

{
    "id": "a1d45dc4-c5b9-463f-97d8-2d1dd4408761",
    "create_date": "2018-04-17T00:10:32.054+0000",
    "update_date": "2018-04-17T00:10:32.054+0000",
    "description": "Affiliate Marketing",
    "is_active": true,
    "plan_rates": [
        {
            "max_asset": 100000,
            "min_asset": 10001,
            "rate": 100
        },
        {
            "max_asset": 10000000,
            "min_asset": 500000,
            "rate": 750
        },
        {
            "max_asset": 1000,
            "min_asset": 1,
            "rate": 25
        },
        {
            "max_asset": 10000,
            "min_asset": 1001,
            "rate": 50
        },
        {
            "max_asset": 500000,
            "min_asset": 100001,
            "rate": 250
        }
    ]
}

Retrieve the information for a campaign plan. The campaign_plan_id must be provided. The endpoint returns the campaign_plan_id and details for the campaign plan specified.

HTTP REQUEST

GET /campaign_plan/{campaign_plan_id}

Update a campaign plan

Example Request

curl -X PUT -H "Authorization: Bearer 7f137375-c63b-49fb-84eb-5abbd3b780a3" \
    -H "Content-Type: application/json" \
    -d '{
            "description": "Affiliate Marketing",
            "is_active": true,
            "plan_rates": [
            {
                "max_asset": 100000,
                "min_asset": 10001,
                "rate": 100
            },
            {
                "max_asset": 10000000,
                "min_asset": 500000,
                "rate": 750
            },
            {
                "max_asset": 1000,
                "min_asset": 1,
                "rate": 25
            },
            {
                "max_asset": 10000,
                "min_asset": 1001,
                "rate": 50
            },
            {
                "max_asset": 500000,
                "min_asset": 100001,
                "rate": 250
            }
            ]
          }' "https://api.hydrogenplatform.com/electron/v1/campaign_plan/a1d45dc4-c5b9-463f-97d8-2d1dd4408761"

Example Response

{
    "id": "a1d45dc4-c5b9-463f-97d8-2d1dd4408761",
    "create_date": "2018-04-17T00:10:32.054+0000",
    "update_date": "2018-04-17T00:10:32.054+0000",
    "description": "Affiliate Marketing",
    "is_active": true,
    "plan_rates": [
        {
            "max_asset": 100000,
            "min_asset": 10001,
            "rate": 100
        },
        {
            "max_asset": 10000000,
            "min_asset": 500000,
            "rate": 750
        },
        {
            "max_asset": 1000,
            "min_asset": 1,
            "rate": 25
        },
        {
            "max_asset": 10000,
            "min_asset": 1001,
            "rate": 50
        },
        {
            "max_asset": 500000,
            "min_asset": 100001,
            "rate": 250
        }
    ]
}

Update the information for a campaign plan for your firm. The unique campaign_plan_id must be provided. To obtain the appropriate campaign_plan_id, use the GET /campaign_plan endpoint to view all available campaign plans for your firm and their current information.The details to be updated and the details to be maintained must also be provided. The endpoint returns the the campaign_plan_id and the details for the campaign plan. If you wish to have a campaign plan no longer be available for use without permanently deleting it, use this endpoint to change the is_active field to false.

HTTP REQUEST

PUT /campaign_plan/{campaign_plan_id}

Delete a campaign plan

Example Request

curl -X DELETE -H "Authorization: Bearer 7f137375-c63b-49fb-84eb-5abbd3b780a3" \
        "https://api.hydrogenplatform.com/electron/v1/campaign_plan/a1d45dc4-c5b9-463f-97d8-2d1dd4408761"

Response (204 No Content)

Permanently delete a campaign plan for your firm. The campaign_plan_id must be provided. To obtain the appropriate campaign_plan_id, use the GET /campaign_plan endpoint to view all available campaign plans defined for your firm. This deletes the campaign_plan_id as well as any underlying information and rates for the plan. If you wish to have a campaign plan no longer be available for use without permanently deleting it, use this endpoint to change the is_active field to false.

HTTP REQUEST

DELETE /campaign_plan/{campaign_plan_id}

Campaign Data

Campaign data represents stored data points for metrics such as click-through rate that are tracked for each feature of a particular campaign and to measure the campaign results.

Field Type Description
id UUID The id of the campaign data record
campaign_id UUID The id of the campaign to which the campaign data record belongs
start_date date Date for when the period being measured by the campaign data record began
end_date date Date for when the period being measured by the campaign data record ended
click_through_rate double Rate of clicks measured in the campaign data record for a specific feature as a whole number
line_item string Name of the campaign data record indicating the feature that it is measuring such as banner click through
publisher_campaign_name string Name of the campaign publisher
total_clicks integer Total number of clicks measured in the campaign data record for a specific feature as a whole number
total_impressions integer Total number of impressions measured in the campaign data record for a specific feature as a whole number
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all campaign data records

Example Request

curl -X GET -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/campaign_data"

Example Response

{
    "content": [
        {
            "id": "796e1a91-11dc-4e09-8b0f-cb85c809dc66",
            "create_date": "2018-04-12T17:51:18.000+0000",
            "update_date": "2018-04-12T17:51:18.000+0000",
            "click_through_rate": 0,
            "end_date": "2018-05-26",
            "line_item": "SRI Allstars",
            "publisher_campaign_name": "SRI rewards outreach",
            "start_date": "2018-02-09",
            "total_clicks": 0,
            "total_impressions": 0,
            "campaign_id": "25c5dc49-1dcd-4f42-81af-a39d00f8c4f7"
        },
        {
            "id": "fc6166c3-7c89-4af1-b4b1-e98c26f65d29",
            "create_date": "2018-04-10T21:46:01.000+0000",
            "update_date": "2018-04-10T21:46:01.000+0000",
            "click_through_rate": 0.6,
            "end_date": "2018-12-31",
            "line_item": "Get a referral credit",
            "publisher_campaign_name": "Referral Rewards program",
            "start_date": "2018-04-04",
            "total_clicks": 230,
            "total_impressions": 175,
            "campaign_id": "464b026e-4346-4c1e-a829-764b7b2a4f1b"
        }
    ],
    "last": true,
    "total_elements": 2,
    "total_pages": 1,
    "sort": [
        {
            "direction": "DESC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "ascending": false,
            "descending": true
        }
    ],
    "first": true,
    "number_of_elements": 2,
    "size": 25,
    "number": 0
}

List all data for all marketing campaigns defined for your firm. You can filter using a campaign_id to view the results for one campaign. To obtain the appropriate campaign_id, use the GET /campaign endpoint to view all the marketing campaigns defined for your firm. The endpoint returns a list of ids and details for all campaign data records.

HTTP REQUEST

GET /campaign_data

Create a campaign data record

Example Request

curl -X POST -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    -H "Content-Type: application/json" \
    -d '{
        "click_through_rate": 0,
        "end_date": "2018-05-26",
        "line_item": "SRI Allstars",
        "publisher_campaign_name": "SRI rewards outreach",
        "start_date": "2018-02-09",
        "total_clicks": 0,
        "total_impressions": 0,
        "campaign_id": "25c5dc49-1dcd-4f42-81af-a39d00f8c4f7"
    }' "https://api.hydrogenplatform.com/electron/v1/campaign_data"

Example Response

{
    "id": "796e1a91-11dc-4e09-8b0f-cb85c809dc66",
    "create_date": "2018-04-12T17:51:18.000+0000",
    "update_date": "2018-04-12T17:51:18.000+0000",
    "click_through_rate": 0,
    "start_date": "2018-02-09",
    "end_date": "2018-05-26",
    "line_item": "SRI Allstars",
    "publisher_campaign_name": "SRI rewards outreach",
    "total_clicks": 0,
    "total_impressions": 0,
    "campaign_id": "25c5dc49-1dcd-4f42-81af-a39d00f8c4f7"
}

Create a campaign data record for a marketing campaign for your firm. The campaign_id must be provided. To obtain the appropriate campaign_id, use the GET /campaign endpoint to view all the marketing campaigns for your firm. The create_date will default to the current date. The endpoint returns a campaign_data_id used to manage the data record.

HTTP REQUEST

POST /campaign_data

ARGUMENTS

Parameter Type Required Description
campaign_id UUID required The id of the campaign to which the campaign data record belongs
start_date date required Date for when the period being measured by the campaign data record began
end_date date required Date for when the period being measured by the campaign data record ended
click_through_rate double optional Rate of clicks measured in the campaign data record for a specific feature as a whole number
line_item string optional Name of the campaign data record indicating the feature that it is measuring such as banner click through
publisher_campaign_name string optional Name of the campaign publisher
total_clicks integer optional Total number of clicks measured in the campaign data record for a specific feature as a whole number
total_impressions integer optional Total number of impressions measured in the campaign data record for a specific feature as a whole number
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a campaign data record

Example Request

curl -X GET -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/campaign_data/796e1a91-11dc-4e09-8b0f-cb85c809dc66"

Example Response

{
    "id": "796e1a91-11dc-4e09-8b0f-cb85c809dc66",
    "create_date": "2018-04-12T17:51:18.000+0000",
    "update_date": "2018-04-12T17:51:18.000+0000",
    "click_through_rate": 0,
    "start_date": "2018-02-09",
    "end_date": "2018-05-26",
    "line_item": "SRI Allstars",
    "publisher_campaign_name": "SRI rewards outreach",
    "total_clicks": 0,
    "total_impressions": 0,
    "campaign_id": "25c5dc49-1dcd-4f42-81af-a39d00f8c4f7"
}

Retrieve the information for a campaign data record for a marketing campaign. The campaign_data_id must be provided. The endpoint returns the campaign_data_id and the details for the campaign data record specified.

HTTP REQUEST

GET /campaign_data/{campaign_data_id}

Update a campaign data record

Example Request

curl -X PUT -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    -H "Content-Type: application/json" \
    -d '{
        "click_through_rate": 0,
        "start_date": "2018-02-09",
        "end_date": "2018-05-26",
        "line_item": "SRI Allstars",
        "publisher_campaign_name": "SRI rewards outreach",
        "total_clicks": 0,
        "total_impressions": 0,
        "campaign_id": "25c5dc49-1dcd-4f42-81af-a39d00f8c4f7"
    }' "https://api.hydrogenplatform.com/electron/v1/campaign_data/796e1a91-11dc-4e09-8b0f-cb85c809dc66"

Example Response

{
    "id": "796e1a91-11dc-4e09-8b0f-cb85c809dc66",
    "create_date": "2018-04-12T17:51:18.000+0000",
    "update_date": "2018-04-12T17:51:18.000+0000",
    "click_through_rate": 0,
    "start_date": "2018-02-09",
    "end_date": "2018-05-26",
    "line_item": "SRI Allstars",
    "publisher_campaign_name": "SRI rewards outreach",
    "total_clicks": 0,
    "total_impressions": 0,
    "campaign_id": "25c5dc49-1dcd-4f42-81af-a39d00f8c4f7"
}

Update the information for a campaign data record for a marketing campaign. The campaign_data_id must be provided. To obtain the appropriate campaign_data_id, use the GET /campaign_data endpoint to view all the campaign data records for all marketing campaigns defined your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the campaign_data_id and details for the campaign data record from the campaign.

HTTP REQUEST

PUT /campaign_data/{campaign_data_id}

Delete a campaign data record

Example Request

curl -X DELETE -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/campaign_data/796e1a91-11dc-4e09-8b0f-cb85c809dc66"

Response (204 No Content)

Permanently delete a campaign data record for a marketing campaign defined for your firm. The campaign_data_id must be provided. To obtain the appropriate campaign_data_id, use the GET /campaign_data endpoint to view all the campaign data records for all marketing campaigns defined your firm. This deletes the campaign_data_id and all stored information.

HTTP REQUEST

DELETE /campaign_data/{campaign_data_id}

Client Campaign

The client_campaign entity represents a client that registered for your firm’s service as part of a marketing campaign run by your firm. This is used to track the results of the marketing campaign.

Field Type Description
id UUID The id of the association of the client_id with the campaign
campaign_id UUID The id of the campaign through which the client registered for your firm’s service
client_id UUID The id of the client that registered for your firm via a particular campaign
ip string The IP address of the client that registered for your firm’s service
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all client campaigns

Example Request

curl -X GET -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/client_campaign"

Example Response

{
  "content": [
    {
      "id": "7960419c-c098-4450-8cc5-866b7385230b",
      "create_date": "2018-02-09T18:06:36.000+0000",
      "update_date": "2018-02-10T09:00:00.000+0000",
      "client_id": "b4c033db-9d05-4a33-8e28-40650d454487",
      "ip": "1.2.3.4.5",
      "campaign_id": "8d97c85c-8cbf-4ac1-a5df-f9d2bb6a77e0"
    }
  ],
  "total_pages": 1,
  "last": true,
  "total_elements": 1,
  "first": true,
  "sort": [
    {
      "direction": "DESC",
      "property": "id",
      "ignore_case": false,
      "null_handling": "NATIVE",
      "ascending": false,
      "descending": true
    }
  ],
  "number_of_elements": 1,
  "size": 25,
  "number": 0
}

List the information for all clients that are assigned to a marketing campaign defined for your firm. The endpoint returns a list of ids for each registration, the client_id and the campaign_id linked for all client campaign records.

HTTP REQUEST

GET /client_campaign

Assign a client to a campaign

Example Request

curl -X POST -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    -H "Content-Type: application/json" \
    -d '{
          "client_id" : "b4c033db-9d05-4a33-8e28-40650d454487",
          "ip" : "1.2.3.4.5",
          "campaign_id" : "8d97c85c-8cbf-4ac1-a5df-f9d2bb6a77e0"
    }' "https://api.hydrogenplatform.com/electron/v1/client_campaign"

Example Response

{
  "id": "7960419c-c098-4450-8cc5-866b7385230b",
  "create_date": "2018-02-09T18:06:36.163+0000",
  "update_date": "2018-02-10T09:00:00.000+0000",
  "client_id": "b4c033db-9d05-4a33-8e28-40650d454487",
  "ip": "1.2.3.4.5",
  "campaign_id": "8d97c85c-8cbf-4ac1-a5df-f9d2bb6a77e0"
}

Assign a client to a campaign to indicate the client has registered through the campaign specified. The campaign_id must be provided. To obtain the appropriate campaign_id use the GET /campaign endpoint to view all campaigns defined for your firm. At least one or the other of the client_id or the IP address of the client should also be provided. To obtain the appropriate client_id, use the GET /client endpoint to view all clients defined for your firm. The create_date will default to the current date. The endpoint returns a client_campaign_id which represents the relationship between the client and the campaign and is used to manage this relationship.

HTTP REQUEST

POST /client_campaign

ARGUMENTS

Parameter Type Required Description
campaign_id UUID required The id of the campaign through which the client registered for your firm’s service
client_id UUID optional The id of the client that registered for your firm via a particular campaign. Recommended to provide if no value for ip is provided
ip string optional The IP address of the client that registered for your firm’s service. Recommended to provide if no value for client_id is provided
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a client assigned to a campaign

Example Request

curl -X GET -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    "https://api.hydrogenplatform.com/electron/v1/client_campaign/7960419c-c098-4450-8cc5-866b7385230b"

Example Response

{
  "id": "7960419c-c098-4450-8cc5-866b7385230b",
  "create_date": "2018-02-09T18:06:36.163+0000",
  "update_date": "2018-02-10T09:00:00.000+0000",
  "client_id": "b4c033db-9d05-4a33-8e28-40650d454487",
  "ip": "1.2.3.4.5",
  "campaign_id": "8d97c85c-8cbf-4ac1-a5df-f9d2bb6a77e0"
}

Retrieve the information for a client assigned to a marketing campaign defined for your firm. The client_campaign_id must be provided. The endpoint returns campaign_id of the campaign used by the client and the client_id or IP address of the client in question.

HTTP REQUEST

GET /client_campaign/{client_campaign_id}

Update a client assigned to a campaign

Example Request

curl -X PUT -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
    -H "Content-Type: application/json" \
    -d '{
          "client_id" : "b4c033db-9d05-4a33-8e28-40650d454487",
          "ip" : "1.2.3.4.5",
          "campaign_id" : "8d97c85c-8cbf-4ac1-a5df-f9d2bb6a77e0"
    }' "https://api.hydrogenplatform.com/electron/v1/client_campaign/7960419c-c098-4450-8cc5-866b7385230b"

Example Response

{
  "id": "7960419c-c098-4450-8cc5-866b7385230b",
  "create_date": "2018-02-09T18:06:36.163+0000",
  "update_date": "2018-02-10T09:00:00.000+0000",
  "client_id": "b4c033db-9d05-4a33-8e28-40650d454487",
  "ip": "1.2.3.4.5",
  "campaign_id": "8d97c85c-8cbf-4ac1-a5df-f9d2bb6a77e0"
}

Update the information for a client assigned to a marketing campaign defined for your firm. The client_campaign_id must be provided. To obtain the appropriate client_campaign_id, use the GET /client_campaign endpoint to view all clients assigned to marketing campaigns defined for your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the client_campaign_id and the details for the client campaign record.

HTTP REQUEST

PUT /client_campaign/{client_campaign_id}

Remove a client from a campaign

Example Request

curl -X DELETE -H "Authorization: Bearer 921c2e12-c3c3-4fe5-b8cc-2035d39ad44e" \
       "https://api.hydrogenplatform.com/electron/v1/client_campaign/7960419c-c098-4450-8cc5-866b7385230b"

Response (204 No Content)

Remove a client from a marketing campaign. The client_campaign_id must be provided. To obtain the appropriate client_campaign_id, use the GET /client_campaign endpoint to view all clients assigned to marketing campaigns defined for your firm. This deletes the relationship between the client_id and the campaign_id, thus also permanently deleting the client_campaign_id.

HTTP REQUEST

DELETE /client_campaign/{client_campaign_id}

Support

Support Ticket

Support tickets can be raised for both your firm or for a specific client or account. Any supporting information are added under support ticket comments, including documents.

Field Type Description
id UUID The id of the support ticket
description string Details and description of the support ticket issue
assigned_to UUID The id of the internal user to whom the support ticket is assigned to be resolved
client_id UUID The id for the client associated with the support ticket
account_id UUID The id for the account associated with the support ticket
open_time date Timestamp for the date and time that the support ticket was opened. Defaults to today’s date
close_time date Date and time that the support ticket was resolved and closed
status string Status of the support ticket such as closed
subject string Title of the support ticket relating to the underlying issue
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all support tickets

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/support_ticket"

Example Response

{
    "content": [
        {
            "id": "83056839-c04c-4eec-8815-ee620f9037c0",
            "create_date": "2018-04-12T17:55:02.000+0000",
            "update_date": "2018-04-12T17:55:02.000+0000",
            "assigned_to": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
            "client_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
            "account_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
            "close_time": "2018-04-17",
            "description": "Questions about account performance",
            "open_time": "2018-04-12",
            "subject": "Performance"
        },
        {
            "id": "bc2fee77-eb09-4a06-8680-2e2a2a3b0320",
            "create_date": "2018-02-28T21:52:49.000+0000",
            "update_date": "2018-02-28T21:52:49.000+0000",
            "assigned_to": "eb3d7f60-a133-4ca9-815f-3677bcdc23a3",
            "client_id": "fbc03484-08e8-446d-83aa-6d6cc236355e",
            "account_id": "eb3d7f60-a133-4ca9-815f-3677bcdc23a3",
            "description": "I want to know the status of my deposit",
            "open_time": "2018-02-28",
            "status": "opened",
            "subject": "Deposit Inquiry"
        }
    ],
    "total_pages": 1,
    "total_elements": 2,
    "last": true,
    "first": true,
    "sort": [
        {
            "direction": "DESC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "descending": true,
            "ascending": false
        }
    ],
    "number_of_elements": 2,
    "size": 25,
    "number": 0
}

Get the information for all support tickets defined for your firm. The endpoint returns a list of ids and details for all support tickets. You can filter using a client_id or account_id to view support tickets for a specific client or account.

HTTP REQUEST

GET /support_ticket

Create a support ticket

Example Request

curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
     -H "Content-Type: application/json" \
     -d '{
            "assigned_to": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
            "client_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
            "account_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
            "close_time": "2018-04-17",
            "description": "Questions about account performance",
            "subject": "Performance",
            "secondary_id": "12345"
       }' "https://api.hydrogenplatform.com/electron/v1/support_ticket"

Example Response

{
    "id": "83056839-c04c-4eec-8815-ee620f9037c0",
    "create_date": "2018-04-12T17:55:02.000+0000",
    "update_date": "2018-04-12T17:55:02.000+0000",
    "assigned_to": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
    "client_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
    "account_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
    "close_time": "2018-04-17",
    "description": "Questions about account performance",
    "open_time": "2018-04-12",
    "subject": "Performance",
    "secondary_id": "12345"
}

Create a new support ticket for your firm. Tickets can be raised for your firm or for a specific client or account. If the ticket belongs to a specific client, you must provide the unique client_id. If the ticket belongs to a specific account, you must provide the unique account_id. To obtain the appropriate client_id, use the GET /client endpoint to view all clients defined for your firm. To obtain the appropriate account_id, use the GET /account endpoint to view all accounts defined for your firm. See the Nucleus API documentation for these endpoints. The create_date and open_time will default to the current date. The endpoint returns a support_ticket_id used to track and manage the support ticket.

HTTP REQUEST

POST /support_ticket

ARGUMENTS

Parameter Type Required Description
description string required Details and description of the support ticket issue
client_id UUID required The id for the client associated with the support ticket
account_id UUID required The id for the account associated with the support ticket
assigned_to UUID optional The id of the internal user to whom the support ticket is assigned to be resolved
open_time date optional Timestamp for the date and time that the support ticket was opened. Defaults to today’s date
close_time date optional Date and time that the support ticket was resolved and closed
status string optional Status of the support ticket such as closed
subject string optional Title of the support ticket relating to the underlying issue
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a support ticket

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/support_ticket/83056839-c04c-4eec-8815-ee620f9037c0"

Example Response

{
    "id": "83056839-c04c-4eec-8815-ee620f9037c0",
    "create_date": "2018-04-12T17:55:02.000+0000",
    "update_date": "2018-04-12T17:55:02.000+0000",
    "assigned_to": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
    "client_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
    "account_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
    "close_time": "2018-04-17",
    "description": "Questions about account performance",
    "open_time": "2018-04-12",
    "subject": "Performance"
}

Retrieve the information for a support ticket defined for your firm. The support_ticket_id must be provided. The endpoint returns the support_ticket_id and the details for the support ticket specified.

HTTP REQUEST

GET /support_ticket/{support_ticket_id}

Update a support ticket

Example Request

curl -X PUT -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
     -H "Content-Type: application/json" \
     -d '{
            "assigned_to": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
            "client_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
            "account_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
            "close_time": "2018-04-17",
            "description": "Questions about account performance",
            "open_time": "2018-04-12",
            "subject": "Performance"
       }' "https://api.hydrogenplatform.com/electron/v1/support_ticket/83056839-c04c-4eec-8815-ee620f9037c0"

Example Response

{
    "id": "83056839-c04c-4eec-8815-ee620f9037c0",
    "create_date": "2018-04-12T17:55:02.000+0000",
    "update_date": "2018-04-12T17:55:02.000+0000",
    "assigned_to": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
    "client_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
    "account_id": "199a8c08-cdd5-4c8c-8abf-535447cea11b",
    "close_time": "2018-04-17",
    "description": "Questions about account performance",
    "open_time": "2018-04-12",
    "subject": "Performance"
}

Update the information for a support ticket defined for your firm. The support_ticket_id must be provided. To obtain the appropriate support_ticket_id use the GET /support_ticket endpoint to view all support tickets defined for your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the support_ticket_id and the details for the support ticket. If you wish to simply close a resolved ticket rather than permanently delete it, use this endpoint to update the date the ticket was closed.

HTTP REQUEST

PUT /support_ticket/{support_ticket_id}

Delete a support ticket

Example Request

curl -X DELETE -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/support_ticket/83056839-c04c-4eec-8815-ee620f9037c0"

Response (204 No Content)

Permanently delete a support ticket for your firm. The support_ticket_id must be provided. To obtain the appropriate support_ticket_id use the GET /support_ticket endpoint to view all support tickets defined for your firm. This will delete the support_ticket_id and all associated information. If you wish to simply close a resolved ticket, use the PUT /support_ticket/{support_ticket_id} endpoint to update the date the ticket was closed.

HTTP REQUEST

DELETE /support_ticket/{support_ticket_id}

Support Ticket Comment

Support ticket comments are created under support tickets to add additional information. Any supporting documents are stored as nested objects within the support ticket comment object.

Field Type Description
id UUID The id of the support ticket comment
support_ticket_id UUID The id of the support ticket to which the comment belongs
description string Details and description of the information included in the support ticket comment
has_attachment boolean Indicates if the comment has a document attached. Defaults to false which indicates it does not have an attachment
is_admin boolean Indicates if the support ticket comment has been added by an internal administrator (as opposed to a client). Defaults to false which indicates that it has not been added by an administrator
is_read boolean Indicates if the support ticket comment has been read by the internal user to whom the support ticket is assigned for resolution. Defaults to false which indicates that it has not been read
support_ticket_document array Document attached to the comment
      doc_name string Name or title of the document
      doc_size integer Size of the document. Must be a whole number
      doc_type string Type of document such as “Compliance” or “Registration”
       doc_file string File path to the document
       url_path string URL path for the document such as http://domain.com/sample.pdf
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the support ticket comment was created
update_date timestamp Timestamp for the date and time that the support ticket comment was last updated

List all support ticket comments

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/support_ticket_comment"

Example Response

{
    "content": [
        {
            "id": "4eb571c7-fbda-4911-8f58-7802cbc14690",
            "create_date": "2018-04-12T18:08:47.000+0000",
            "update_date": "2018-04-12T18:08:47.000+0000",
            "description": "Tax document assistance - copy of IRS letter requested",
            "has_attachment": true,
            "is_admin": true,
            "is_read": true,
            "support_ticket_id": "c54b31c2-64b6-4562-b288-212e95e42018",
            "support_ticket_documents": [
                {
                    "doc_name": "IRS Letter",
                    "doc_size": 256,
                    "doc_type": "Tax-related document"
                }
            ]
        },
        {
            "id": "fee7b97b-68f2-4ca2-9639-8df04476f282",
            "create_date": "2018-04-12T18:07:40.000+0000",
            "update_date": "2018-04-12T18:07:40.000+0000",
            "description": "Details on deposit",
            "has_attachment": true,
            "is_admin": true,
            "is_read": true,
            "support_ticket_id": "c54b31c2-64b6-4562-b288-212e95e42018",
            "support_ticket_documents": [
                {
                    "doc_name": "deposit confirmation",
                    "url_path": "http://domain.com/sample.pdf",
                    "doc_size": 256,
                    "doc_type": "Confirmation screenshot"
                }
            ]
        }
    ],
    "last": true,
    "total_elements": 2,
    "total_pages": 1,
    "sort": [
        {
            "direction": "DESC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "ascending": false,
            "descending": true
        }
    ],
    "first": true,
    "number_of_elements": 2,
    "size": 25,
    "number": 0
}

Get the information for all support ticket comments defined for your firm. The endpoint returns a list of ids and details for each support ticket. Note that the information for support ticket documents are stored as nested objects within the support ticket comment object.

HTTP REQUEST

GET /support_ticket_comment

Create a support ticket comment

Example Request

curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
                "description": "Details on deposit",
                "has_attachment": true,
                "support_ticket_id": "c54b31c2-64b6-4562-b288-212e95e42018",
                "support_ticket_documents": [
                    {
                        "doc_name": "deposit confirmation",
                        "url_path": "http://domain.com/sample.pdf",
                        "doc_size": 256,
                        "doc_type": "Confirmation screenshot"
                    }
                ]
    }' "https://api.hydrogenplatform.com/electron/v1/support_ticket_comment"

Example Response

{
    "id": "fee7b97b-68f2-4ca2-9639-8df04476f282",
    "create_date": "2018-04-12T18:07:40.000+0000",
    "update_date": "2018-04-12T18:07:40.000+0000",
    "description": "Details on deposit",
    "has_attachment": true,
    "is_admin": true,
    "is_read": true,
    "support_ticket_id": "c54b31c2-64b6-4562-b288-212e95e42018",
    "support_ticket_documents": [
        {
            "doc_name": "deposit confirmation",
            "url_path": "http://domain.com/sample.pdf",
            "doc_size": 256,
            "doc_type": "Confirmation screenshot"
        }
    ]
}

Create a new support ticket comment for a support ticket. The create_date will default to the current date. The endpoint returns a support_ticket_comment_id used to track and manage the support ticket comment. Note that the information for support ticket documents are stored as nested objects within the support ticket comment object and are created at the same time as the support ticket comment.

HTTP REQUEST

POST /support_ticket_comment

ARGUMENTS

Parameter Type Required Description
support_ticket_id UUID required The id of the support ticket to which the comment belongs
description string optional Details and description of the information included in the support ticket comment
has_attachment boolean optional Indicates if the comment has a document attached. Defaults to false which indicates it does not have an attachment
is_admin boolean optional Indicates if the support ticket comment has been added by an internal administrator (as opposed to a client). Defaults to false which indicates that it has not been added by an administrator
is_read boolean optional Indicates if the support ticket comment has been read by the internal user to whom the support ticket is assigned for resolution. Defaults to false which indicates that it has not been read
support_ticket_document array optional Document attached to the comment
      doc_name string required Name or title of the document
      doc_size integer optional Size of the document. Must be a whole number
      doc_type string optional Type of document such as “Compliance” or “Registration”
       doc_file string optional File path to the document
       url_path string optional URL path for the document such as http://domain.com/sample.pdf
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a support ticket comment

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/support_ticket_comment/fee7b97b-68f2-4ca2-9639-8df04476f282"

Example Response

{
    "id": "fee7b97b-68f2-4ca2-9639-8df04476f282",
    "create_date": "2018-04-12T18:07:40.000+0000",
    "update_date": "2018-04-12T18:07:40.000+0000",
    "description": "Details on deposit",
    "has_attachment": true,
    "is_admin": true,
    "is_read": true,
    "support_ticket_id": "c54b31c2-64b6-4562-b288-212e95e42018",
    "support_ticket_documents": [
        {
            "doc_name": "deposit confirmation",
            "url_path": "http://domain.com/sample.pdf",
            "doc_size": 256,
            "doc_type": "Confirmation screenshot"
        }
    ]
}

Retrieve the information for a support ticket comment defined for a support ticket. The support_ticket_comment_id must be provided. The endpoint returns the support_ticket_comment_id and the details for the support ticket comment specified.

HTTP REQUEST

GET /support_ticket_comment/{support_ticket_comment_id}

Update a support ticket comment

Example Request

curl -X PUT -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
            "description": "Details on deposit",
            "has_attachment": true,
            "support_ticket_id": "c54b31c2-64b6-4562-b288-212e95e42018",
            "support_ticket_documents": [
                {
                    "doc_name": "deposit confirmation",
                    "url_path": "http://domain.com/sample.pdf",
                    "doc_size": 256,
                    "doc_type": "Confirmation screenshot"
                }
            ]
    }' "https://api.hydrogenplatform.com/electron/v1/support_ticket_comment/fee7b97b-68f2-4ca2-9639-8df04476f282"

Example Response

{
    "id": "fee7b97b-68f2-4ca2-9639-8df04476f282",
    "create_date": "2018-04-12T18:07:40.000+0000",
    "update_date": "2018-04-12T18:07:40.000+0000",
    "description": "Details on deposit",
    "has_attachment": true,
    "is_admin": true,
    "is_read": true,
    "support_ticket_id": "c54b31c2-64b6-4562-b288-212e95e42018",
    "support_ticket_documents": [
        {
            "doc_name": "deposit confirmation",
            "url_path": "http://domain.com/sample.pdf",
            "doc_size": 256,
            "doc_type": "Confirmation screenshot"
        }
    ]
}

Update the information for a support ticket comments defined for a support ticket. The support_ticket_comment_id must be provided. To obtain the appropriate support_ticket_comment_id use the GET /support_ticket_comment endpoint to view all support ticket comments defined for your firm and their current information. The details to be maintained and the details to be updated must also be provided. The endpoint returns the support_ticket_comment_id and details for the support ticket comment.

HTTP REQUEST

PUT /support_ticket_comment/{support_ticket_comment_id}

Delete a support ticket comment

Example Request

curl -X DELETE -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/support_ticket_comment/fee7b97b-68f2-4ca2-9639-8df04476f282"

Response (204 No Content)

Permanently delete a support ticket comment for a support ticket. The support_ticket_comment_id must be provided. To obtain the appropriate support_ticket_comment_id use the GET /support_ticket_comment endpoint to view all support ticket comments defined for a support ticket. This will delete the support_ticket_comment_id and all associated information, including any nested documents.

HTTP REQUEST

DELETE /support_ticket_comment/{support_ticket_comment_id}

Chat

The chat entity represents log records of chats that customer service representatives have had with your firm’s customers.

Field Type Description
id UUID The id for the chat log record
chat_log string Short description of the subject of the chat
assigned_to UUID The id of the internal user to whom the chat is assigned
comments string Additional information on the content of the chat
is_notification boolean Indicates if there is a notification associated with the chat log. Defaults to true or that there is a notification
is_open boolean Indicates if the chat is still open. Defaults to true which indicates that the chat is still open
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all chat logs

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/chat"

Example Response

{
    "content": [
        {
            "id": "b3d03b64-2a59-4417-8e7c-c924b445558e",
            "create_date": "2018-04-12T18:17:22.000+0000",
            "update_date": "2018-04-12T18:17:22.000+0000",
            "assigned_to": "107516c3-9035-4811-af7c-501be5a1fe26",
            "comments": "I am having trouble funding my account!",
            "chat_log": "please message chat support for assistance or visit FAQ",
            "is_notification": true,
            "is_open": true
        },
        {
            "id": "eca55dc7-d9ea-47ee-b05a-e6f22b859595",
            "create_date": "2018-04-10T22:29:36.000+0000",
            "update_date": "2018-04-10T22:29:36.000+0000",
            "assigned_to": "fbc03484-08e8-446d-83aa-6d6cc236355e",
            "comments": "Client is an existing client linking a new account",
            "chat_log": "Help needed to link a new account",
            "is_notification": true,
            "is_open": true
        }
    ],
    "last": true,
    "total_elements": 2,
    "total_pages": 1,
    "sort": [
        {
            "direction": "DESC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "ascending": false,
            "descending": true
        }
    ],
    "first": true,
    "number_of_elements": 2,
    "size": 25,
    "number": 0
}

Get the information for all chat log records defined for your firm. The endpoint returns a list of ids and details for all chat log records.

HTTP REQUEST

GET /chat

Create a chat log

Example Request

curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
            "assigned_to": "107516c3-9035-4811-af7c-501be5a1fe26",
            "comments": "I am having trouble funding my account!",
            "chat_log": "please message chat support for assistance or visit FAQ"
    }' "https://api.hydrogenplatform.com/electron/v1/chat"

Example Response

{
    "id": "b3d03b64-2a59-4417-8e7c-c924b445558e",
    "create_date": "2018-04-12T18:17:22.000+0000",
    "update_date": "2018-04-12T18:17:22.000+0000",
    "assigned_to": "107516c3-9035-4811-af7c-501be5a1fe26",
    "comments": "I am having trouble funding my account!",
    "chat_log": "please message chat support for assistance or visit FAQ",
    "is_notification": true,
    "is_open": true
}

Create a new chat log record for your firm. The create_date will default to the current date. The endpoint returns a chat_id used to manage the chat log record.

HTTP REQUEST

POST /chat

ARGUMENTS

Parameter Type Required Description
chat_log string required Short description of the subject of the chat
assigned_to UUID optional The id of the internal user to whom the chat is assigned
comments string optional Additional information on the content of the chat
is_notification boolean optional Indicates if there is a notification associated with the chat log. Defaults to true or that there is a notification
is_open boolean optional Indicates if the chat is still open. Defaults to true which indicates that the chat is still open
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a chat log

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/chat/b3d03b64-2a59-4417-8e7c-c924b445558e"

Example Response

{
    "id": "b3d03b64-2a59-4417-8e7c-c924b445558e",
    "create_date": "2018-04-12T18:17:22.000+0000",
    "update_date": "2018-04-12T18:17:22.000+0000",
    "assigned_to": "107516c3-9035-4811-af7c-501be5a1fe26",
    "comments": "I am having trouble funding my account!",
    "chat_log": "please message chat support for assistance or visit FAQ",
    "is_notification": true,
    "is_open": true
}

Retrieve the information for a chat log record. The chat_id must be provided. The endpoint returns the chat_id and the details for the chat log record specified.

HTTP REQUEST

GET /chat/{chat_id}

Update a chat log

Example Request

curl -X PUT -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
            "assigned_to": "107516c3-9035-4811-af7c-501be5a1fe26",
            "comments": "I am having trouble funding my account!",
            "chat_log": "please message chat support for assistance or visit FAQ",
            "is_notification": false,
            "is_open": false,
            "secondary_id": "12345"
    }' "https://api.hydrogenplatform.com/electron/v1/chat/b3d03b64-2a59-4417-8e7c-c924b445558e"

Example Response

{
    "id": "b3d03b64-2a59-4417-8e7c-c924b445558e",
    "create_date": "2018-04-12T18:17:22.000+0000",
    "update_date": "2018-04-12T18:17:22.000+0000",
    "assigned_to": "107516c3-9035-4811-af7c-501be5a1fe26",
    "comments": "I am having trouble funding my account!",
    "chat_log": "please message chat support for assistance or visit FAQ",
    "is_notification": false,
    "is_open": false,
    "secondary_id": "12345"
}

Update a chat log record. The chat_id must be provided. To obtain the appropriate chat_id, use the GET /chat endpoint to view all chat log records for your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the chat_id and the details for the chat log record.

HTTP REQUEST

PUT /chat/{chat_id}

Delete a chat log

Example Request

curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/chat/b3d03b64-2a59-4417-8e7c-c924b445558e"

Response (204 No Content)

HTTP REQUEST

DELETE /chat/{chat_id}

Consultation

Consultation represents a request from a client or user for a consultation for investment advice (or other guidance). The consultation request passes along contact information and key facts for the client/user.

Field Type Description
id UUID The id for the consultation request
account_type_id UUID The id of the account type for the account of the client who submitted the request
additional_questions string Any additional questions to be answered during the consultation
assets string Asset value for a client’s account
assigned string Internal user to whom the request is assigned
calendar boolean Indicates if the request is scheduled on the calendar. Defaults to false which indicates it has not been scheduled
category string Category for the purpose of the request such as “New Account”
comments string Additional information on the purpose of the request such as “Would like to open a new account”
client_id UUID The id for the client that submitted the request
time date Date and time that the consultation is scheduled
close_time date Date and time that the consultation request has been resolved and closed
closed_by string Internal user that has resolved and closed the consultation request
completed boolean Indicates if the consultation request has been resolved and closed. Defaults to false which indicates it has not been closed
name string Name of the client that submitted the request
email string Contact email or the client in the format [email protected]
firmname string Firm name for the client’s firm
phone string Contact phone number for the client
investment_allocation string The type of investment allocation with which the client is associated
investment_location string Description of the location of the client’s investments
investment_objectives string Brief information on the client’s investment objectives
is_active boolean Indicates if the consultation request is active. Defaults to true which indicates it is active
reminded boolean Indicates if a reminder of the consultation was sent to the client. Defaults to false which indicates it has not been sent
source string Information on how the client has requested the consultation
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all consultations

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/consultation"

Example Response

{
    "content": [
        {
            "id": "998fbcdf-b071-49a5-ab8c-8747ea430136",
            "create_date": "2018-04-12T18:02:42.000+0000",
            "update_date": "2018-04-12T18:02:42.000+0000",
            "additional_questions": "None",
            "assigned": "Jimmy Admin",
            "calendar": true,
            "category": "Consultation",
            "client_id": "099961da-7f41-4309-950f-2b51689a0033",
            "close_time": "2018-01-23",
            "closed_by": "Jimmy Admin",
            "comments": "Client is risk averse and looking to close account",
            "completed": true,
            "email": "[email protected]",
            "firmname": "fabulous llc",
            "investment_allocation": "moderate",
            "investment_location": "US",
            "investment_objectives": "long term growth",
            "is_active": true,
            "name": "Jane Dowell",
            "phone": "5557774444",
            "reminded": true,
            "source": "hydrogen chat",
            "time": "2018-01-24"
        },
        {
            "id": "34a0c608-4bf3-4157-8580-bcdc661a8f35",
            "create_date": "2018-04-10T22:38:36.000+0000",
            "update_date": "2018-04-10T22:38:36.000+0000",
            "assets": "15000",
            "calendar": false,
            "category": "new investor",
            "comments": "Would like to learn more about investing",
            "completed": false,
            "is_active": true,
            "reminded": false
        }
    ],
    "last": true,
    "total_elements": 2,
    "total_pages": 1,
    "sort": [
        {
            "direction": "DESC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "ascending": false,
            "descending": true
        }
    ],
    "first": true,
    "number_of_elements": 2,
    "size": 25,
    "number": 0
}

Get the information for all consultation requests defined for your firm. The endpoint returns a list of ids and the details for all consultation requests.

HTTP REQUEST

GET /consultation

Create a consultation

Example Request

curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
            "additional_questions": "None",
            "assigned": "Jimmy Admin",
            "category": "Consultation",
            "calendar": true,
            "client_id": "099961da-7f41-4309-950f-2b51689a0033",
            "close_time": "2018-01-23",
            "closed_by": "Jimmy Admin",
            "comments": "Client is risk averse and looking to close account",
            "completed": true,
            "email": "[email protected]",
            "firmname": "fabulous llc",
            "investment_allocation": "moderate",
            "investment_location": "US",
            "investment_objectives": "long term growth",
            "name": "Jane Dowell",
            "phone": "5557774444",
            "reminded": true,
            "source": "hydrogen chat",
            "time": "2018-01-24"
    }' "https://api.hydrogenplatform.com/electron/v1/consultation"

Example Response

{
    "id": "998fbcdf-b071-49a5-ab8c-8747ea430136",
    "create_date": "2018-04-12T18:02:42.000+0000",
    "update_date": "2018-04-12T18:02:42.000+0000",
    "additional_questions": "None",
    "assigned": "Jimmy Admin",
    "calendar": true,
    "category": "Consultation",
    "client_id": "099961da-7f41-4309-950f-2b51689a0033",
    "close_time": "2018-01-23",
    "closed_by": "Jimmy Admin",
    "comments": "Client is risk averse and looking to close account",
    "completed": true,
    "email": "[email protected]",
    "firmname": "fabulous llc",
    "investment_allocation": "moderate",
    "investment_location": "US",
    "investment_objectives": "long term growth",
    "is_active": true,
    "name": "Jane Dowell",
    "phone": "5557774444",
    "reminded": true,
    "source": "hydrogen chat",
    "time": "2018-01-24"
}

Create a new consultation request from a client for your firm. The create_date will default to the current date. The endpoint returns a consultation_id used to manage the consultation request.

HTTP REQUEST

POST /consultation

ARGUMENTS

Parameter Type Required Description
account_type_id UUID optional The id of the account type for the account of the client who submitted the request
additional_questions string optional Any additional questions to be answered during the consultation
assets string optional Asset value for a client’s account
assigned string optional Internal user to whom the request is assigned
calendar boolean optional Indicates if the request is scheduled on the calendar. Defaults to false which indicates it has not been scheduled
category string optional Category for the purpose of the request such as “New Account”
comments string optional Additional information on the purpose of the request such as “Would like to open a new account”
client_id UUID optional The id for the client that submitted the request
time date optional Date and time that the consultation is scheduled
close_time date optional Date and time that the consultation request has been resolved and closed
closed_by string optional Internal user that has resolved and closed the consultation request
completed boolean optional Indicates if the consultation request has been resolved and closed. Defaults to false which indicates it has not been closed
name string optional Name of the client that submitted the request
email string optional Contact email or the client in the format [email protected]
firmname string optional Firm name for the client’s firm
phone string optional Contact phone number for the client
investment_allocation string optional The type of investment allocation with which the client is associated
investment_location string optional Description of the location of the client’s investments
investment_objectives string optional Brief information on the client’s investment objectives
is_active boolean optional Indicates if the consultation request is active. Defaults to true which indicates it is active
reminded boolean optional Indicates if a reminder of the consultation was sent to the client. Defaults to false which indicates it has not been sent
source string optional Information on how the client has requested the consultation
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a consultation

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/consultation/998fbcdf-b071-49a5-ab8c-8747ea430136"

Example Response

{
    "id": "998fbcdf-b071-49a5-ab8c-8747ea430136",
    "create_date": "2018-04-12T18:02:42.000+0000",
    "update_date": "2018-04-12T18:02:42.000+0000",
    "additional_questions": "None",
    "assigned": "Jimmy Admin",
    "calendar": true,
    "category": "Consultation",
    "client_id": "099961da-7f41-4309-950f-2b51689a0033",
    "close_time": "2018-01-23",
    "closed_by": "Jimmy Admin",
    "comments": "Client is risk averse and looking to close account",
    "completed": true,
    "email": "[email protected]",
    "firmname": "fabulous llc",
    "investment_allocation": "moderate",
    "investment_location": "US",
    "investment_objectives": "long term growth",
    "is_active": true,
    "name": "Jane Dowell",
    "phone": "5557774444",
    "reminded": true,
    "source": "hydrogen chat",
    "time": "2018-01-24"
}

Retrieve the information for a consultation request. The consultation_id must be provided. The endpoint returns the consultation_id and the details for the consultation request specified.

HTTP REQUEST

GET /consultation/{consultation_id}

Update a consultation

Example Request

curl -X PUT -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
            "additional_questions": "None",
            "assigned": "Jimmy Admin",
            "calendar": true,
            "category": "Consultation",
            "client_id": "099961da-7f41-4309-950f-2b51689a0033",
            "close_time": "2018-01-23",
            "closed_by": "Jimmy Admin",
            "comments": "Client is risk averse and looking to close account",
            "completed": true,
            "email": "[email protected]",
            "firmname": "fabulous llc",
            "investment_allocation": "moderate",
            "investment_location": "US",
            "investment_objectives": "long term growth",
            "name": "Jane Dowell",
            "phone": "5557774444",
            "reminded": true,
            "source": "hydrogen chat",
            "time": "2018-01-24"
    }' "https://api.hydrogenplatform.com/electron/v1/consultation/998fbcdf-b071-49a5-ab8c-8747ea430136"

Example Response

{
    "id": "998fbcdf-b071-49a5-ab8c-8747ea430136",
    "create_date": "2018-04-12T18:02:42.000+0000",
    "update_date": "2018-04-12T18:02:42.000+0000",
    "additional_questions": "None",
    "assigned": "Jimmy Admin",
    "calendar": true,
    "category": "Consultation",
    "client_id": "099961da-7f41-4309-950f-2b51689a0033",
    "close_time": "2018-01-23",
    "closed_by": "Jimmy Admin",
    "comments": "Client is risk averse and looking to close account",
    "completed": true,
    "email": "[email protected]",
    "firmname": "fabulous llc",
    "investment_allocation": "moderate",
    "investment_location": "US",
    "investment_objectives": "long term growth",
    "is_active": true,
    "name": "Jane Dowell",
    "phone": "5557774444",
    "reminded": true,
    "source": "hydrogen chat",
    "time": "2018-01-24"
}

Update the information for a consultation request. The consultation_id must be provided. To obtain the appropriate consultation_id, use the GET /consultation endpoint to view all consultation requests for your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the consultation_id and the details for the consultation request. If you wish to close the request without deleting it, use this endpoint to change the is_active field to false and the completed field to true.

HTTP REQUEST

PUT /consultation/{consultation_id}

Delete a consultation

Example Request

curl -X DELETE -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/consultation/998fbcdf-b071-49a5-ab8c-8747ea430136"

Response (204 No Content)

Permanently delete a consultation request. The consultation_id must be provided. To obtain the appropriate consultation_id, use the GET /consultation endpoint to view all consultation requests for your firm. This deletes the consultation_id and the details for the consultation request. If you wish to close the request without deleting it, use the PUT /consultation endpoint to change the is_active field to false and the completed field to true.

HTTP REQUEST

DELETE /consultation/{consultation_id}

Sales Inquiry

Sale inquiries represent potential business or sales opportunities such as a lead or a request for information from a potential partner or client. These can be used to build and track a sales pipeline.

Field Type Description
id UUID The id for the sales inquiry
questions string Details on the questions received within the inquiry
subject string Short title for the subject of the inquiry
assigned string The id of the internal user assigned to the sales inquiry
open_time date Date and time that the inquiry was opened
close_time date Date and time that the inquiry was closed. Defaults to the current date
closed_by string The id for the internal user that closed the inquiry
comments string Any comments associated with the sales inquiry for background
contacted boolean Indicates if the individual associated with the inquiry was contacted. Defaults to false which indicates that he/she was not contacted
email string Contact email for the individual associated with the inquiry such as [email protected]
firm_name string Name of the firm associated with the inquiry
first_name string First name of the individual associated with the inquiry
last_name string Last name of the individual associated with the inquiry
ip string IP address for the individual associated with the inquiry
method string Method with which the inquiry was received such as “email” or “phone”
phone string Phone number for the individual associated with the inquiry
title string Title of the individual associated with the inquiry
solution string Details on the resolution of the inquiry
referral_source string Details on how the individual associated with the inquiry was referred
notification boolean Indicates if a notification is issued for inquiry. Defaults to true which indicates that there is a notification
metadata map Custom information associated with the sales inquiry in the format key:value. See Metadata
secondary_id string Alternate id that can be used to identify the object such as an internal id
create_date timestamp Timestamp for the date and time that the record was created
update_date timestamp Timestamp for the date and time that the record was last updated

List all sales inquiries

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/sales"

Example Response

{
    "content": [
        {
            "id": "8de18968-94c7-4cfe-b5d0-413219804624",
            "create_date": "2018-04-10T22:47:17.000+0000",
            "update_date": "2018-04-10T22:47:17.000+0000",
            "assigned": "fbc03484-08e8-446d-83aa-6d6cc236355e",
            "close_time": "2018-04-10",
            "closed_by": "fbc03484-08e8-446d-83aa-6d6cc236355e",
            "contacted": false,
            "notification": true,
            "firm_name": "Mom&Pop Bank",
            "email": "[email protected]",
            "open_time": "2018-04-10",
            "questions": "Would like to learn more about products offered",
            "metadata": {
                "AUM": "1 billion",
                "Broker": "Schwab"
            }
        },
        {
            "id": "00027e21-9183-4992-acfa-2d6e355a84b4",
            "create_date": "2018-04-12T18:00:13.000+0000",
            "update_date": "2018-04-12T18:00:13.000+0000",
            "assigned": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
            "close_time": "2018-01-23",
            "closed_by": "acbeb252-9b62-4fb9-bc33-0f160d40c16b",
            "comments": "Interested in building an investment app",
            "contacted": true,
            "email": "[email protected]",
            "firm_name": "Banco de Combo ",
            "first_name": "Miguel",
            "ip": "4.440.40.240",
            "last_name": "Perez",
            "method": "email",
            "notification": true,
            "open_time": "2018-04-12",
            "phone": "5556667777",
            "questions": "Is it possible to organize a demo?",
            "referral_source": "N/A",
            "solution": "Yes, we can demo hydrogen",
            "subject": "Colombian Bank for Hydrogen",
            "title": "Head of Development",
            "metadata": {}
        },
    ],
    "total_pages": 1,
    "total_elements": 2,
    "last": true,
    "first": true,
    "sort": [
        {
            "direction": "ASC",
            "property": "updateDate",
            "ignore_case": false,
            "null_handling": "NATIVE",
            "descending": false,
            "ascending": true
        }
    ],
    "number_of_elements": 2,
    "size": 25,
    "number": 0
}

Get all sales inquiries defined for your firm. The endpoint returns a list of ids and details for each sale inquiry. Note that the metadata information is stored as a nested object under the sales inquiry object.

HTTP REQUEST

GET /sales

Create a sales inquiry

Example Request

curl -X POST -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
            "assigned": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
            "close_time": "2018-01-23",
            "closed_by": "acbeb252-9b62-4fb9-bc33-0f160d40c16b",
            "comments": "Interested in building an investment app",
            "contacted": true,
            "email": "[email protected]",
            "firm_name": "Banco de Combo ",
            "first_name": "Miguel",
            "ip": "4.440.40.240",
            "last_name": "Perez",
            "method": "email",
            "phone": "5556667777",
            "questions": "Is it possible to organize a demo?",
            "referral_source": "N/A",
            "solution": "Yes, we can demo hydrogen",
            "subject": "Colombian Bank for Hydrogen",
            "title": "Head of Development"
    }' "https://api.hydrogenplatform.com/electron/v1/sales"

Example Response

{
    "id": "00027e21-9183-4992-acfa-2d6e355a84b4",
    "create_date": "2018-04-12T18:00:13.000+0000",
    "update_date": "2018-04-12T18:00:13.000+0000",
    "assigned": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
    "close_time": "2018-01-23",
    "closed_by": "acbeb252-9b62-4fb9-bc33-0f160d40c16b",
    "comments": "Interested in building an investment app",
    "contacted": true,
    "email": "[email protected]",
    "firm_name": "Banco de Combo ",
    "first_name": "Miguel",
    "ip": "4.440.40.240",
    "last_name": "Perez",
    "method": "email",
    "notification": true,
    "open_time": "2018-04-12",
    "phone": "5556667777",
    "questions": "Is it possible to organize a demo?",
    "referral_source": "N/A",
    "solution": "Yes, we can demo hydrogen",
    "subject": "Colombian Bank for Hydrogen",
    "title": "Head of Development",
    "metadata": {}
}

Create a new sales inquiry for your firm. The create_date will default to the current date. The endpoint returns a sales_id used to manage the sales inquiry.

HTTP REQUEST

POST /sales

ARGUMENTS

Parameter Type Required Description
questions string required Details on the questions received within the inquiry
subject string optional Short title for the subject of the inquiry
assigned string optional The id of the internal user assigned to the sales inquiry
open_time date optional Date and time that the inquiry was opened
close_time date optional Date and time that the inquiry was closed. Defaults to the current date
closed_by string optional The id for the internal user that closed the inquiry
comments string optional Any comments associated with the sales inquiry for background
contacted boolean optional Indicates if the individual associated with the inquiry was contacted. Defaults to false which indicates that he/she was not contacted
email string optional Contact email for the individual associated with the inquiry such as [email protected]
firm_name string optional Name of the firm associated with the inquiry
first_name string optional First name of the individual associated with the inquiry
last_name string optional Last name of the individual associated with the inquiry
ip string optional IP address for the individual associated with the inquiry
method string optional Method with which the inquiry was received such as “email” or “phone”
phone string optional Phone number for the individual associated with the inquiry
title string optional Title of the individual associated with the inquiry
solution string optional Details on the resolution of the inquiry
referral_source string optional Details on how the individual associated with the inquiry was referred
notification boolean optional Indicates if a notification is issued for inquiry. Defaults to true which indicates that there is a notification
metadata map optional Custom information associated with the sales inquiry in the format key:value. See Metadata
secondary_id string optional Alternate id that can be used to identify the object such as an internal id

Retrieve a sales inquiry

Example Request

curl -X GET -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/sales/00027e21-9183-4992-acfa-2d6e355a84b4"

Example Response

{
    "id": "00027e21-9183-4992-acfa-2d6e355a84b4",
    "create_date": "2018-04-12T18:00:13.000+0000",
    "update_date": "2018-04-12T18:00:13.000+0000",
    "assigned": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
    "close_time": "2018-01-23",
    "closed_by": "acbeb252-9b62-4fb9-bc33-0f160d40c16b",
    "comments": "Interested in building an investment app",
    "contacted": true,
    "email": "[email protected]",
    "firm_name": "Banco de Combo ",
    "first_name": "Miguel",
    "ip": "4.440.40.240",
    "last_name": "Perez",
    "method": "email",
    "notification": true,
    "open_time": "2018-04-12",
    "phone": "5556667777",
    "questions": "Is it possible to organize a demo?",
    "referral_source": "N/A",
    "solution": "Yes, we can demo hydrogen",
    "subject": "Colombian Bank for Hydrogen",
    "title": "Head of Development",
    "metadata": {}
}

Retrieve the information for a sales inquiry. The unique sales_id must be provided. The endpoint returns the sales_id and the details for the sales inquiry specified.

HTTP REQUEST

GET /sales/{sales_id}

Update a sales inquiry

Example Request

curl -X PUT -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    -H "Content-Type: application/json" \
    -d '{
            "assigned": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
            "close_time": "2018-01-23",
            "closed_by": "acbeb252-9b62-4fb9-bc33-0f160d40c16b",
            "comments": "Interested in building an investment app",
            "contacted": true,
            "email": "[email protected]",
            "firm_name": "Banco de Combo ",
            "first_name": "Miguel",
            "ip": "4.440.40.240",
            "last_name": "Perez",
            "method": "email",
            "notification": true,
            "phone": "5556667777",
            "questions": "Is it possible to organize a demo?",
            "referral_source": "N/A",
            "solution": "Yes, we can demo hydrogen",
            "subject": "Colombian Bank for Hydrogen",
            "title": "Head of Development"
    }' "https://api.hydrogenplatform.com/electron/v1/sales/00027e21-9183-4992-acfa-2d6e355a84b4"

Example Response

{
    "id": "00027e21-9183-4992-acfa-2d6e355a84b4",
    "create_date": "2018-04-12T18:00:13.000+0000",
    "update_date": "2018-04-12T18:00:13.000+0000",
    "assigned": "19b92022-7dbf-4b4d-8165-2c27cd4aede5",
    "close_time": "2018-01-23",
    "closed_by": "acbeb252-9b62-4fb9-bc33-0f160d40c16b",
    "comments": "Interested in building an investment app",
    "contacted": true,
    "email": "[email protected]",
    "firm_name": "Banco de Combo ",
    "first_name": "Miguel",
    "ip": "4.440.40.240",
    "last_name": "Perez",
    "method": "email",
    "notification": true,
    "open_time": "2018-04-12",
    "phone": "5556667777",
    "questions": "Is it possible to organize a demo?",
    "referral_source": "N/A",
    "solution": "Yes, we can demo hydrogen",
    "subject": "Colombian Bank for Hydrogen",
    "title": "Head of Development",
    "metadata": {}
}

Update the information for a sales inquiry. The unique sales_id must be provided. To obtain the appropriate sales_id, use the GET /sales endpoint to view all sales inquiries for your firm and their current information. The details to be updated and the details to be maintained must also be provided. The endpoint returns the sales_id and the details for the sales inquiry. If you wish to close the sales inquiry without permanently deleting it, use this endpoint to update the close_time and the solution fields.

HTTP REQUEST

PUT /sales/{sales_id}

Delete a sales inquiry

Example Request

curl -X DELETE -H "Authorization: Bearer e7cf805b-4307-41e9-8b58-90b6359fa900" \
    "https://api.hydrogenplatform.com/electron/v1/sales/00027e21-9183-4992-acfa-2d6e355a84b4"

Response (204 No Content)

Permanently delete a sales inquiry. The unique sales_id must be provided. To obtain the appropriate sales_id, use the GET /sales endpoint to view all sales inquiries for your firm. This deletes the sales_id and the details for the sales inquiry. If you wish to close the sales inquiry without permanently deleting it, use the PUT /sales endpoint to update the close_time and the solution fields.

HTTP REQUEST

DELETE /sales/{sales_id}