Looking for something else?
Looking for something else?
Overview: An introduction and high-level overview
Sandbox Environments: The freedom and security to iterate quickly with production-quality data
Authentication: The ins and outs of OAuth 2.0 and how to obtain access tokens
Getting Started: You're here!
Data Models: A brief overview to help you get oriented
API Standards: We're RESTful JSON over https -- familiar, friendly, and effective
File Uploads: Our approach to getting your files where you want them
API Documentation: A live swagger UI using OpenAOI 3.0.1 that plays nicely with Postman and similar tooling
FAQ: We all have questions. Right?
Introduction
A quick walk though to demonstrate how to add new Content to the 4U system.
As part of this, you'll be creating a Content "container" record, adding the first Content Version record and uploading the associated files.
Step 1. Create the Content record
Creates the Content "container" that will hold the Content Version records. Properties of the Content apply across all of the Content Versions it contains.
POST /api/v1/content
{
"type": "document",
"tagIds": [
96,
102
],
"description": "This describes the content that will be loaded."
}
ℹ️ type
: "document" indicates this will be for a PDF or PowerPoint type document (not, for example, a video or audio)
ℹ️ tagIds
: tag choices are predefined; you can find all available tags and their ids using the GET /api/v1/content-tag
endpoint.
Step 2. Create the Content Version record
Using the id
of the Content record that was just created (available in the response from the previous POST
call), create the first Content Version record.
Example of "advisor use only" content with no FINRA letter
POST /api/v1/content/{contentId}/version/
{
"title": "Automation created Product Guide",
"contentFormatId": 122,
"providerRefCode": "RGS-2490-Y20210",
"intendedAudience": "advisor_use_only",
"isFinraRegistered": false,
"finraNoLetterReasons": ["fa_use_only"],
"finraRegisteredApproverName": "Guthrie Saunders",
"categoryIds": [
2,
33
],
"expiresAt": "2034-05-29T00:00:00.000Z"
}
ℹ️ contentFormatId
: format choices are predefined; you can find all available formats and their ids using the GET /api/v1/content-format
endpoint.
ℹ️ intendedAudience
: public_use
or advisor_use_only
ℹ️ finraNoLetterReasons
: allowed values include non_registered_product
, sma
, fa_use_only
, non_product
, and/or third_party_reprint
ℹ️ categoryIds
: categories are predefined; you can find all available categories and their ids using the GET /api/v1/content-category
endpoint
⚠️ categoryIds
: you should include both the parent category and the child category; a future update of the API will remove this requirement
Step 3. Upload the Primary document
Using the id
of the Content record (available in the response from Step 1) and the id
of the Content Version record (available in the response from Step 2), upload the primary document.
Request a file upload for the Content Version you just created:
POST /api/v1/content/{contentId}/version/{versionId}/file-upload
{
"type": "primary",
"fileName": "Fabulous Brochure.pdf"
}
The response to this request will include an uploadUrl
that indicates where the file should be uploaded to:
PUT {uploadUrl}
<body of PUT contains the file contents>
Step 4. Upload Supporting documents (if applicable)
If the Content Version requires supporting documents to be submitted to your partner firm in order to obtain approval, this is done exactly as described in Step 3 for uploading the primary document except that you replace the type
of "primary" with the type
of "supporting".
Step 5. Upload FINRA document (if applicable)
If the Content Version has an associated FINRA filing letter, this is done exactly as performed in Step 3 for uploading the primary document except that you replace the type
of "primary" with the type
of "finra".
Questions or comments?
We're here 4U – integration@4uplatform.com