The process demonstrates how to embed Quickwork in your product.
What you'll need:
Skill level: Expert
Time required: 30 minutes
- Postman desktop app to use the APIs
- Partner APIs: You can obtain these from Quickwork Relationship Manager
There are two partner APIs using which a new user and an existing user can get an associated JWT token, respectively to access Quickwork.
What is a JWT token?
JSON Web Token (JWT) is an open standard authorization token that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. As it is digitally signed, this information is verified and trustworthy.
Registering a new user to get the associated JWT token
The Create User API lets you register a new partner/user and returns a JWT token to access the platform. To do so, open the partner APIs in your postman account and click the Create User API. Then, switch to the Body tab and ensure that the raw button is selected as a beautifier. You'll see three input fields to register a user. Enter the firstname
, lastname
, and uniqueID
of the user:
- The unique ID is a mandatory field and could be an employee ID, partner ID, or register ID.
- The
firstname
andlastname
field is optional.
Once specified, click the Send button:
In the response, you'll get a JWT token. Take note of it as this token lasts for 24 hours only.
Get a JWT token of an existing user
The Get Users JWT Token API gives you the JWT token of an existing user. To get it, click the API, switch to the Body tab and ensure that the raw button is selected as a beautifier. You'll see uniqueID
as the only input field. Specify the ID and click the Send button:
In the response, you'll get a JWT token. Take note of it as this token lasts for 24 hours only. This API returns a 404 User not found
error if you specify an ID of an unregistered user.
In this way, we received the JWT token for a new user and an existing user. Now, let's use this token to access the platform functionality.
Working with Quickwork Embedded SDK
To start working with SDKs, import the Quickwork Framework and Quickwork SDK into your web project.
Pasting the received token in an SDK file
Open the Quickwork SDK file in an editor and search for the Quickwork.setUser()
method. Paste the JWT token of a new/existing user within the double quotes of this method:
Quickwork.setUser("JWT_token_of_a_new_or_existing_user");
Setting the navigation
Now, search for the Quickwork.navigateTo()
method. A value passed to this method redirects the user to the dedicated functionality of Quickwork. Currently, there are four features of Quickwork that are accessible for partners/users through this SDK file:
projects
: Redirects the user to the Folders screen.api-management
: Redirects the user to the API Management.databases
: Redirects the user to the Databases.constants
: Redirects the user to the Constants.
Pass any feature value, say projects
as a value to the Quickwork.navigateTo()
method:
Quickwork.navigateTo('projects');
Note: Only one value at a time can be defined within this method to access the associated feature. You cannot define two or more above-listed functionalities in one go.
Save the changes of this SDK file, close the editor mode, and open it in a browser tab. The user whose JWT token you've specified will be redirected to the Folders screen on Quickwork:
Configuring SDK methods
Quickwork SDK supports the following two types of methods:
- CSS methods: These methods harmonize the look and feel of Quickwork with the specification of your product; making an integral part of it:
setCSSChanges()
setFont()
- URL methods: These methods customize the API endpoint URL and static webhook URL, respectively. The
quickwork.co
base path in the URLs are replaced with the custom base path of the platform in which Quickwork is embedded:setAPIMEndpoint()
setBaseURL()
CSS methods
setCSSChanges()
: Set thecssChanges
variable within Quickwork SDK to customize the CSS of Quickwork embedded in your platform. You can change background colors, buttons, font sizes, font colors, etc:
const cssChanges = `
:root {
--brand-color: "#ff3964";
--title-color: "#000000d9";
--body-text-color: "#000";
}
.btn.btn-primary {
border-radius: "30px";
}
.qw-collection-name {
color: "lightslategray !important";
}
#qw-search::placeholder {
color: "black !important";
}
.qw-no-list h4 span, .qw-no-list p {
display: "none";
}
`;setFont()
: This allows you to change the font family of the platform. You can set thefontChanges
variable inside the SDK to the font family of your choice:
const fontChanges = {
font: `"Poppins", sans-serif`,
fontURL: "https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700;800&display=swap"
};
URL methods
setAPIMEndpoint()
: This method allows you to change the base path of the API endpoints created in API Management of Quickwork. You can set theapiMEndpoint
variable to your desired URL inside the SDK:
const apiMEndpoint = <YOUR_API_MANAGEMENT_BASE_PATH>;
setBaseURL()
: This method allows you to set the base URL of all the connectors that support static webhooks. You can set the baseURL variable to your desired URL inside the SDK:
const baseURL = <YOUR_STATIC_WEBHOOK_BASE_PATH>;
Comments
0 comments
Please sign in to leave a comment.