---
title: "Get a commit object"
method: GET
path: "/repos/{owner}/{repo}/git/commits/{commit_sha}"
tags: ["git"]
---

# Get a commit object

`GET /repos/{owner}/{repo}/git/commits/{commit_sha}`

Gets a Git [commit object](https://git-scm.com/book/en/v2/Git-Internals-Git-Objects).

To get the contents of a commit, see "[Get a commit](/rest/commits/commits#get-a-commit)."

**Signature verification object**

The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:

| Name | Type | Description |
| ---- | ---- | ----------- |
| `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
| `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in the table below. |
| `signature` | `string` | The signature that was extracted from the commit. |
| `payload` | `string` | The value that was signed. |
| `verified_at` | `string` | The date the signature was verified by GitHub. |

These are the possible values for `reason` in the `verification` object:

| Value | Description |
| ----- | ----------- |
| `expired_key` | The key that made the signature is expired. |
| `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
| `gpgverify_error` | There was an error communicating with the signature verification service. |
| `gpgverify_unavailable` | The signature verification service is currently unavailable. |
| `unsigned` | The object does not include a signature. |
| `unknown_signature_type` | A non-PGP signature was found in the commit. |
| `no_user` | No user was associated with the `committer` email address in the commit. |
| `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on their account. |
| `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
| `unknown_key` | The key that made the signature has not been registered with any user's account. |
| `malformed_signature` | There was an error parsing the signature. |
| `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
| `valid` | None of the above errors applied, so the signature is considered to be verified. |

## Path parameters

- `owner` string, required
- `repo` string, required
- `commit_sha` string, required

## Response `200`

Response

- GitCommit — Low-level Git commit operations within a repository
  - `sha` string, required — SHA for the commit
  - `node_id` string, required
  - `url` string, uri, required
  - `author` object, required — Identifying information for the git-user
    - `date` string, date-time, required — Timestamp of the commit
    - `email` string, required — Git email address of the user
    - `name` string, required — Name of the git user
  - `committer` object, required — Identifying information for the git-user
    - `date` string, date-time, required — Timestamp of the commit
    - `email` string, required — Git email address of the user
    - `name` string, required — Name of the git user
  - `message` string, required — Message describing the purpose of the commit
  - `tree` object, required
    - `sha` string, required — SHA for the commit
    - `url` string, uri, required
  - `parents` object[], required
    - `sha` string, required — SHA for the commit
    - `url` string, uri, required
    - `html_url` string, uri, required
  - `verification` object, required
    - `verified` boolean, required
    - `reason` string, required
    - `signature` string, nullable, required
    - `payload` string, nullable, required
    - `verified_at` string, nullable, required
  - `html_url` string, uri, required

## Other responses

- `404` — Resource not found
- `409` — Conflict

---

[API](https://skmtc.net/github/apis/github-v3-rest-api-2.md) · [All operations](https://skmtc.net/github/apis/github-v3-rest-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/github/github-v3-rest-api-2/versions/8ae6d0c8716e/schema)
