I'm getting shared_link null by using box api https://developer.box.com/v2.0/reference#get-shared-link Unbale to figure out that where am I doing? Here is my code
function requestCallback(err, res, body) {
console.log(body);
console.log("requestCallback");
}
var accessToken = 'tvXSjyJM3XDh0YWss72ciYdXDtFNQeEh';
var r = request.put({
url: 'https://api.box.com/2.0/files/205773246434?fields=shared_link',
headers: { 'Authorization': 'Bearer ' + accessToken }
}, requestCallback);
var form = r.form();
form.append('access', 'open');
And getting in response of this
{"type":"file","id":"205773246434","etag":"0","shared_link":null}
I used box-node-sdk and made sure the app was "user-enabled" and it seems to work.
var BoxSDK = require('box-node-sdk');
var fs = require('fs');
var path = require('path');
var CLIENT_ID = 'xxxx',
CLIENT_SECRET = 'xxxx',
PUBLIC_KEY_ID = 'xxxx',
PRIVATE_KEY_PATH = 'xxxx',
PRIVATE_KEY_PASSPHRASE = 'xxxx',
ENTERPRISE_ID = 'xxxx';
var sdk = new BoxSDK({
clientID: CLIENT_ID,
clientSecret: CLIENT_SECRET,
appAuth: {
keyID: PUBLIC_KEY_ID,
privateKey: fs.readFileSync(path.resolve(__dirname, PRIVATE_KEY_PATH)),
passphrase: PRIVATE_KEY_PASSPHRASE
}
});
var client = sdk.getAppAuthClient('enterprise', ENTERPRISE_ID);
client.files.get('xxxx', {fields: 'shared_link'}, function(err, data) {
console.log(data.shared_link.url);
});