Jump to content

Search the Community

Showing results for tags 'api'.

  • 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
  • ftrack Review
    • General discussion
    • Feature requests
    • Help
  • Connect and plugins
    • General discussion
    • Connect package releases
    • Feature requests
    • Help
    • Connect plugins releases
  • 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







  1. It's my understanding that using the following code should always return the same metadata entity: const metadata = await session.ensure( 'Metadata', {parent_id: "7bd2c20a-f7a1-11ea-8466-005056829324", key: "builds", parent_type: "Breakdown"} ); If the entity did not exist before, `session.ensure` would create it, and if it did exist it would simply return the existing entity. Instead, if the entity already exists this will throw a Duplicate Entry error.
  2. If I do something like this: const metadataResult = await session.create( 'Metadata', {parent_id: "7bd2c20a-f7a1-11ea-8466-005056829324", key: "builds", parent_type: "Breakdown", value: "foo"} ); ...the contents of `metadataResult` will be: { action: "create", data: { __entity_type__: "Metadata", key: "builds", parent_id: "7bd2c20a-f7a1-11ea-8466-005056829324", parent_type: "Milestone", value: "foo" } } Notice how the `parent_type` key is listed as `Milestone` when it should be `Breakdown`. For further context, `Breakdown` is a custom object creat
  3. Recently I was attempting to create a Folder object via the JavaScript API and encountered this error: Permission denied: not allowed to 'create' 'Task'. Missing the required 'Create objects (sequence,shot,task)' permission. I was providing the `name`, `parent_id`, `object_type_id` during my attempt, and the given error was very strange to me because my user should have administrator permissions for the project I was modifying. After a while I realized that I needed to also provide the `project_id` so that the API could figure out whether I had the appropriate permissions to make t
  4. Hello! I'm currently reading documentation on the API/Event listeners, my goal being to have an event listener watch for the first activity on a shot (Whenever the shot is marked 'In Progress') and automatically populate the start date accordingly. I'd like to achieve this so our schedule/overview can be automatically populated, with the end date being auto-populated by the bid hours. My question is, once I figure out the way to do it, will it be populated retroactively? When I run the action will it populate all the start dates that aren't already populated? If not, is this possib
  5. I'm wondering how to mute this kind of feed from the ftrack session: 2019-07-17 11:37:48,561 DEBUG Checking for entity in cache with key ('Status', ['a0bc2444-15e2-11e1-b21a-0019bb4983d8']) "C:\Users\tmiko\AppData\Roaming\Python\Python27\site-packages\ftrack_api\session.py:967" 2019-07-17 11:37:48,561 DEBUG Retrieved existing entity from cache: <Status(a0bc2444-15e2-11e1-b21a-0019bb4983d8)> at 582088240 "C:\Users\tmiko\AppData\Roaming\Python\Python27\site-packages\ftrack_api\session.py:974" 2019-07-17 11:37:48,561 DEBUG Cache not updated with merged entity as no differences d
  6. Hey folks, since yesterday I get the following error when trying to connect to the ftrack_api. // ftrack_api.session.Session : Calling server https://[OUR_FTRACK_SITE]/api with '[{"action": "query_server_information"}]' // // ftrack_api.session.Session : Call took: 0.113607 // // ftrack_api.session.Session : Response: u'[{"storage_scenario": {"data": {}, "scenario": "ftrack.automatic"}, "schema_hash": "450f452f8addcd23370a8a90f8156c4a", "version": "", "is_timezone_support_enabled": false}]' // // Error: ftrack_api.session.Session : Server reported error in unexpected form
  7. <ftrack_api.query.QueryResult object at 0x0000024562AC9CF8> # Error: ftrack_api.session.Session : Server reported error: ValueError(Cannot set relationship to string value.) # # Error: Server reported error: ValueError(Cannot set relationship to string value.) # Traceback (most recent call last): # File "<maya console>", line 1, in <module> # File "R:/Pipeline/configs/assetPipeline\assetAPI.py", line 430, in publishComponent # self.set_component(oVersion, filePath) # File "R:/Pipeline/configs/assetPipeline\assetAPI.py", line 420, in set_component #
  8. Hello again, we would like to use Dynamic Enums to let our team-members select maya plugins from a drop-down which is populated from a folder containing all plugins available. For this we prepare the dropdown contents like described here: http://ftrack.rtd.ftrack.com/en/3.3.7/developing/dynamic_enumerator.html The resulting list looks like this: [{'name': '3Delight - 8.0.572', 'value': 'C:\\ConfigurationSync\\Maya\\3Delight\\3Delight_8.0.572'}, {'name': 'abcToA - 3.0.0 - 2018 - 2.0.1', 'value': 'C:\\ConfigurationSync\\Maya\\abcToA\\3.0.0_2018_2.0.1'}, {'name'
  9. 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 al
  10. Hi everyone, We use a cloud instance of our project and regularly our users experience some network error: proxy error, connection timeout etc Usually a retry is enough, but eventually it will stop a process and leave an asset unpublished or not entirely prepped. Have anyone experience issues like this ? Is there a common recipe to try/catch all errors that would be network related from ftrack_api ?
  11. I am trying to create a new Calendar Event using the api, but I think this is not currently being supported. The old api had a project.createPhase() method which is the one I am testing to create this entity. Is this the correct way to approach the creation of events through the api? FYI: I am currently using the 3.5 (latest) ftrack api for python.
  12. 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: console.info(Object.keys(session.schemas)); for (schema in session.schemas) { console.info(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
  13. Is there a way to listen to when incoming/outgoing links are created/removed via the api? The ftrack.* topic doesn't seem to fire an event when a link is created. Alternatively is there a simple way to publish an event when a link is created/removed?
  14. Hey there, we are trying to add managers programatically when a corresponding field was altered. We tried this: project = ftrack.getProject('dev_tutorial') user = ftrack.User('username') managerType = ftrack.ManagerType('Supervisor') # Add the user as a supervisor on the dev_tutorial project. manager = project.createManager(user, managerType) (taking a correct project, user and managerType) ..which is described here. But sadly this didn't work. what do we have to do to create these managers via the new api, since 'Manager' is not a known type? Genera
  15. Hey, I am having trouble formulating an advanced query via the interface and API. I am sure this is something that a lot of others must have already solved so I am hopeful I can get some help here. I have a basic structure of a custom object named "Episode" with multiple tasks. Assuming an episode has 2 tasks, I want to retrieve all shots that have task 1 status = Complete, task 2 status = Not Ready. Currently I have two queries - one that retrieves task 1, one that retrieves task 2 and I intersect these two lists to get only the episodes that exist on both. It would be get this
  16. Hi folks, My company has just updated our installation of Ftrack, and I would like to take advantage of the new features for linking dependencies in my code, specifically the AssetVersionLink entity. Can you please provide a use case that can illustrate some of the properties of this entity? How does it differ from usesVersions()? Is it supposed to replace it, or are we supposed to use them in tandem? There is no documentation on this feature, so any information would be very helpful. Thanks, Kim
  17. jerome

    Query join

    Hi, Is it possible to send queries with the new API that will use joins on several objects. I would like to query an asset for a specific asset build, i.e. something like this: Asset where parent.id is ( select id from AssetBuild where project.id is <projectId> and name is "<myAssetBuildName>")Is this kind of request valid with the new API ?
  18. Hi, I've created an event listener to require comments when logging time on certain tasks, and thought I should share it with the community. It shows the usage of triggering and handling an actions UI based on an event. Please let me know if you have any comments or feedback. You can find the snippet on bitbucket. Event listener: Require timelog comments The event listener can be used to require comments when logging time against certain tasks from the ftrack interface. The event listener will trigger an Action UI to require timelog comments if the custom attribu
  19. Hi, What is the best relationship we can use to extract notes from a task in a query? for example: something like, note = session.get('Note where content is "xyz" and parent.name is "something"'.one()) P.S.: I don't want to use 'ID' for extracting particular note. Thanks in advance,
  20. Hello, New to ftrack and its nomenclature. Does any one have a good workflow for creating and testing new event plugins? I currently find my self having to create a new shot everytime i want to test new code in the plugin. I also noticed that i cant query an event, if i try : [e.get('id') for e in session.query('select id,data from Event')] the ids are int's and not the database object id that the event entity like other ftrack entities use. Any help or an arrow in the right direction would be great. Cheers Kym
  21. Hi, I've created an example event listener which can be used to restrict which users should be allowed to set certain statuses. I thought it would be useful for the rest of the community and wanted to share it here. Let me know if you have any questions or feedback. You can find the snippet on bitbucket. Event listener: Restrict task status updates The event listener can be used to limit which users are allowed to set certain statuses. When a status is changed in the ftrack interface, the event listener will check if the status is restricted, and if the user i
  22. Hello Guys, i am just wondering if there is any possibility to override those context templates by the new api using hook located on a FTRACK_CONNECT_PLUGIN_PATH instead of rewriting your default context templates delivered in connect package. I just tried something like this but it doesn't work so far. Thank you ! import ftrack_api import ftrack_api.event.base def get_sample_context_template(event): '''Return context templates for Nuke Studio.''' # Define tag regular expressions. return [{ 'name': 'Sample Shot', 'description': ( 'Match name b
  23. In our Ftrack installation, we have defined a custom attribute at the project level--let's call it "locations". I would like to create a function that allows users to add an additional location to a project after querying that the provided argument is indeed an available option in the collection of locations. I can't find an example of this kind of query; I just need to know whether this is something attached to Session or somewhere else. So let's say locations = {'Uptown': 'uptown', 'Downtown': 'downtown', 'Midtown': 'midtown'} (in settings it's an Enumerator that seems to be represented
  24. Hi all, we get this info log almost every time when we run a script via the API: requests.packages.urllib3.connectionpool> INFO | Resetting dropped connection: ftrackserver Do we have to worry about it? Do we have to change something? Cheers, Remus
  25. Over the past couple of weeks I've been trying to learn how to dev for ftrack. I'm making progress, but the process has been very painful. I have the basics working- connect is running and I'm able to publish using the Maya plugin, but I'd really like to customize the experience more. Here are some areas that have been a struggle for me: - The usage examples/tutorials in the docs are missing a lot of context for a beginner like myself. I have a hard time wrapping my head around a lot of the concepts because the examples either stop short or under-explain key concepts. - I'm uncer
  • Create New...