Read (GET) a NATRule [SPFSDK][VMMREF]
Applies To: Windows Azure Pack
Gets a NATRule [SPFSDK][VMMREF] entity by using the HTTP GET operation.
Here is a list of examples related to this collection operation.
Example: Read a NAT connection rule
Example: Read all NAT rules of a specific NAT connection
Request
For more information about the placeholders used in the URI, see URL placeholders.
The NATRules collection does not allow reading all instances. You may only either query for a NAT rule by its identifier or by the identifier of the NAT connection it is associated with.
Method |
Request URI |
HTTP Version |
---|---|---|
GET |
https://{server}:{auth-port}/{subscription-id}/services/systemcenter/vmm/NATRules(ID=Guid'[value]',StampId=Guid'[value]') |
HTTP/1.1 |
Request URI Parameters
URI Parameter |
Description |
---|---|
ID |
Required. [Edm.Guid] The identifier of the entity. |
StampId |
Required. [Edm.Guid] The identifier of the stamp that restricts the query. |
Request Headers
This operation does not use any non-standard request headers.
For more information about the common request headers used by this operation, see Common HTTP request information.
Request Body
None
Response
Response Codes
This operation does not return any non-standard OData response codes. If successful, it will return code 200 OK.
Response Headers
This operation does not use any non-standard response headers.
For more information about the common response headers used by this operation, see Common HTTP response information.
Response Body
The response body will contain either (depending on the request headers) an XML or JSON encoded NATRule [SPFSDK][VMMREF] entity or entities. Here is the response body of a single entity.
{
"odata.metadata":"https://contoso.com:30005/86e93b7f-25e3-4c44-8ca1-3ebdbd2dfc06/services/systemcenter/vmm/$metadata#NATRules/@Element",
"StampId":"56ebc6dc-f63c-46e2-8438-2967e0ad83bc",
"ID":"12414468-3cee-4fe4-b0c9-e3db5767ab87",
"NATConnectionId":null,
"Name":"Fun Port Rule",
"ExternalIPAddress":"192.168.0.31",
"ExternalPort":25015,
"InternalIPAddress":"10.0.0.169",
"InternalPort":25015,
"Protocol":"TCP"
}
Example: Read a NAT connection rule
This example reads a single NAT connection rule by identifier.
For more information about how to get started with using the code examples provided in this programming guide, see Program in Visual Studio with the Windows Azure Pack IaaS Resource Provider [SPFSDK].
Guid stampId = new Guid("56ebc6dc-f63c-46e2-8438-2967e0ad83bc");
Guid natRuleId = new Guid("12414468-3cee-4fe4-b0c9-e3db5767ab87");
var natRule = vmmService.NATRules.Where(v => v.StampId == stampId && v.ID == natRuleId).First();
HTTP Request
GET https://contoso.com:30005/86e93b7f-25e3-4c44-8ca1-3ebdbd2dfc06/services/systemcenter/vmm/NATRules(StampId=guid'56ebc6dc-f63c-46e2-8438-2967e0ad83bc',ID=guid'12414468-3cee-4fe4-b0c9-e3db5767ab87') HTTP/1.1
DataServiceVersion: 1.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
DataServiceUrlConventions: KeyAsSegment
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer {ENCODED AUTHENTICATION TOKEN}
x-ms-principal-id: tenant@fabrikam.com
Host: contoso.com:30005
HTTP Response
HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Length: 409
Content-Type: application/json; odata=minimalmetadata; streaming=true; charset=utf-8
Server: Microsoft-IIS/8.5
X-Content-Type-Options: nosniff
request-id: 5fbd8ef2-63e6-0000-25b5-bf5fe663cf01
DataServiceVersion: 3.0;
Server: Microsoft-IIS/8.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
X-Powered-By: ASP.NET
Date: Thu, 15 May 2014 22:28:08 GMT
{"odata.metadata":"https://contoso.com:30005/86e93b7f-25e3-4c44-8ca1-3ebdbd2dfc06/services/systemcenter/vmm/$metadata#NATRules/@Element","StampId":"56ebc6dc-f63c-46e2-8438-2967e0ad83bc","ID":"12414468-3cee-4fe4-b0c9-e3db5767ab87","NATConnectionId":null,"Name":"Fun Port Rule","ExternalIPAddress":"192.168.0.31","ExternalPort":25015,"InternalIPAddress":"10.0.0.169","InternalPort":25015,"Protocol":"TCP"}
Example: Read all NAT rules of a specific NAT connection
This example queries the NATRules collection for any NAT rule of a specific NAT connection.
For more information about how to get started with using the code examples provided in this programming guide, see Program in Visual Studio with the Windows Azure Pack IaaS Resource Provider [SPFSDK].
Guid stampId = new Guid("56ebc6dc-f63c-46e2-8438-2967e0ad83bc");
Guid natConnectionId = new Guid("cc002ebd-acc5-4ae6-9254-010707a55d57");
var natRules = vmmService.NATRules.Where(v => v.StampId == stampId && v.NATConnectionId == natConnectionId).ToList();
HTTP Request
GET https://contoso.com:30005/86e93b7f-25e3-4c44-8ca1-3ebdbd2dfc06/services/systemcenter/vmm/NATRules()?$filter=StampId%20eq%20guid'56ebc6dc-f63c-46e2-8438-2967e0ad83bc'%20and%20NATConnectionId%20eq%20guid'cc002ebd-acc5-4ae6-9254-010707a55d57' HTTP/1.1
DataServiceVersion: 1.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
DataServiceUrlConventions: KeyAsSegment
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer {ENCODED AUTHENTICATION TOKEN}
x-ms-principal-id: tenant@fabrikam.com
Host: contoso.com:30005
HTTP Response
HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Length: 666
Content-Type: application/json; odata=minimalmetadata; streaming=true; charset=utf-8
Server: Microsoft-IIS/8.5
X-Content-Type-Options: nosniff
request-id: 5fbd8ef2-63e6-0000-22b5-bf5fe663cf01
DataServiceVersion: 3.0;
Server: Microsoft-IIS/8.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
X-Powered-By: ASP.NET
Date: Thu, 15 May 2014 22:28:08 GMT
{"odata.metadata":"https://contoso.com:30005/86e93b7f-25e3-4c44-8ca1-3ebdbd2dfc06/services/systemcenter/vmm/$metadata#NATRules","value":[{"StampId":"56ebc6dc-f63c-46e2-8438-2967e0ad83bc","ID":"261edf19-b896-4086-b5b2-bdd198ca6d77","NATConnectionId":null,"Name":"192.168.0.31","ExternalIPAddress":"192.168.0.31","ExternalPort":0,"InternalIPAddress":null,"InternalPort":null,"Protocol":"TCP"},{"StampId":"56ebc6dc-f63c-46e2-8438-2967e0ad83bc","ID":"12414468-3cee-4fe4-b0c9-e3db5767ab87","NATConnectionId":null,"Name":"Fun Port Rule","ExternalIPAddress":"192.168.0.31","ExternalPort":25015,"InternalIPAddress":"10.0.0.169","InternalPort":25015,"Protocol":"TCP"}]}
See Also
NATRules Collection [SPFSDK][VMMREF]
NATRule [SPFSDK][VMMREF]