1 2 Previous Next 18 Replies Latest reply on Oct 21, 2014 8:49 AM by allan.walker.0

    Request:  Increase tabcmd commands, similar to API.

    Toby Erkson

      I see that the REST API has some things that tabcmd does not, for example, Add Tags to Workbook, Add Workbook to Favorites, Query Workbooks for User, Query Views for Workbook, etc.

       

      Let's get the dev team to add more commands/functionality to tabcmd! 

        • 1. Re: Request:  Increase tabcmd commands, similar to API.

          Hey Toby,

           

           

          I recommend posting this in our The specified item was not found. section where our developers see user requests and other users can vote up ideas.

           

          Thanks,

           

          Diego

          • 2. Re: Request:  Increase tabcmd commands, similar to API.
            Aaron Clancy

            Request:  Make the REST API do more  :-)   I'm stuck writing all my scripts on windows and having to connect to the postgres because the REST API does almost nothing I need.

             

            If the REST API did more, tabcmd would become almost obsolete.  Platform agnostic web services are so much better for integration.

            • 3. Re: Request:  Increase tabcmd commands, similar to API.
              Toby Erkson

              Aaron Clancy I would have to learn Java, right?  I have no clue how to use that API.  I've used command-line (DOS) for over 2 decades so that's my preference, plus aren't tabcmd commands able to be used by PowerShell as well?

              • 5. Re: Request:  Increase tabcmd commands, similar to API.
                Aaron Clancy

                No you don't need to know Java.  Im talking about the REST API.  It doesn't care what language your commands are written in or what OS they're sent from.  It just needs to receive HTTP POSTs and GETs.  That's why RESTful web services are so great.  You can build them in to already developed applications easily.  You also don't need a Tableau executable on the requesting box.  It's just HTTP traffic.

                 

                Tabcmd, as it comes, is intended to be installed on a windows OS.  There are hacks that allow you to run on linux but I don't believe that Tableau would support them.

                 

                Error handling with tabcmd is not great.

                 

                To some people in a largely windows shop that might not be important but more and more companies are leveraging multiple platforms.  This is why many web based software offerings are migrating over to a REST API.

                 

                You can run HTTP commands from many scripting languages. Even Powershell.  You can even make the calls straight from browsers such as Chrome if you have a REST plugin.

                 

                I would play around with it if you get a chance.

                 

                Once they complete all the necessary functionality for the API I'll never use tabcmd again.

                • 6. Re: Request:  Increase tabcmd commands, similar to API.
                  Matt Lutton

                  Once they complete all the necessary functionality for the API I'll never use tabcmd again.

                  That's key.  As it sits, I'm not sure I understand how it serves much more of a purpose than TabCmd (although I admittedly don't know much about what makes them different -- this is where documentation from Tableau would really help us understand the benefit of using the Rest API)  Wish they hadn't released it at all until it was ready  -- plus, the documentation on the REST API seems to be lacking, as usual.  Not that the TabCmd documentation is better.  Its not.

                  • 7. Re: Request:  Increase tabcmd commands, similar to API.
                    Aaron Clancy

                    I like that they released earlier than later since it gave me a chance to play around with the syntax but I do agree that it isn't much help until they complete it.

                     

                    Bat-signal_1989_film.jpg

                     

                    Russell Christopher    Tableau wouldn't have started down this path if they didn't see the benefit of a fully functional REST API right?

                    • 8. Re: Request:  Increase tabcmd commands, similar to API.
                      Matt Lutton

                      Oh they definitely have a lot of plans for this feature.  Its just very confusing to anyone unfamiliar with APIs, and I haven't found much help in understanding how this is supposed to work in the available documentation and the training video available -- although I'm admittedly just getting started with trying to understand it.

                       

                      I had similar problems in trying to understand how to utilize the JavaScript API, although I think thats a bit clearer to me since I understand a bit of JavaScript -- I just think if these features are supposed to be useful to "mere mortal analysts", we need to be able to understand how we can utilize it.

                      • 9. Re: Request:  Increase tabcmd commands, similar to API.
                        Aaron Clancy

                        Have you watched this?

                        http://www.tableausoftware.com/learn/tutorials/on-demand/rest-api

                        All you need is a browser with a REST client. (And configure Tableau Server to allow the requests)

                         

                        I admit it's more of a developer's API but that's what makes it more versatile.

                         

                        The things I want to do with a Tableau API require more programatic logic that can't easily be achieved by kicking off tabcmd from a shell.

                         

                        Take for example I have a web portal where I have a person fill out a form and from that form, the portal shoots off a request to Tableau Server to create a user.  It will then query the list of groups from Tableau Server that the person may want to join.  The person selects one of the groups and then chooses to becomes a member of that group.

                        (This is a random example)

                         

                         

                        Developing that in a web dev language  with Tabcmd would be super annoying and slow.

                         

                        With the REST API you could make the following commands (Pseudo):

                             Create User

                             Get Group List and store in Array

                             Populate dropdown with Groups from Array

                             Have user select Group from dropdown value

                             Assign User to Group

                         

                         

                        Basically you should be able to do the things you do as an admin from the Tableau UI but programatically.

                        • 10. Re: Request:  Increase tabcmd commands, similar to API.
                          Russell Christopher

                          Correct

                           

                          You should get Apple on the alpha for 9 and see for yourself

                          • 11. Re: Request:  Increase tabcmd commands, similar to API.
                            Matt Lutton

                            Yes, I've watched the video a few times but its easy to get lost if this is all new to you. The TabAdmin part of the video is confusing, since I have never used TabAdmin and don't have access to the server box.  In other words, the video seems to assume a lot of pre-existing knowledge, in my opinion -- it certainly wouldn't be very clear to a new user. 

                             

                            All you need is a browser with a REST client. (And configure Tableau Server to allow the requests)

                             

                            Problem is, I have no idea what that means.

                             

                            I agree that the REST API sounds like it could solves a lot of headaches -- I just don't understand how one is supposed to leverage it, or get set up to use it.  Plus, I'm on 8.1 for the time being anyway.

                             

                            Thanks for all the helpful info!

                            • 12. Re: Request:  Increase tabcmd commands, similar to API.
                              Toby Erkson

                              Aaron Clancy wrote:

                               

                              No you don't need to know Java.  Im talking about the REST API.  It doesn't care what language your commands are written in or what OS they're sent from.  It just needs to receive HTTP POSTs and GETs.  That's why RESTful web services are so great.  You can build them in to already developed applications easily.  You also don't need a Tableau executable on the requesting box.  It's just HTTP traffic.

                              ...

                               

                              Error handling with tabcmd is not great. -- Agreed!

                              ...

                              You can run HTTP commands from many scripting languages. Even Powershell.  You can even make the calls straight from browsers such as Chrome if you have a REST plugin.

                              ...

                              I agree w/Matt's points.

                               

                              So, any language can be used so long as it can pass/receive HTML (and XML).

                              -- Specifically, given the example in the video, one would need to know how to build an advanced web page (e.g. Java) if the desire would be to have custom 'stuff' done via a browser.

                              -- Specifically, for a stand-alone application, a high-level programming language could be used (e.g. Python, VisualBasic, .NET, etc.).

                              Correct?

                              • 13. Re: Request:  Increase tabcmd commands, similar to API.
                                Aaron Clancy

                                Thanks Russell! I'll request it ASAP :-)

                                 

                                Matt,

                                All you need is a browser with a REST client. (And configure Tableau Server to allow the requests)

                                 

                                Problem is, I have no idea what that means.

                                Ah sorry I make too many assumptions some times,

                                 

                                You can add a plug-in to Chrome by clicking on the Apps button on the top left of the browser.  From there you can go to the web store and download a REST client.  I use the Advanced REST Client.

                                Chrome Web Store  (From Chrome browser)

                                 

                                This plug-in allows you to test HTTP requests.

                                 

                                It provides you a form for you to create HTTP requests to web servers that accept them.  Many applications such as Facebook, LinkedIn, Youtube etc  allow for these kind of calls.  So does your Tableau Server.(once your admins configure it to, with a single tabadmin call. It is very secure so they shouldn't have much pushback for this type of config)

                                 

                                From these APIs you can request and manipulate the details of a server (much like you do with tabcmd).

                                 

                                Here's an example of an http request that doesn't require a payload:

                                 

                                http://graph.facebook.com/espn

                                (click on this /\)

                                If you submit an HTTP request with the following target you'll get back a dataset.  The above example returns a datatype called a JSON.  It's a name value pair that you can parse out values from.

                                 

                                You can do the same thing with Tableau except that you need to authenticate first by requesting a token and the return value you get is an XML instead of a JSON.

                                 

                                For developers that like to integrate Tableau with other things such as web portals this a great thing to have.

                                • 14. Re: Request:  Increase tabcmd commands, similar to API.
                                  Matt Lutton

                                  I totally understand it is useful, and I certainly appreciate your added details here, and it is beginning to make more sense.

                                   

                                  My main issue is that this is NOT easy to follow and set up if you don't know what you're doing, and the company tends to advertise the products as being "easy to use".  I disagree and think their products are extremely complicated, if you don't have the requisite pre-existing knowledge.  I'd like to see Tableau either provide better documentation/support, or stop marketing products as "easy to use".  This is the first time ANY of this stuff has made ANY sense to me at all, and that is only because I have you to talk to, ask questions of, and explain things to help fill the gaps in my own understanding/knowledge.

                                   

                                  But I'll be completely honest, I just want the capabilities things like the REST API and TabCmd give us baked right into the Server product.  Period.

                                  1 2 Previous Next