Search the Community

Showing results for tags 'javascript'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • Company news
    • General announcements
  • ftrack Studio (main app)
    • General discussion
    • Feature requests
    • API
    • Help
    • Actions and Widgets
    • ftrack Go
  • Connect and plugins
    • General discussion
    • Connect package releases
    • Feature requests
    • Help
    • Connect plugins releases
  • Reviews
    • General discussion
    • Feature requests
    • Help
  • Advisory Forum
  • Tech preview
    • API
    • New integrations
    • Studio overview
    • ftrack Review


There are no results to display.

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL







Found 5 results

  1. Hi, Im kinda new to this so please bear with my newbie questions... Apparently it's good practice to close a session after you're done, but session.close() throws an error that the function doesn't exist and session.closed returns undefined.
  2. Hey there, we are currently trying to send custom events via the javascript api (as the title might let you guess... ) In a Node-style js-file we're testing the following code, which is sadly not working... var EventSender = function(server, user, key) { require('isomorphic-fetch') var ftrack = require('ftrack-javascript-api'); this.session = new ftrack.Session(server, user, key); if (this.session==null) { console.log('Error creating session'); return; } this.DoStuff = function() { // TODO: find another way to solve this // make session available to all subfunctions by creating a 'locally scoped' variable // otherwise 'this.session' is only available at the outermost usage (i.e. only on line 28) // the nested functions below line 28 don't know about 'this.session' var session = this.session; if (session==null) { console.log('Error - No active Session'); return; } return session.initializing.then(function() { var event = new ftrack.Event('infected.custom-event', {foo: 'bar', xyz: true}); console.log('sending...'); return session.eventHub.publish(event); }).catch(error => {console.log(error);}); } } sender = new EventSender('', 'Admin', 'f22192fc-0cb6-11e8-b2cb-7ab7a47c9dda'); sender.DoStuff(); The resulting error-msg is: TypeError: Cannot read property 'socket' of null at EventHub._runWhenConnected (C:\dev\javascript\\node_modules\ftrack-javascript-api\lib\event_hub.js:307:32) at C:\dev\javascript\\node_modules\ftrack-javascript-api\lib\event_hub.js:224:23 at new Promise (<anonymous>) at EventHub.publish (C:\dev\javascript\\node_modules\ftrack-javascript-api\lib\event_hub.js:223:31) at C:\dev\javascript\\sendEventTest.js:30:28 at <anonymous> at process._tickCallback (internal/process/next_tick.js:188:7) So for some reason, the local property '_socketIo' in event_hub.js is still null inside the method '_runWhenConnected', which is called in 'publish()' on line 224. Can you tell me why that is the case? having the same setup, we already successfully created calendar-events and other objects. Side-Question: Is it possible to send a custom event via javascript-api and receive it via the python-api? Thanks in advance Tim
  3. Hey there, as part of our integrations, we want to be able to setup entries in the 'overview calendar' for 'projects and users'. for example 'Add Leave' should be available. Ideally this should be done via external api-calls in javascript. by executing this:; for (schema in session.schemas) {[schema]); } We found out, that there is something called: 'CalendarEvent'. Are we on the right track, playing with this? Since we don't know, how to deal with this, we shoot in every direction.. Is it possible to 'Add Leave' for a user via the javascript api? If yes, how is it done? We tried this: var query = 'select id from CalendarEvent'; But the result is: '(node:7332) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): ReferenceError: request is not defined' Any help/assistance/ideas are greatly appreciated! thanks in advance Tim
  4. Hey everyone, as part of our integration process we would like to be able to make api calls "from outside". Since we need to create a session for this, we noticed a difference between python and javascript api. On python side it is possible to create a session object without giving any parameters, if the corresponding environment-variables are set correctly. In javascript this seems to be not allowed! export class Session { /** * Construct Session instance with API credentials. * * @param {string} serverUrl - ftrack server URL * @param {string} apiUser - ftrack username for API user. * @param {string} apiKey - User API Key * @param {Object} options - options * @param {Boolean} [options.autoConnectEventHub=false] - Automatically connect to event hub, * @param {Array|null} [options.serverInformationValues=null] - List of server information values to retrieve. * @param {Object} [options.eventHubOptions={}] - Options to configure event hub with. * * @constructs Session */ constructor( serverUrl, apiUser, apiKey, { autoConnectEventHub = false, serverInformationValues = null, eventHubOptions = {}, clientToken = null, } = {} ) { if (!serverUrl || !apiUser || !apiKey) { throw new Error( 'Invalid arguments, please construct Session with ' + '*serverUrl*, *apiUser* and *apiKey*.' ); } . . . Why do we have the option to create api-keys without giving it an api-user (on "ftrack-web-ui/system-preferences/API keys") when we cannot use them with the javascript api? How are we supposed to achieve external api-calls? thanks in advance Tim
  5. Hey there, we're currently trying to create a widget, that will list up some of our custom attributes, but for now its a struggle to get these. Maybe we just didn't look in the right place? With the python api its possible to get these values via the project: project['custom_attributes'] but with the javascript api, project don't seem to have these properties:'all project properties: '); for(var key in currentProject) {'project['+key+'] = ' + currentProject[key]); } gives us something like this: all project properties: index.js:62 project[context_type] = show index.js:62 project[__entity_type__] = Project index.js:62 project[id] = 19e2f1e4-01dd-11e8-ac42-7ab7a47c9dda index.js:62 project[name] = tims_test_321345 So if we cannot get the 'custom_attributes' via the project, where do we get them from? thanks an advance Tim