title: Manage Pipeline description: > Manage Pipeline.

Manage StreamPipes Pipeline


Initialize Go-Client

import (
	"log"
	"github.com/apache/streampipes/streampipes-client-go/streampipes"
	"github.com/apache/streampipes/streampipes-client-go/streampipes/config"
)
func main() {
      clientConfig := config.StreamPipesClientConfig{
            Url: "http://localhost:8030",
            Credential: config.StreamPipesApiKeyCredentials{
                UserName: "<Your-User-Name>",
                ApiKey:   "<Your-API-Key>",
            },
        }

      streamPipesClient, err := streampipes.NewStreamPipesClient(clientConfig)
      if err != nil {
          log.Fatal(err)
      }

}

Create a StreamPipes Pipeline

      // Populating go-model as a data source is not supported at this time,This is because the inheritance of the model has not been resolved for the time being.
      pipelineData = `json`
      pipeline = []byte(pipelineData)
	  responseMsg,err := streamPipesClient.Pipeline().CreatePipeline(pipelineData)

Get a StreamPipes Pipeline

	streampipesPipeline, err := streamPipesClient.Pipeline().GetSinglePipelineStatus("pipelineId")

Start a StreamPipes Pipeline

	operationStatus, err := streamPipesClient.Pipeline().StartSinglePipeline("pipelineId")

Stop a StreamPipes Pipeline

	operationStatus, err := streamPipesClient.Pipeline().StopSinglePipeline("pipelineId")

...