Retrieving a list of agent requests from TFS REST API - tfs-2015

TFS 2015.3, on premises.
The REST API of TFS has an undocumented portion that deals with app pools: _apis/distributedtask/pools on the server level and further down. I can drill down all the way to agent details: _apis/distributedtask/pools/111/agents/222. Now, in the Web UI there are two collections per agent: requests and capabilities. Does anyone know the REST API URLs for those? Adding either /requests or /capabilities yields a "Document not found" error.
If the TFS API is somehow self describing, I have yet to discover how. I miss WSDL...

I opened up Chrome Network inspector and found that these are the API calls for Requests and Capabilities. These are from latest VSTS but I think the same will work for TFS 2015.3 also.
For Requests:
_apis/distributedtask/pools/1/jobrequests?agentId=1&completedRequestCount=25
For Capabilities:
_apis/distributedtask/pools/1/agents/1?includeCapabilities=true
Note: These are undocumented so you should be vigilant while upgrading your TFS if you are taking dependencies on these.

Related

Alternate lambda functions deployment for production

I'm developping a web extension for the chrome store that calls a backend deployed on aws lambda using the serverless framework.
When developing the Rest API, I may introduce breaking chances. As publishing an update on the chrome store can take a lot of time and is unpredictable (1 day to 3 weeks), the solution I'm think about to keep a compatible API with the extension is to deploy 2 different lambda functions in production.
The idea is when I push new changes on the master branch, the lambda function with the oldest version is updated and ready to receive calls as soon as the update is approved on the chrome store, without erasing the API currently used.
First, is it a good pattern to handle the updates of a client consuming an API when you don't have full control on them?
Second, is this something doable with the serverless framework and how? I couln't find any resources on the subject.
Thanks

Allowing api requests (ajax) while logged in in rundeck

My team has been migrating the old rundeck 1.6.6 to 3.1.2.
Besides Rundeck, we also have a lot of web interfaces that query (Ajax) rundeck's API.
That used to work because we just needed to be logged in to rundeck.
It doesn't work anymore! (as you might have guessed)
There is a need for the user to be connected to order handle his access roles (what he can and cannot do).
I saw a mention that this feature was disallowed by default, but i cannot find anywhere which option to change in order to reallow it again.
Do you guys have an idea please?

How to use Pentaho Community API

I have a pentaho community server 8.1 already running and i would like to know if this version has a API avaliable? Im using the following code to and getting a 200 but there is no basic so i can authenticate correctly.
import requests
data = {"j_username": "admin","j_password":"password"}
r = requests.post('http://(serverip):8080/pentaho/j_spring_security_check', data = data)
Is the authentication for this api configurable?
The whole idea is that i can use the scheduler since the spoon for the community version doest has access to it BUT i tried using the enterprice client and i was able to schedule so the module is there you just cant reach it.
Thanks!
Yes, and the full API is documented here:
https://help.pentaho.com/Documentation/8.1/Developer_Center/REST_API
Note: If you want to enable username/password authentication on the URL you have to edit security.properties and reboot . (an older insecure approach, but for the purposes of development possibly simpler to get you going)
You're absolutely right - the CORE platform does have the functionality, just not the UI so you're more than welcome to use the API to use the scheduler engine.

View API data with chrome DevTools

I am working on a site that uses the PayPal API. This new site will replace the old site at my job. As of right now, I need to check what data the old site sent to the PayPal API. Is there a way to check what data is being sent to and from a different site or API? It is data that is not typed in by the user, but data that already exists in the database that is being sent to the API.
Any help or advice would be great.
Thank you!
It "depends". On Windows platform you could use:
Fiddler or;
Microsoft Message Analyzer
to inspect traffic i/o (on the client system where either tool is installed). I'm sure other platforms will have similar tools.
Chrome Dev (or any other browser) tool will help with browser based traffic.
IMHO, depending on how "old" the existing system is, it maybe worth looking at the API again to see if any newer features are worth the effort since you're updating things...and seems to me getting paid/payments systems/ops would be something high on the priority list :)
Hth...

Can tfs feedback be recieved via TFS Web Access w/o installing feedbackclient.exe?

ON TFS2012 is it possible to request feedback from customers that are utilizing the web client without them having to install feedbackclient.exe on their machines
Usersnap allows customers to add feedback without installing anything locally. It integrates into Microsoft Team Foundation Service (this means, every feedback from your customers is automatically created as ticket inside your TFS workflow).
Your customers even don't need an account in TFS to provide feedback.
It's easy to integrate Usersnap with TFS, you can have a look at the docs here: https://usersnap.com/support/docs/apicfg#tfs
To work with the feedback request like it is explained here it is not possible to give feedback without installing the client tool.
I thought it would work also by logging in in the TFS web interface then open the feedback request and answer to it but apparently after testing it myself I did not found a solution directly. Though the feedback would be filled in completely manually while all the needed tools are available with the client tool.