dev.knotless.createPull

Writes a dev.knotless.pull record in the account logged in to this appview's web pages, as `knotless pull` does: asking to merge a branch of this repository or a fork into one of its branches, both of which must exist. Refused, with the template, when the repository has one at the base (see dev.knotless.getTemplate) and the body follows none of it. Requires the session cookie the pages' login sets.

Details · procedure
Kindprocedure
Authorityknotless.dev
Indexed

Showing version bafyreifmn4cn34fjzkqungovm2uq246nqmjeontvkexofsj2wgtdld2oda. Show the latest

cid bafyreifmn4cn34fjzkqungovm2uq246nqmjeontvkexofsj2wgtdld2oda

Checks

Valid Lint pass
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Writes a dev.knotless.pull record in the account logged in to this appview's web pages, as `knotless pull` does: asking to merge a branch of this repository or a fork into one of its branches, both of which must exist. Refused, with the template, when the repository has one at the base (see dev.knotless.getTemplate) and the body follows none of it. Requires the session cookie the pages' login sets.",
      "errors": [
        {
          "description": "No such repository.",
          "name": "NotFound"
        },
        {
          "description": "No account is logged in to the pages, or its session has ended.",
          "name": "AuthenticationRequired"
        }
      ],
      "input": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "base": {
              "description": "The branch to merge into.",
              "maxLength": 1024,
              "type": "string"
            },
            "body": {
              "description": "What it does and why, in Markdown.",
              "maxLength": 20000,
              "type": "string"
            },
            "branch": {
              "description": "The branch to bring in.",
              "maxLength": 1024,
              "type": "string"
            },
            "draft": {
              "description": "Open it as a draft, not ready to merge or queue. Not, when absent.",
              "type": "boolean"
            },
            "head": {
              "description": "The repository the branch is on: this one, or a fork.",
              "format": "at-uri",
              "type": "string"
            },
            "images": {
              "description": "Pictures uploaded with dev.knotless.uploadImage; those the body links to are attached.",
              "items": {
                "ref": "dev.knotless.defs#image",
                "type": "ref"
              },
              "maxLength": 32,
              "type": "array"
            },
            "labels": {
              "description": "Labels to put on it as it opens, as dev.knotless.labelItem would: refused, with nothing written, when one is not the repository's or not the account's to put on.",
              "items": {
                "ref": "dev.knotless.defs#labelName",
                "type": "ref"
              },
              "maxLength": 32,
              "type": "array"
            },
            "repo": {
              "description": "The repository to merge into: its dev.knotless.repo record, as dev.knotless.getRepo takes it.",
              "format": "at-uri",
              "type": "string"
            },
            "reviewers": {
              "description": "The accounts its author asks to review it, as its record names them; `requestedAt` is set as it is written.",
              "items": {
                "ref": "dev.knotless.pull#reviewer",
                "type": "ref"
              },
              "maxLength": 32,
              "type": "array"
            },
            "title": {
              "maxGraphemes": 300,
              "maxLength": 3000,
              "type": "string"
            }
          },
          "required": [
            "repo",
            "base",
            "head",
            "branch",
            "title"
          ],
          "type": "object"
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "uri": {
              "description": "The dev.knotless.pull record written.",
              "format": "at-uri",
              "type": "string"
            }
          },
          "required": [
            "uri"
          ],
          "type": "object"
        }
      },
      "type": "procedure"
    }
  },
  "description": "Opens a pull on a repository, as the account logged in to this appview's pages.",
  "id": "dev.knotless.createPull",
  "lexicon": 1
}