Can not set visibility to public when creating/updating pipeline using REST API

I can not set visibility to public when creating/updating pipeline using REST API.

I can see that it is documented in Pipelines API | Buildkite Documentation but setting this field to public using either POST or PATCH ```
https://api.buildkite.com/v2/organizations/{org.slug}/pipelines/{slug}

1 Like

Hey @elena Welcome to Buildkite community. Yes, your observation is correct that currently using REST API we cannot set the pipeline as Public. We will look into this issue with REST API however in meantime you would be able to achieve this using GraphQL API

(*)
mutation {
  pipelineCreate(input: {
    organizationId: $organizationID,
    name: $pipelineName,
    visibility: PUBLIC,
    repository: {
      url: "git@github.com:blerp/goober.git"
    },
    steps: {
      yaml: "steps:\n- command: true"
    }
  }) {
    pipeline {
      public  # true
      visibility # PUBLIC
      organization {
        public # true
      }
    }
  }
}

It’s really frustrating that this is the case, especially when it clearly differs from the documentation

In general, dealing with the only partially overlapping REST and GraphQL APIs is a very frustrating user experience

1 Like

Hi folks! Sorry this caused some trouble. But we’ve shipped a fix, and the REST API now supports specifying visibility when creating and updating pipelines.