New pull requests: Milestone and Label values ignored

I’m having a bit of a hard time creating pull requests with pre-assigned labels and milestones.

My repo has a milestone called v1.11.2 in which number field reads as 6. It also does have a label called enhancement.

I’m then trying to create the pull request with this payload:

    "head": "issue-981",
    "base": "dev",
    "owner": "my_username",
    "title": "Stub - Pull request creation test.",
    "body": "**Draft PR Notice:** The pull request is opened in draft mode. Please switch it to 'Ready for Review' in order to trigger the pull request checks. Once they are complete, the Pull Request should be ready to merge.",
    "labels": [ "enhancement" ],
    "maintainer_can_modify": true,
    "milestone": "6",
    "draft": true

The pull request itself is created, and as draft, as I wanted! But it refuses to get the label or milestone. Some facts:

  • the milestone is in “open” state
  • the milestone reads "number": 6, and "title": "v1.11.2",
  • the repository is private (thus my access token should be correct and have push access – or else I wouldn’t be able to create the pr at all)
  • the repo is under my account (I’m not listed as a limited access, read-only contributor)
  • once the PR is created, I can open it in and assign the label and milestone. yikes!
  • I also tried "milestone": 6, and `“milestone”: “v1.11.2” for no avail
  • REST docs doesn’t list label or milestone as valid input, but they say they share issues API functionality at the top of the page (2nd paragraph):

" Every pull request is an issue, but not every issue is a pull request. For this reason, “shared” actions for both features, like manipulating assignees, labels and milestones, are provided within the Issues API."

The labels and milestone lines I receive in the response of the pr creation is:

  "labels": [

  "milestone": null,

As if I didn’t have push access to the repo.

(a) am I doing something terribly wrong here in the request payload?
(b) am I just misreading docs and should be doing something different (another step – patch?) to assign labels and milestones to issues? that’d be a bummer to need multiple requests to create it
(c) is this supposed to work but is actually broken/unimplemented at GitHub?
(d) something else :stuck_out_tongue:

Any help is appreciated!