Get Application Type Info List
Gets the list of application types in the Service Fabric cluster.
Returns the information about the application types that are provisioned or in the process of being provisioned in the Service Fabric cluster. Each version of an application type is returned as one application type. The response includes the name, version, status, and other details about the application type. This is a paged query, meaning that if not all of the application types fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. For example, if there are 10 application types but a page only fits the first three application types, or if max results is set to 3, then three is returned. To access the rest of the results, retrieve subsequent pages by using the returned continuation token in the next query. An empty continuation token is returned if there are no subsequent pages.
Request
Method | Request URI |
---|---|
GET | /ApplicationTypes?api-version=6.0&ApplicationTypeDefinitionKindFilter={ApplicationTypeDefinitionKindFilter}&ExcludeApplicationParameters={ExcludeApplicationParameters}&ContinuationToken={ContinuationToken}&MaxResults={MaxResults}&timeout={timeout} |
Parameters
Name | Type | Required | Location |
---|---|---|---|
api-version |
string | Yes | Query |
ApplicationTypeDefinitionKindFilter |
integer | No | Query |
ExcludeApplicationParameters |
boolean | No | Query |
ContinuationToken |
string | No | Query |
MaxResults |
integer (int64) | No | Query |
timeout |
integer (int64) | No | Query |
api-version
Type: string
Required: Yes
Default: 6.0
The version of the API. This parameter is required and its value must be '6.0'.
Service Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.
Additionally the runtime accept any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0, but if the runtime is 6.1, in order to make it easier to write the clients, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.
ApplicationTypeDefinitionKindFilter
Type: integer
Required: No
Default: 0
Used to filter on ApplicationTypeDefinitionKind which is the mechanism used to define a Service Fabric application type.
- Default - Default value, which performs the same function as selecting "All". The value is 0.
- All - Filter that matches input with any ApplicationTypeDefinitionKind value. The value is 65535.
- ServiceFabricApplicationPackage - Filter that matches input with ApplicationTypeDefinitionKind value ServiceFabricApplicationPackage. The value is 1.
- Compose - Filter that matches input with ApplicationTypeDefinitionKind value Compose. The value is 2.
ExcludeApplicationParameters
Type: boolean
Required: No
Default: false
The flag that specifies whether application parameters will be excluded from the result.
ContinuationToken
Type: string
Required: No
The continuation token parameter is used to obtain next set of results. A continuation token with a non-empty value is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token does not contain a value. The value of this parameter should not be URL encoded.
MaxResults
Type: integer (int64)
Required: No
Default: 0
InclusiveMinimum: 0
The maximum number of results to be returned as part of the paged queries. This parameter defines the upper bound on the number of results returned. The results returned can be less than the specified maximum results if they do not fit in the message as per the max message size restrictions defined in the configuration. If this parameter is zero or not specified, the paged query includes as many results as possible that fit in the return message.
timeout
Type: integer (int64)
Required: No
Default: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
The server timeout for performing the operation in seconds. This timeout specifies the time duration that the client is willing to wait for the requested operation to complete. The default value for this parameter is 60 seconds.
Responses
HTTP Status Code | Description | Response Schema |
---|---|---|
200 (OK) | List of application types in the cluster. |
PagedApplicationTypeInfoList |
All other status codes | The detailed error response. |
FabricError |
Examples
Limit maximum results
This example shows how to get information about application types that are provisioned or being provisioned in the cluster. The number of results in a page are limited to maximum of five using MaxResult parameter.
Request
GET http://localhost:19080/ApplicationTypes?api-version=6.0&MaxResults=5
200 Response
Body
{
"ContinuationToken": "PersistentQueueApp+2.0",
"Items": [
{
"Name": "CalculatorApp",
"Version": "1.0",
"DefaultParameterList": [
{
"Key": "ServiceInstanceCount",
"Value": "3"
}
],
"Status": "Available"
},
{
"Name": "CalculatorApp",
"Version": "2.0",
"DefaultParameterList": [
{
"Key": "ServiceInstanceCount",
"Value": "3"
}
],
"Status": "Available"
},
{
"Name": "GatewayApp",
"Version": "1.0",
"DefaultParameterList": [
{
"Key": "GatewayPort",
"Value": "8505"
},
{
"Key": "ServiceInstanceCount",
"Value": "1000"
}
],
"Status": "Available"
},
{
"Name": "PersistentQueueApp",
"Version": "1.0",
"DefaultParameterList": [
{
"Key": "MinReplicaSetSize",
"Value": "2"
},
{
"Key": "TargetReplicaSetSize",
"Value": "3"
}
],
"Status": "Available"
},
{
"Name": "PersistentQueueApp",
"Version": "2.0",
"DefaultParameterList": [
{
"Key": "MinReplicaSetSize",
"Value": "2"
},
{
"Key": "TargetReplicaSetSize",
"Value": "3"
}
],
"Status": "Available"
}
]
}
Page using continuation token
This example shows how to page through the information about application types that are provisioned or being provisioned in the cluster using ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining two results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.
Request
GET http://localhost:19080/ApplicationTypes?api-version=6.0&ContinuationToken=PersistentQueueApp+2.0&MaxResults=5
200 Response
Body
{
"ContinuationToken": "",
"Items": [
{
"Name": "VolatileQueueApp",
"Version": "1.0",
"DefaultParameterList": [
{
"Key": "MinReplicaSetSize",
"Value": "2"
},
{
"Key": "TargetReplicaSetSize",
"Value": "3"
}
],
"Status": "Available"
},
{
"Name": "VolatileQueueApp",
"Version": "2.0",
"DefaultParameterList": [
{
"Key": "MinReplicaSetSize",
"Value": "2"
},
{
"Key": "TargetReplicaSetSize",
"Value": "3"
}
],
"Status": "Available"
}
]
}
Exclude application parameters from the result
This example shows how to exclude application parameter in the result when getting the information about application types that are provisioned or being provisioned in the cluster.
Request
GET http://localhost:19080/ApplicationTypes?api-version=6.0&ExcludeApplicationParameters=True
200 Response
Body
{
"ContinuationToken": "",
"Items": [
{
"Name": "CalculatorApp",
"Version": "1.0",
"DefaultParameterList": [],
"Status": "Available"
},
{
"Name": "CalculatorApp",
"Version": "2.0",
"DefaultParameterList": [],
"Status": "Available"
},
{
"Name": "GatewayApp",
"Version": "1.0",
"DefaultParameterList": [],
"Status": "Available"
},
{
"Name": "PersistentQueueApp",
"Version": "1.0",
"DefaultParameterList": [],
"Status": "Available"
},
{
"Name": "PersistentQueueApp",
"Version": "2.0",
"DefaultParameterList": [],
"Status": "Available"
},
{
"Name": "VolatileQueueApp",
"Version": "1.0",
"DefaultParameterList": [],
"Status": "Available"
},
{
"Name": "VolatileQueueApp",
"Version": "2.0",
"DefaultParameterList": [],
"Status": "Available"
}
]
}