apicheats.dev github/llms.txt Raw .md
POST

POST /repos/{owner}/{repo}/check-runs — GitHub API

GitHub token (required); https://api.github.com

GitHub API

Create a check run

Base URL
https://api.github.com
Auth
Authorization: Bearer <GITHUB_API_KEY>
Last verified
2026-10-20 · upstream hash matched
Actions Try in browser→
Agents: curl -H "Accept: text/markdown" this URL
→ 390 tokens · Vary: Accept

Critical gotchas

GitHub recommends an Accept: application/vnd.github+json header and an explicit X-GitHub-Api-Version header.

Fine-grained tokens only authorize repositories and permissions selected when the token is created.

cURL

curl -X POST 'https://api.github.com/repos/example-owner/example-repo/check-runs' \  -H "Authorization: Bearer $GITHUB_TOKEN" \  -H 'Accept: application/vnd.github+json' \  -H 'X-GitHub-Api-Version: 2026-03-10' \  -H 'Content-Type: application/json' \  -d '{  "name": "example-name",  "head_sha": "example-head-sha"}'

Parameters

Name In Type Required Description
owner path string Yes The account owner of the repository. The name is not case sensitive.
repo path string Yes The name of the repository without the `.git` extension. The name is not case sensitive.
name body string Yes The name of the check. For example, "code-coverage".
head_sha body string Yes The SHA of the commit.
details_url body string No The URL of the integrator's site that has the full details of the check. If the integrator does not provide this, then the homepage of the GitHub app is used.
external_id body string No A reference for the run on the integrator's system.
status body string No The current status of the check run. Only GitHub Actions can set a status of `waiting`, `pending`, or `requested`.
started_at body string No The time that the check run began. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.
conclusion body string No **Required if you provide `completed_at` or a `status` of `completed`**. The final conclusion of the check. **Note:** Providing `conclusion` will automatically set the `status` parameter to `completed`. You cannot change a check run conclusion to `stale`, only GitHub can set this.
completed_at body string No The time the check completed. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.
output body object No Check runs can accept a variety of data in the `output` object, including a `title` and `summary` and can optionally provide descriptive details about the run.
actions body object[] No Displays a button on GitHub that can be clicked to alert your app to do additional tasks. For example, a code linting app can display a button that automatically fixes detected errors. The button created in this object is displayed after the check run completes. When a user clicks the button, GitHub sends the [`check_run.requested_action` webhook](https://docs.github.com/webhooks/event-payloads/#check_run) to your app. Each action includes a `label`, `identifier` and `description`. A maximum of three actions are accepted. To learn more about check runs and requested actions, see "[Check runs and requested actions](https://docs.github.com/rest/guides/using-the-rest-api-to-interact-with-checks#check-runs-and-requested-actions)."

Response 200 OK

{
  "id": 21,
  "head_sha": "009b8a3a9ccbb128af87f9b1c0f4c62e8a304f6d",
  "node_id": "MDg6Q2hlY2tSdW40",
  "external_id": "42",
  "url": "https://api.github.com/repos/github/hello-world/check-runs/4",
  "html_url": "https://github.com/github/hello-world/runs/4",
  "details_url": "https://example.com",
  "status": "queued",
  "conclusion": "neutral",
  "started_at": "2018-05-04T01:14:52Z",
  "completed_at": "2018-05-04T01:14:52Z",
  "output": {
    "title": "string",
    "summary": "string",
    "text": "string",
    "annotations_count": 0,
    "annotations_url": "https://example.com"
  },
  "name": "test-coverage",
  "check_suite": {
    "id": 0
  },
  "app": {
    "id": 37,
    "slug": "probot-owners",
    "node_id": "MDExOkludGVncmF0aW9uMQ==",
    "client_id": "\"Iv1.25b5d1e65ffc4022\"",
    "owner": {
      "name": "string",
      "email": "string",
      "login": "octocat",
      "id": 1,
      "node_id": "MDQ6VXNlcjE=",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif",
      "gravatar_id": "41d064eb2195891e12d0413f63227ea7",
      "url": "https://api.github.com/users/octocat",
      "html_url": "https://github.com/octocat",
      "followers_url": "https://api.github.com/users/octocat/followers",
      "following_url": "https://api.github.com/users/octocat/following{/other_user}",
      "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
      "organizations_url": "https://api.github.com/users/octocat/orgs",
      "repos_url": "https://api.github.com/users/octocat/repos",
      "events_url": "https://api.github.com/users/octocat/events{/privacy}",
      "received_events_url": "https://api.github.com/users/octocat/received_events",
      "type": "User",
      "site_admin": true,
      "starred_at": "\"2020-07-09T00:17:55Z\"",
      "user_view_type": "public"
    },
    "name": "Probot Owners",
    "description": "The description of the app.",
    "external_url": "https://example.com",
    "html_url": "https://github.com/apps/super-ci",
    "created_at": "2017-07-08T16:18:44-04:00",
    "updated_at": "2017-07-08T16:18:44-04:00",
    "permissions": {
      "issues": "read",
      "deployments": "write"
    },
    "events": [
      "label",
      "deployment"
    ],
    "installations_count": 5
  },
  "pull_requests": [
    {
      "id": 0,
      "number": 0,
      "url": "string",
      "head": {
        "ref": "string",
        "sha": "string",
        "repo": {
          "id": 0,
          "url": "string",
          "name": "string"
        }
      },
      "base": {
        "ref": "string",
        "sha": "string",
        "repo": {
          "id": 0,
          "url": "string",
          "name": "string"
        }
      }
    }
  ],
  "deployment": {
    "url": "https://api.github.com/repos/octocat/example/deployments/1",
    "id": 42,
    "node_id": "MDEwOkRlcGxveW1lbnQx",
    "task": "deploy",
    "original_environment": "staging",
    "environment": "production",
    "description": "Deploy request from hubot",
    "created_at": "2012-07-20T01:19:13Z",
    "updated_at": "2012-07-20T01:19:13Z",
    "statuses_url": "https://api.github.com/repos/octocat/example/deployments/1/statuses",
    "repository_url": "https://api.github.com/repos/octocat/example",
    "transient_environment": true,
    "production_environment": true,
    "performed_via_github_app": {
      "id": 37,
      "slug": "probot-owners",
      "node_id": "MDExOkludGVncmF0aW9uMQ==",
      "client_id": "\"Iv1.25b5d1e65ffc4022\"",
      "owner": {
        "name": "string",
        "email": "string",
        "login": "octocat",
        "id": 1,
        "node_id": "MDQ6VXNlcjE=",
        "avatar_url": "https://github.com/images/error/octocat_happy.gif",
        "gravatar_id": "41d064eb2195891e12d0413f63227ea7",
        "url": "https://api.github.com/users/octocat",
        "html_url": "https://github.com/octocat",
        "followers_url": "https://api.github.com/users/octocat/followers",
        "following_url": "https://api.github.com/users/octocat/following{/other_user}",
        "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
        "organizations_url": "https://api.github.com/users/octocat/orgs",
        "repos_url": "https://api.github.com/users/octocat/repos",
        "events_url": "https://api.github.com/users/octocat/events{/privacy}",
        "received_events_url": "https://api.github.com/users/octocat/received_events",
        "type": "User",
        "site_admin": true,
        "starred_at": "\"2020-07-09T00:17:55Z\"",
        "user_view_type": "public"
      },
      "name": "Probot Owners",
      "description": "The description of the app.",
      "external_url": "https://example.com",
      "html_url": "https://github.com/apps/super-ci",
      "created_at": "2017-07-08T16:18:44-04:00",
      "updated_at": "2017-07-08T16:18:44-04:00",
      "permissions": {
        "issues": "read",
        "deployments": "write"
      },
      "events": [
        "label",
        "deployment"
      ],
      "installations_count": 5
    }
  }
}
Get a free GitHub API key → sponsored

Affiliate link - we may earn a commission, at no extra cost to you.