@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api StreamAnalyticsManagementClient
@base https://management.azure.com
@version 2016-03-01
@auth OAuth2
@common_fields {api-version: any # Client Api Version., subscriptionId: any # GUID which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., jobName: any # The name of the streaming job.}
@endpoints 6
@toc subscriptions(6)

@endpoint PUT /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StreamAnalytics/streamingjobs/{jobName}/outputs/{outputName}
@desc Creates an output or replaces an already existing output under an existing streaming job.
@required {output: any # The definition of the output that will be used to create a new output or replace the existing one under the streaming job., outputName: any # The name of the output.}
@optional {If-Match: any # The ETag of the output. Omit this value to always overwrite the current output. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes., If-None-Match: any # Set to '*' to allow a new output to be created, but to prevent updating an existing output. Other values will result in a 412 Pre-condition Failed response.}
@returns(200) The output was successfully created or replaced.
@returns(201) The output was successfully created or replaced.

@endpoint PATCH /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StreamAnalytics/streamingjobs/{jobName}/outputs/{outputName}
@desc Updates an existing output under an existing streaming job. This can be used to partially update (ie. update one or two properties) an output without affecting the rest the job or output definition.
@required {output: any # An Output object. The properties specified here will overwrite the corresponding properties in the existing output (ie. Those properties will be updated). Any properties that are set to null here will mean that the corresponding property in the existing output will remain the same and not change as a result of this PATCH operation., outputName: any # The name of the output.}
@optional {If-Match: any # The ETag of the output. Omit this value to always overwrite the current output. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes.}
@returns(200) The output was successfully updated.

@endpoint DELETE /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StreamAnalytics/streamingjobs/{jobName}/outputs/{outputName}
@desc Deletes an output from the streaming job.
@required {outputName: any # The name of the output.}
@returns(200) The output was successfully deleted.
@returns(204) The output does not exist.

@endpoint GET /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StreamAnalytics/streamingjobs/{jobName}/outputs/{outputName}
@desc Gets details about the specified output.
@required {outputName: any # The name of the output.}
@returns(200) Successfully retrieved the specified output.

@endpoint GET /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StreamAnalytics/streamingjobs/{jobName}/outputs
@desc Lists all of the outputs under the specified streaming job.
@optional {$select: any # The $select OData query parameter. This is a comma-separated list of structural properties to include in the response, or "*" to include all properties. By default, all properties are returned except diagnostics. Currently only accepts '*' as a valid value.}
@returns(200) Successfully listed the outputs under the specified streaming job.

@endpoint POST /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StreamAnalytics/streamingjobs/{jobName}/outputs/{outputName}/test
@desc Tests whether an output’s datasource is reachable and usable by the Azure Stream Analytics service.
@required {outputName: any # The name of the output.}
@optional {output: any # If the output specified does not already exist, this parameter must contain the full output definition intended to be tested. If the output specified already exists, this parameter can be left null to test the existing output as is or if specified, the properties specified will overwrite the corresponding properties in the existing output (exactly like a PATCH operation) and the resulting output will be tested.}
@returns(200) The test operation completed successfully.
@returns(202) The test request was successfully initiated.

@end
