The Endpoint represents the URL from where your service can be accessed by a client application. You can also visit Visual Studio website and go through the tutorial that will show how to develop a Service Endpoint by creating an example Extension for Team Services. You can create a service endpoint in Configuration as well as in Code.
The extensible of platform and tools that work with VSTS Endpoint is quite long and it’s presented in the next image. The connections including Jenkins, HipChat, Slack, Zendesk and much more. The image below presents only some of the connections, but please not that this is not the finalized list of all connections. Some of the partners are not represented here as they are using some of the other services for integrations, such as Service Hooks. Service Endpoints are usually integrated in the area for pulling or pushing Artifact which are related to Build Release. So Service Endpoints are representing one way to connect VSTS to another product, but it can be also connected in a different, more appropriate way if this is necessary, depending on what are the needs for connection.
What is Service Endpoint
Service endpoints are enabling Team Services to connect to external systems or services. They are set of features, securely stored by Team Services which includes also:
• Service Name
• Server URL
• Certificates or Tokens
• User names and passwords
Extensions can then leverage the Service Endpoint to obtain stored data to perform the necessary operations in that service
The image below represents basically the Service Endpoints user interface.
How we actually create them – there is an admin experience that allows you to often decide what service endpoints you need to create. It will then prompt with a dialog box and you can fill the pertinent information and then we can establish the connection between VSTS and the third party or the external system that we want to connect to and then throughout our Build and Releases we are then able to identify this is the service endpoint that I need to use to get Artifact, to get that information from that external system.
When creating Service Endpoint for Azure, there is possibility to create a Service Endpoint for Azure, you can create it using Credentials, Certificate or Service Principal. The difference between all three ways, is that some of the tasks inside of task library work only with one type of authentication. Generally for creating Service Endpoint for Azure, you will need two types of Authentication. It is highly recommendable to create Service Principal or Credentials authentication and also create Certificate credentials, because in this way you will be able to reach all different Assets in Azure.
Endpoints are defined by stating an address, a binding, and a contract. Other parameters that can be set at the endpoint configuration include the behaviour, headers and listen URIs. For some specific types of endpoints these values don’t change. Such example is metadata exchange endpoints, which is always using the IMetadataExchange contract. Other endpoints, such as <T:System.ServiceModel.Web.WebHttpEndpoint> always require a specified endpoint behaviour.