Starting Your First App
This guide shows you how to set up a project. If you are coming from any of the samples, note that (most of) these steps have already been done ahead of time.
Add an App Backend
In the Kinvey console, create a new app backend. If you are currently viewing another app backend, click the app's name in the left navigation, and the select "New App" in the menu.
On the app dashboard page, you will find your App Key
and App Secret
in the top right. You’ll need those to configure your app.
Platform Compatibility
The library is compatible with Node 6 and above.
Add Kinvey SDK
You can add the Kinvey SDK to your project in one of two ways - using the package we ship, or using the source code.
It is recommended to add the library as npm
dependency. Run the command below to install the module, and update your apps package.json
.
npm install kinvey-node-sdk --save
In your app, import the library using require
.
var Kinvey = require('kinvey-node-sdk');
Configure Your App
To use the SDK, you need to initialize it with your App Key and App Secret.
Kinvey.init({
appKey: '<appKey>',
appSecret: '<appSecret>'
});
The initialization function accepts the following options when initializing the library:
Option | Description |
---|---|
appVersion | Set a version for your app that will be sent as the header X-Kinvey-Client-App-Version on every network request. |
defaultTimeout | Set the default request timeout (in milliseconds). The default value is 60,000 ms. |
storage | Selects a storage provider. Possible values: Kinvey.StorageProvider.Memory . |
instanceId
to the ID of their dedicated Kinvey instance to correctly setup the backend and Mobile Identity Connect API URLs for the library.
You can find your Instance ID on the dashboard of the Kinvey Console, next to your App Key and App Secret.
Kinvey.init({
appKey: '<Your App Key>',
appSecret: '<Your App Secret>',
instanceId: '<Your Instance ID>'
});
Example of an instanceId
would be:
instanceId: 'kvy-us2'
Master Secret
in client-side code.
Verify Set Up
Your app is now connected to Kinvey. The ping
method, as shown below, will contact the backend and verify that the SDK can communicate with your app.
var promise = Kinvey.ping().then(function(response) {
console.log('Kinvey Ping Success. Kinvey Service is alive, version: '
+ response.version
+ ', response: '
+ response.kinvey
);
}).catch(function(error) {
console.log('Kinvey Ping Failed. Response: ' + error.description);
});
hello
instead of hello app-name
, please make sure you have configured your app. If the error yields This app backend not found
, the app key
and app secret
you entered are incorrect.
Setting Method Options
Every SDK method accepts an optional argument representing an object that you can use to set various options. Some of the options are method specific, such as timeout
that sets a timeout for the request or skipBL
that instructs the backend to execute the request without any business logic. Check the API Reference to find out what options each method supports.
One option that you can pass to all methods is properties
, which allows you to pass custom data such as key-value pairs, arrays, or objects to the backend. This data is sent over the network as a custom header. On the server, you can intercept custom properties with Flex and act on them as you see fit.
The following example changes the timeout
to 30 seconds and sets a couple of custom properties on a find request.
var options = {
"timeout": 30000
"properties": {
"myProperty1": "value1",
"myProperty2": "value2"
}
};
var stream = dataStore.findById('entity-id', options);
Every App has an Active User
Your app will be used by a real-life human being. This person is represented by the Active User. This user object must explicitly be created, either with a username and password, OAuth sign-on (such as Facebook, Google+, LinkedIn, etc.), or Mobile Identity Connect. See the User Guide for more information.
What's next
You are now ready to start building your awesome apps! Next we recommend diving into the User Guide or Data Store Guide to learn more about our service, or explore the sample apps to go straight to working projects.