Is it/when will it be safe to release apps with Google Cloud Storage using JSON API? - google-cloud-storage

I've noticed that the JSON API for Google Cloud Storage is, as it says, "Experimental", and that the URL's I'm supposed to use all have 'v1beta2' in it. It looks like it hasn't been touched since May 7th, and I'm wondering if it's worth creating a new project with this service as primary storage service if I'd want my app to go live in a month or two. Is there a release date somewhere, or is it more like "it'll take as long as it takes"-kinda thing?
Please don't downvote, I wanted to ask this in Google Cloud's own forum as this isn't a programmatic question, but as it turns out - their forum is linking me here to SO asking me to tag with 'google storage' for anything related to it.

The Google Cloud Storage JSON API is marked "experimental" to mark it as an exception to our deprecation policy. As we bring it to full release, there is a chance we may make some changes to the API, and this is why you see the special URLs. We don't have a date yet for full release. You should be able to use it just fine, if you are prepared to migrate your app to the official API when it is released.

Related

Programatically create Conversational Action on Google via an API

Google has recently released the Conversational Actions skill creation kit. From my understanding, it differs from the previous Actions on Google set that was available and, indeed, on the integrations part of Dialogflow, the AoG integration is now considered legacy, and separate from Conversational Actions.
Is it possible to create a new Google Conversational Action via an API? All the documentation ends up mentioning the Actions API at some point or another. However, clicking on the "Documentation" tab on the API page does literally nothing.
On the Conversational Actions reference page, there are numerous manifest definitions for various things, such as Entities, Actions, Intents, Scenes... Is there an API somewhere that would allow for programmatic creation/update of actions?
If so, what is the preferred method of authenticating with said API? oAuth, some sort of a token?
I have asked a similar question before about AoG, and the answer was "no". Has anything changed?
IMPORTANT: gactions CLI is off the table. I know it's available, its usage is less than ideal.
The short answer is no - the Actions API is not publicly documented or available, although you need to grant your Google Cloud project access to it if you want to use the gactions CLI.
Clearly there is an API somewhere, after all, gactions needs to be permitted to it, as you note. But they haven't made it available. (At least not yet.)
Judging just by the gactions command, it would be able to do most, but not all, of everything needed for the "programmatic creation/update of actions". While it would be able to update actions, it can't create them - right now that needs to be done through the web console. Although you can create a project using the gcloud command, there does not seem to be any way to "promote" it to an Actions project - trying to use gactions at this point just gives an error that says you need to create it in the console.

Atomic Update in Cloud Storage APIs?

I am working on an app where I would like to allow users to bring their own cloud storage account. That is, the app needs to work with the APIs for as many cloud storage services as possible.
One feature that seems important is atomic update. The app reads a version of a file from the cloud, makes some changes, then uploads a new version. However, it needs to be able to detect if a concurrent update was made to that file (for example, if the user was concurrently logged in from a different computer). The ifGenerationMatch parameter in the Google Cloud Storage API seems to make this kind of thing possible.
Does anyone know how to accomplish it with other APIs?
Sorry to answer my own question, but I think after months of intermittent digging I found at least a partial answer in the form of a couple HTTP headers:
If-Match
ETag

Does COS S3 support putBucketLifecycleConfiguration?

AWS S3 supports lifecycles for buckets, does this work in Bluemix S3?
http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#putBucketLifecycleConfiguration-property
When I call it (using the aws-sdk nodejs module), I get back a 400 saying 'The operation requested is not supported'. The docs say a subset of s3 is handled but I'm not sure what ISNT't handled.
No, lifecycle configurations aren't supported at this time. The full list of supported operations is on the API overview page. If you want to, feel free to send me an email (nicholas.lange[at]ibm.com) and let me know what you are trying to do. Having developer feedback makes it easier to advocate for prioritizing new feature work.
Also, FYI, there is a new release of object storage that will be available on the IBM Cloud platform (Bluemix) soon, with IAM permissions and OAuth2 support instead of AWS signatures. The docs will migrate there shortly.

Google Analytics for Rest APIs WSO2 Cloud API

I was following the below blog and was trying to execute the POC but no luck. i did follow all the steps as suggested however I could not see any report in google analytics after saving the content. No user is shown in report. Please suggest what could be wrong in my implementation.
Reference Link
It is very hard to give a generic answer without looking into the configuration. I just followed the tutorial myself and it all worked fine (to test, I was making curl calls in the terminal window at my laptop and watching Real-Time / Overview report in Google Analytics.)
First and foremost, please check that _system/governance/apimgt/statistics/ga-config.xml has Enabled set to true, and TrackingID set to the UA- tracking code you got from GA.
One thing to check is whether you are looking at Real-Time report or historical. When you just implemented the change - look at Real-Time / Overview report initially as it starts showing data much faster.
Also, since API Cloud has multiple gateway nodes, it takes time for the configuration changes to propagate. So one thing to try is to wait 15 minutes or so from the time you applied configuration changes in the cloud, and then try invoking the API and see if the sessions are reflected in Google Analytics.
Finally, if these do not help, just submit the support ticket in API Cloud - support is included for free with the cloud service.

Google cloud storage as the sole 'backend' for a static data powered application?

Can Google cloud storage be used in such an application without a proper http server (Traditional LAMP stack, GAE, etc.)?
If you're having a hard time wrapping your head around "static data powered application", think of it like a blog where you can only read the blog posts (i.e. no likes,comments or any kind of interaction) and which is managed by only one person who updates, adds or removes those blog posts.
The main concerns that I have are :
Read-only access from JavaScript at client side
Prevention against abuse (Does google automatically detect and ban an IP when it sends too many requests, so that the IP can't abuse bandwidth?)
I did some basic digging around the docs, but couldn't find the answer to these, possibly because not many have tried this, I guess.
The access question is already answered by Paul. You can add "read" permission to all users for your object. If you want to do so for all objects in a bucket, you can also set the default object ACL for the bucket to contain such permission.
Google does have abuse protection, but it's not designed for a specific service or resource, and the bar is pretty high given Google's global scale, so it probably won't help your specific use case.
Unfortunately you cannot set a maximum daily spending yet. The Google cloud platform team is always working on new features to help customers solve these issues, but I cannot comment on specific feature or timeline.