There is an existing developer portal in Drupal that uses APIGEE to give 3rd party developers access to remote API and documentation. The portal is not configured and costumized correctly so for this reason the portal has many problems.The website has its own database but also uses APigee db.
My task is to create a website by using cms/probably will be wordpress/, migrate the users and the forum from the existing database and establish connection with the API provider.
The idea is not to use the dev portal provided by APIGEE and DRUPAL but just make my own and use some of the things provided by Apigee.
Could tou give me some directions is that possible and where I need to dive in more?
Thanks a lot!
All the developer management and key management features in Apigee is accessible using REST APIs (protected by role based access control aka RBAC)
You can always develop any portal or UI of your choice and invoke these APIs provided by Apigee to implement features such as
Creating a new developer
allowing the developer to subscribe to API products
allow the developer create and manage his own API Apps, Keys
allow the developer to view App analytics etc.
You can follow the API documentation here:
https://docs.apigee.com/api/apps-developer
Related
I would like to develop a simple ToDo app using Xamarin. It should allow the user to sign in with an account and access their notes on multiple platforms.
Microsoft offer a number of sample applications using different APIs (https://developer.xamarin.com/samples/android/Web%20Services), but to a beginner, it seems unclear what the advantages and disadvantages are of the different methods. I'd be grateful if you could outline these for me for the differing technologies (e.g. CosmosDB, REST, ASMX, DocumentDB, Azure Mobile App, and OAuth).
CosmosDB:
Azure Cosmos DB is Microsoft's globally distributed, multi-model database service. With a click of a button, Cosmos DB enables you to elastically and independently scale throughput and storage across any number of Azure regions worldwide. For details You Could Check here
REST:
Representational State Transfer in short (REST), REST requires that a client make a request to the server in order to retrieve or modify data on the server. A request generally consists of:
an HTTP verb, which defines what kind of operation to perform
a header, which allows the client to pass along information about the
request
a path to a resource
an optional message body containing data
There are many good article you could found online. you can check here
ASMX:
.asmx is Active server methods. Webservices have this extension in dotnet. ASMX provides the ability to build web services that send messages using the Simple Object Access Protocol (SOAP). SOAP is a platform-independent and language-independent protocol for building and accessing web services. You can find more details here
DocumentDB:
CosmosDb is the evolved version of documentDb. It is also important to point out that DocumentDB’s SQL dialect has always been just one of the many APIs that the underlying Cosmos DB was capable of supporting.
Azure Mobile App:
Azure App Service is a fully managed platform as a service (PaaS) offering for professional developers. The service brings a rich set of capabilities to web, mobile, and integration scenarios. You can start good tutorial here
OAuth:
OAuth is an open-standard authorization protocol or framework that describes how unrelated servers and services can safely allow authenticated access to their assets without actually sharing the initial, related, single logon credential. In authentication parlance, this is known as secure, third-party, user-agent, delegated authorization. You could check here
In the Azure APIM, is it possible to manage the content in a programmatic way -let's say the REST API or SDK- when I have some changes in Developer Portal content?
I saw there are some articles mentioned to use the iFrame but it is still required to have manual change in portal. For CI/CD, the requirement is make everything as code. So when writer updated / create / rebuild content in the APIM platform, we can use the Jenkins or another tools to make it change.
Currently it is not possible to natively manage developer's portal content programmatically, with the exception of data generated by API Management (e.g., API descriptions or API operations are fetched live and API Management's API call response is mapped to UI).
However, there are plans to allow for more control and automation with regards to developer portal content, customizations and deployments.
We have built a simple mobile app that connects to ASP.net Web-API 2.
We would like to use Microsoft client SDK for it's offline sync support.
Now that Azure Mobile Apps support custom authentication we could actually take the leap.
I want to know out if the offline sync SDK absolutely requires us to use Azure Mobile App or Azure Mobile Services.
Microsoft documentation is full of how-to guides but does not explain what happens under the hood. The best I could understand, both are just OData rest API's and swagger for documentation.
Can the Azure Mobile Client SDK work with API server created on top of ordinary ASP Web-App, outside Azure?
What is it about the Azure Mobile App that makes the magic happen?
Vladmir,
On top of OData, in order to support features like soft delete, offline sync and others, the Azure Mobile Client SDK expects the server to implement a certain protocol. So although the answer to your question:
[does the] sync SDK absolutely requires us to use Azure Mobile App?
... is no, and in theory, you could implement your own API, but I would recommend against doing so, since (among other reasons) even if you manage to implement the expected conventions and behaviors, this will become a maintenance challenge down the road if you need to upgrade the client SDK to take advantage of bug fixes and/or new features.
The good news is that with the latest release of the Azure Mobile Apps server SDK, adding mobile capabilities to an existing ASP.NET Web API application is trivial, and you should be able to enable the scenarios you're looking for simply by adding the appropriate Table controllers. So you can just enhance your existing application and not have to develop and maintain the Azure Mobile Apps specific logic yourself.
About your last question, since both, the client and the server SDK are both open source and developed in the open, you can look at what what makes the magic happen here:
https://github.com/Azure/azure-mobile-apps-net-server
https://github.com/Azure/azure-mobile-apps-net-client
I hope this helps!
The answer for your first question: Yes the SDK can be used in any Server API you have since it will be your entry point to work with Azure Mobile Services.
The Azure Mobile app creates a mobile services instance which has push notifications and SQL tables to store all messages you would like to send with the capability to customize the message as needed. Also it creates a notifications hub instance under the hood to manage notifications for all mobile platforms. Azure mobile apps provide offline capabilities through native sync services between db on your devices and the server when connectivity is present.
Feel free to ask more questions to have a full understanding on How mobile apps works.
Hope this helps.
is there any way to publish my API in azure mobile service API instead of using its own. I want just to know it, because assume I have a backup server in amazon and as you know I don't have access to azure sdk in there and it means technically I cant use the API anywhere outside the azure.
Azure mobile services is actually based on the .Net web api in their C# flavor and on node.js on the Javascript side. You could surely write an API using those technology and have the same behavior. You will gain the fact of being more portable, however you will lose some of the preconfigured stuff from Mobile services.
If you are using .NET, please check this to see how to build a Web api! http://www.asp.net/web-api.
If you are using Javascript, here is where you should start : https://nodejs.org/
Both tech are quite easy to learn and super powerfull, have fun! When your API is built, you could just publish them as an azure Web APP (http://azure.microsoft.com/en-us/services/app-service/web/) or an Azure API (https://azure.microsoft.com/en-us/services/app-service/api/) instead of the mobile App
Hope it helps, if you have more questions, please ask!
You can create and publish your own custom APIs in azure mobile service. You could even access in via azure mobile service sdk in client by using "InvokeApiAsync<>()" method.
https://msdn.microsoft.com/en-us/library/windows/apps/xaml/dn614130.aspx
If you want to access the api via fidder/httpclient than AZM SDK, pass the mobile service key in HTTP header as Name:'x-zumo-application' value:'application key from portal'
According to the releases a few day ago by Scottgu, its now possible to use the windows azure management api without client certificates.
Are there any examples of doing this?
I have a Azure Cloud Service Package that I would like to let people deploy from my website. Therefore I would like to, from javascript, to authenticate the user to their Azure subscription ( some oauth against the WAAD ) and then by rest api deploy my package for them.
I dont need a concrete examples, but just some pointers on how I could do this.
I dont want users to give me their passwords offcause, therefore i need some guidance on how I can do SSO of the user against WAAD/Windows Azure management api and from there use the access token to deploy the package.
As of today, the Service Management API documentation regarding this new authentication mechanism (http://msdn.microsoft.com/en-us/library/windowsazure/ee460782.aspx) is not updated. Since the new login mechanism is supported in PowerShell which is essentially a REST Wrapper over this API and is open source, one thing you could do is take a look at the source code of the Cmdlets on Github (https://github.com/WindowsAzure/azure-sdk-tools) to see how it is accomplished there and write something of your own (and share it here:)).