Overview (Start Here)
A quick overview of the platform, functionality, and high level workflows.
This guide aims to familiarize developers with essential programatic flows to enable secure user onboarding using a OAuth 2.0 Client Credentials Grant on the platform.
I'm a Developer, what is the functional objective of this documentation?
- Creating an authentication portal to handle account and session creation. Enabling the user to be securely redirected from your platform to MSPCentric's.
- Creating/exposing endpoints that return an Organizations active Vendor Accounts and Vendor Services. MSPCentric connects PSA's with Vendors. This enables Partners to do things like reconcile their Vendor billing against their PSA, using the latest data pulled directly from the Vendor.
Prerequisites
- Basic understanding of REST APIs and OAuth 2.0
- Basic MSP domain knowledge.
Example Implementations
There are several approaches to integrating with the MSPCentric Platform.
Given the requirements of the Integrator, one may place the responsibilities of PSA Integration and Vendor Integration on the Partner. However, the programmatic method of authenticating the Vendor Integration is generally recommended for the optimal user experience.
The more comprehensive the implementation, the better the user experience is for Partners.
Simple Authentication Flow Example
This example shows the basic sequence of events given:
- One User
- First Time Authenticating
- Manual Vendor Integration Setup Required of User
Integrator Responsibilities
- Create Organization and User
- Retrieve OEM Token
- Store OEM Token
- Create User Session
- Redirect Partner to MSPCentric
Partner Responsibilities
- Creating and inputing PSA API credentials
- Creating and inputing Vendor API credentials
Manual Sequence
sequenceDiagram
actor MSP as Partner
participant PSA as PSA
participant MSS as MSPCentric Server
participant MSC as MSPCentric Client
participant V as Integrator
Note over V, PSA: Organization Creation & Authentication Flow
%% Organization Creation
MSP->>V: Actions MSPCentric App CTA
V->>MSS: Create Organization Request
MSS->>MSS: Create Organization
MSS-->>V: OEM Token
%% Secure Token Storage
V->>V: Store OEM Token Securely<br/>(Associated with Partner Org)
%% Session Creation
V->>MSS: Request Session Token<br/>(using OEM Token)
MSS->>MSS: Generate Session
MSS-->>V: Magic Link
%% Partner Redirect
V->>MSC: Redirect Partner to MSPCentric Client<br/>(with Magic Link)
Note over MSC: Partner can now access<br/>MSPCentric platform
MSP->>PSA: Retrieves API Credentials
MSP->>MSC: Enters PSA Credentials
MSC->>MSS: Test Credentials
MSS-->>MSC: Integration Created
MSS-->>MSS: Initiate PSA Sync
MSS-->>MSC: Inform of Sync Completion
Note over MSC: Partner can now Begin Vendor Integration
MSP->>V: Retrieve API Credentials
MSP->>MSC: Enter Vendor Credentials
MSC->>MSS: Validates Credentials
MSS->>MSS: Integration Created
Simple Programmatic Vendor Authentication Flow Example
This example shows the basic sequence of events given:
- Single User
- First Time Authenticating
- Integrator writes Vendor API Credentials to MSPCentric.
Integrator Responsibilities
- Create organization
- Retrieve OEM Token
- Store OEM Token
- Creating and instantiating Vendor API Credentials
Partner Responsibilities
- Creating and inputing PSA API credentials
Vendor Supported Sequence
sequenceDiagram
actor MSP as Partner
participant PSA as PSA
participant MSS as MSPCentric Server
participant MSC as MSPCentric Client
participant V as Integrator
Note over V, PSA: Organization Creation & Authentication Flow
%% Organization Creation
MSP->>V: Actions MSPCentric App CTA
V->>MSS: Create Organization Request
MSS->>MSS: Create Organization
MSS-->>V: OEM Token
%% Secure Token Storage
V->>V: Store OEM Token Securely<br/>(Associated with Partner Org)
Note over V: Integration Creation Begins
V->>MSS: Get Vendor
MSS-->>V: Returns Vendor With Auth Template
V->>V: Creates API Credentials
V->>MSS: Create Integration With Credentials
%% Session Creation
V->>MSS: Request Session Token<br/>(using OEM Token)
MSS->>MSS: Generate Session
MSS-->>V: Magic Link
%% Partner Redirect
V->>MSC: Redirect Partner to MSPCentric Client<br/>(with Magic Link)
Note over MSC: Partner can now access<br/>MSPCentric platform
MSP->>PSA: Retrieves API Credentials
MSP->>MSC: Enters PSA Credentials
MSC->>MSS: Test Credentials
MSS-->>MSC: Integration Created
MSS-->>MSS: Initiate PSA Sync
MSS-->>MSC: Inform of Sync Completion
Full E2E Example Flow
This flow illustrates an e2e happy path for a Partner.
sequenceDiagram
actor MSP as Partner
participant PSA as PSA
participant MSS as MSPCentric Server
participant MSC as MSPCentric Client
participant V as Integrator
Note over V, PSA: Organization Creation & Authentication Flow
%% Organization Creation
MSP->>V: Actions MSPCentric App CTA
V->>MSS: Create Organization Request
MSS->>MSS: Create Organization
MSS-->>V: OEM Token
%% Secure Token Storage
V->>V: Store OEM Token Securely<br/>(Associated with Partner Org)
Note over V: Integration Creation Begins
V->>MSS: Get Vendor
MSS-->>V: Returns Vendor With Auth Template
V->>V: Creates API Credentials
V->>MSS: Create Integration With Credentials
V->>MSS: Request Session Token<br/>(using OEM Token)
MSS->>MSS: Generate Session
MSS-->>V: Magic Link
V->>MSC: Redirect Partner to MSPCentric Client<br/>(with Magic Link)
Note over MSC: Partner can now access<br/>MSPCentric platform
Note over MSP: PSA Integration Wizard Start
MSP->>PSA: Retrieves API Credentials
MSP->>MSC: Enters PSA Credentials
MSC->>MSS: Test Credentials
MSS-->>MSC: Integration Created
MSS->>MSS: Initiate PSA Sync
MSS->>PSA: Fetch PSA Data
PSA-->>MSS:
MSS-->>MSC: Inform of Sync Completion
MSC-->>MSC: Redirect to Vendor Integration wizard
MSC->>MSS: Start VAccount Import
MSS->>V: Get Active Accounts
V-->>MSS: Returns Accounts
MSS->>MSS: Create Account Mappings
MSS-->>MSC: Return Mappings for mapping
MSP->MSC: Maps PSA Account to VAccount
MSC->>MSS: Assign to Mapping
MSS-->>MSC: Successfully mapped
MSP->>MSC: Continue to Service Mapping
MSC->>MSS: Start VService Import
MSS->>V: Get Active Services
V-->>MSS: Returns Services
MSS->>MSS: Create Service Mappings
MSS-->>MSC: Return Service Mappings for mapping
MSP->>MSC: Maps PSA Service to VService
MSC->>MSS: Assign to Mapping
MSS-->>MSC: Successfully mapped
MSP->>MSC: Maps Second PSA Service to VService
MSC->>MSS: Assign to Mapping
MSS-->>MSC: Successfully mapped
MSP->>MSC: Continue to Review & Sync
MSP->>MSC: Accept & Sync
MSC->>MSS: Queue Vendor Sync
loop Every Mapped Account Service Combination
MSS->>V: Get Vendor Billing
V-->>MSS: Successfully retrieved
end
MSS-->>MSC: Inform Sync Completion
Note over MSP: Partner Now Ready to Reconcile
MSC->>MSC: Redirects to Reconcile Page
MSP->>MSC: Approves a Billing Delta
MSC->>MSS: Attempt Contract Adjustment
MSS->>PSA: PATCH Contract
PSA-->>MSS: Success
MSS-->>MSC: Notify of successful adjustmentUpdated 2 months ago
