DATAPIPELINE

ActivatePipeline

valid {
    input.Body.pipelineId == STRING
    input.Body.parameterValues[_].id == STRING
    input.Body.parameterValues[_].stringValue == STRING
    input.Body.startTimestamp == TIMESTAMP
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AddTags

valid {
    input.Body.pipelineId == STRING
    input.Body.tags[_].key == STRING
    input.Body.tags[_].value == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreatePipeline

valid {
    input.Body.name == STRING
    input.Body.uniqueId == STRING
    input.Body.description == STRING
    input.Body.tags[_].key == STRING
    input.Body.tags[_].value == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeactivatePipeline

valid {
    input.Body.pipelineId == STRING
    input.Body.cancelActive == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeletePipeline

valid {
    input.Body.pipelineId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DescribeObjects

valid {
    input.Body.pipelineId == STRING
    input.Body.objectIds[_] == STRING
    input.Body.evaluateExpressions == BOOLEAN
    input.Body.marker == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DescribePipelines

valid {
    input.Body.pipelineIds[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

EvaluateExpression

valid {
    input.Body.pipelineId == STRING
    input.Body.objectId == STRING
    input.Body.expression == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetPipelineDefinition

valid {
    input.Body.pipelineId == STRING
    input.Body.version == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListPipelines

valid {
    input.Body.marker == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PollForTask

valid {
    input.Body.workerGroup == STRING
    input.Body.hostname == STRING
    input.Body.instanceIdentity.document == STRING
    input.Body.instanceIdentity.signature == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PutPipelineDefinition

valid {
    input.Body.pipelineId == STRING
    input.Body.pipelineObjects[_].id == STRING
    input.Body.pipelineObjects[_].name == STRING
    input.Body.pipelineObjects[_].fields[_].key == STRING
    input.Body.pipelineObjects[_].fields[_].stringValue == STRING
    input.Body.pipelineObjects[_].fields[_].refValue == STRING
    input.Body.parameterObjects[_].id == STRING
    input.Body.parameterObjects[_].attributes[_].key == STRING
    input.Body.parameterObjects[_].attributes[_].stringValue == STRING
    input.Body.parameterValues[_].id == STRING
    input.Body.parameterValues[_].stringValue == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

QueryObjects

enum_OperatorType := [ "EQ", "REF_EQ", "LE", "GE", "BETWEEN" ]

valid {
    input.Body.pipelineId == STRING
    input.Body.query.selectors[_].fieldName == STRING
    input.Body.query.selectors[_].operator.type == enum_OperatorType[_]
    input.Body.query.selectors[_].operator.values[_] == STRING
    input.Body.sphere == STRING
    input.Body.marker == STRING
    input.Body.limit == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RemoveTags

valid {
    input.Body.pipelineId == STRING
    input.Body.tagKeys[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ReportTaskProgress

valid {
    input.Body.taskId == STRING
    input.Body.fields[_].key == STRING
    input.Body.fields[_].stringValue == STRING
    input.Body.fields[_].refValue == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ReportTaskRunnerHeartbeat

valid {
    input.Body.taskrunnerId == STRING
    input.Body.workerGroup == STRING
    input.Body.hostname == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SetStatus

valid {
    input.Body.pipelineId == STRING
    input.Body.objectIds[_] == STRING
    input.Body.status == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SetTaskStatus

enum_TaskStatus := [ "FINISHED", "FAILED", "FALSE" ]

valid {
    input.Body.taskId == STRING
    input.Body.taskStatus == enum_TaskStatus[_]
    input.Body.errorId == STRING
    input.Body.errorMessage == STRING
    input.Body.errorStackTrace == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ValidatePipelineDefinition

valid {
    input.Body.pipelineId == STRING
    input.Body.pipelineObjects[_].id == STRING
    input.Body.pipelineObjects[_].name == STRING
    input.Body.pipelineObjects[_].fields[_].key == STRING
    input.Body.pipelineObjects[_].fields[_].stringValue == STRING
    input.Body.pipelineObjects[_].fields[_].refValue == STRING
    input.Body.parameterObjects[_].id == STRING
    input.Body.parameterObjects[_].attributes[_].key == STRING
    input.Body.parameterObjects[_].attributes[_].stringValue == STRING
    input.Body.parameterValues[_].id == STRING
    input.Body.parameterValues[_].stringValue == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}