All Things API
Recently active
As part of making it easier to use the Unity API we have released a preview version of Open API support. Here are a few details. Unity API users can now start with a documented ‘API library’ instead of having to set everything up from scratch, making it easier to generate code/scripts, use testing tools and self-educate. Open API is supported by loads of tools. Files in both JSON and YAML for flexibility For more information see https://unityapi.webrootcloudav.com/Docs/en/APIDoc/APIReference#get-openapi-definition Those interested to learn about Open API https://www.openapis.org/ Note this is a public preview release, you will still need to setup access/ refresh token calls, see https://unityapi.webrootcloudav.com/Docs/en/APIDoc/GettingStarted#gettingStarted Let us know what you think!
We have just launched our Universal Reporter tool that's been created by the Integrations team here at Webroot. This tool allows MSPs to create custom reports that show value to your end customers. We've also made it really easy to be able to schedule and automatically email selected reports to your customers. The tool uses the concept of templates for reports that are built using Microsoft Excel and PowerShell Scripts. Included are a sample of templates to for you to play with. We've created our knowledge base to help you get up and running . Download the Universal Reporter For the coders / scripters among you check out the new Unity API SDK, PowerShell cmdlet included. It only covers reporting functions in the Unity API at present, but we would love to know what you think about it. Plus no need to worry about access and refresh tokens. Thanks
[h4]IMPORTANT - Identifying your Application[/h4] When using the Unity API you need to specify a valid user agent string for all requests in the corresponding User-Agent request header. The string needs to be made up of one or more name and version pairs separated by a whitespace character (e.g. "MyCustomApplication/1.2.759 ThirdpartyPlatform/1.0.r3"), according to the HTTP/1.1 standard. Please be aware that Webroot reserves the right to reject Unity API requests that do not follow above requirement anytime in the future. Identifying your application is important and enables Webroot to provide a more targeted and streamlined API experience. If you have any questions please do not hesitate to reach out to Webroot support.
Good day,I am working on enabling DNS Protection and setting some of its options using Unity API. I can successfully enable and disable the module using Unity API and I can set the site policy to one that includes DNS Protection on our endpoints, and the network wide DNS Protection Policy for a Static IP. However, I cannot see a way to set the Agent/Endpoint DNS Protection Policy. It does not even seem this is possible with the current set of commands.Am I missing something? Or is this not possible? Might it be an option that will be enabled in the future?Thanks,Chris
Can’t create fully extended data reports. Error every time.
Starting on October 12th we noticed a rise in API call failures specific to the https://unityapi.webrootcloudav.com/service/api/status/site/{GSMKey} endpoint. The receive the following response: "statusCode: 500,""requestId: '',"error: null,""error_description: ""SkyStatus request failed (No parameterless constructor defined for type of 'System.String'.)","AdditionalInformation: {}
We have been using the API https://unityapi.webrootcloudav.com/service/api/status/site/{GSMKey} for many months now and it has been working fine until this morning.I have started receiving the following response and was wondering why this woudl suddenly be the case. I am getting the same result from other API calls for the endpoint status. { "statusCode": 500, "requestId": ", "error": null, "error_description": "SkyStatus request failed (No parameterless constructor defined for type of 'System.String'.)", "AdditionalInformation": {}}
Hello, I need to get my client’s Agentstatus data but the queryresults aren't giving me any results when trying to query it. Am I doing something wrong? Thank you!
Hi All, I am calling the reports end point and it’s return only 6 endpoints, I have checked I have 7 active endpoints. or is there any way I can call the inactive endpoints using the API.If anybody can help?Thanks,
When creating a Carbonite replication job, you have to make some decisions on the Job Options. Some of these options straight forward decisions, do you want encryption, True or False, others may have to build more logic in the decision. The next set of examples include how to address some of these in-depth decisions.Mirror Start OptionsThe Mirror Start Options has several different choices when viewed in the console.Mirror Start OptionsHowever, when processing the PowerShell (or REST API) you will need to calculate results based on the enumerated values found in the PowerShell Scripting Guide. Here is a link to the specific information in case you are interested:https://download.doubletake.com/_download/8.5/8.5.1.0/Docs/PowerShell/PowerShellScriptingGuide.htm#Enumerations/MirrorOperationOptions.htm?Highlight='mirror'%20AND%20'option'in the simple example below, I show the “Import-Csv” PowerShell Cmdlet to read a multi-line .CSV file into a PowerShell object variable ($jobstream). T
If you write PowerShell scripts for testing and want to provide them to clients, but any credentials need to be scrubbed prior to sending them, you can try using an XML Secured Object instead. The basic concept is to create a script that receives the username and password through the secured prompt in PowerShell and outputs an XML file with the information encrypted.To note this is not a highly secured option and should not be used in any production environment. This is an example of hiding your password while testing and demoing.Use the Read-Host -AsSecuredString to keep the password hiddencreate a new object using the System.Management.Automation.PSCredential class then use Export-clixml to output it into a Secured XML. The xml output results in an xml file with a password value of about 460 characters….This XML is only valid on the system it was created ON so, if you copy that secured XML to another system and try to use it, it will not work. To ‘import’ this secured XML into any
Tell us how you are using the new Unity API event notification service. And what are some of the new events that you like us to publish through this API endpoint?
please share your thoughts
I have been using ADF to query the endpoint threat history API.https://unityapi.webrootcloudav.com//service/api/console/gsm/xxxxxx/sites/xxxxxxx/threathistoryThis has been working successfully for many weeks. we have been nearing the end of our subscription period and have been granted an extension of 30 days for our license, but now when I query this API I get the following error.Error(BLOCKEDPROGRAMS0021): Users endpoint protection access has expired"I can still get results back from other API’s I call using the same credentials so it seems isolated to the endpoint threat protection historyIs this something to do with this being a temporary license?How can I go about resolving? Many thanks Matt Lang
Hi, I need to be able to use the notifications endpoints for the Unity API, but I am not sure where to go to add the correct scope for my testing access token. Can anyone direct me? The token already has access to the following scopes: scope": "[\"SkyStatus.Site\",\"SkyStatus.GSM\",\"SkyStatus.Usage\",\"SkyStatus.Reporting\",\"Console.GSM\"]"Thanks
Is it possible to create an API key that has only access to a single site?
I am calling the Endpoint Status GSM API using postman and providing a date and time for the modifiedSince parameter. REST API Call belowGET /service/api/status/gsm/{keyCode}?batchSize=1000 &modifiedSince={modifiedSince}I would expect to see the count of records being returned to steadily increment each time I execute this request, since new records or updated records get returned, but what I am seeing is confusing and I was hoping someone could help clarify.lets say on my first call I want to see all records that were modified since 11am today. I should see (let’s say in this use case) 100 records returned with no continuation token or URI since my batch size is set to max (1000).If I run the exact same query again a few seconds later I should see the same data or maybew 1 or 2 extra records depending on how busy my system is.What I am seeing instead is less records being returned, often along with a continuation token.I never seem to get a consistent result back, at times I see
Hi,We are trying to generate an access token for one of our clients using their username and password through the https://unityapi.webrootcloudav.com/auth/token endpoint. However, if the password contains an & symbol, we always receive the error message "Username or password is invalid”.When testing with other accounts and passwords (not containing an & character), things work fine. We double checked and we are sending the password field (as any other field) properly URL encoded. My only guess is that the receiving API server is not decoding these values correctly.Would you be able to confirm this a problem on your end or is there something we need to check again?Thanks for any help.Best regards,Steven
I have 2 GSM Console Admins (Super Admins), 1 Site-Admin, and 2 Sites. The 1 Site admin has administrator access to both sites. I want to use the API to update their access to either No Access or View Only. When I use the endpoint “/service/api/console/gsm/{gsmKey}/sites/{siteId}/admins” (with the relevant info filled in), it’ll return a 204 but nothing updates for the Site Admin, their access stays the same.If I attempt to provision either of the GSM Console Admins using the same endpoint and changing their access level to any of the 3 levels available, it’ll work. Judging by this in the API documentation “This API method allows adding existing GSM admins to the list of admins of a site, or modifying access permissions of already set up site admins. To get information about available admins, either query the list of admins on the GSM console (see here) or the list of admins on a site (see here),”, it seems that I should be able to change a site admins access permissions… unless I’m mi