Pipeline Schedule API - Play returns 201 but pipeline never gets triggered

Dear Experts,

I am having a pipeline schedule that runs fine. I created a Token (even with Owner access) to trigger the same schedule via API. I am triggering the schedule by calling /play endpoint like:

curl -vv -X POST -H "Authorization: Bearer TOKEN" "https://gitlab.com/api/v4/projects/PROJECT_ID/pipeline_schedules/SCHEDULE_ID/play"

And the API returns a response with {"message":"201 Created"}

But the pipeline never gets triggered somehow, and I don’t see anything in the pipelines page as well. Requesting your help to debug this problem, thanks.

Thanks much!

Hi @cegparamesh

That’s weird! Does the pipeline get stuck? Do you have a runner with the right tags?

If you do, maybe you can post a little bit of your .gitlab-ci.yml? My next guess would be that maybe your rules don’t quite work with schedules.

Having the same issue – Access Token = Owner and using the “Run a scheduled pipeline immediately” Example

curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/42/pipeline_schedules/1/play"

Link: Pipeline schedules API | GitLab

I get a 201 status back …but when checking the pipeline history of that project …no triggers no running pipelines

Having the same issue.

curl --location --request POST 'https://my-hostname/api/v4/projects/1020/pipeline_schedules/1505/play'
--header 'PRIVATE-TOKEN: xxxxxxx'

It returns 201 but pipeline is not triggered.
I have Gitlab version 15.4.

Problem was fixed for me when using personal access token instead of project access token :man_facepalming:

1 Like