> **Experimental**
>
> `@aws-cdk/aws-amplify-alpha` is an [**experimental**](/stability) (alpha) package: its API may change in any release, without a major version bump.
# GitHubSourceCodeProviderProps

Properties for a GitHub source code provider.

Extends: GitHubSourceCodeProviderProps
Used as props by: GitHubSourceCodeProvider

- Stability: [Experimental](/cdk/api/stability.html)
- Source: [`lib/source-code-providers.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0-alpha.0/packages/@aws-cdk/aws-amplify-alpha/lib/source-code-providers.ts#L8)

## Example

```ts
const amplifyApp = new amplify.App(this, 'App', {
  sourceCodeProvider: new amplify.GitHubSourceCodeProvider({
    owner: '<user>',
    repository: '<repo>',
    oauthToken: SecretValue.secretsManager('my-github-token'),
  }),
  customResponseHeaders: [
    {
      pattern: '*.json',
      headers: {
        'custom-header-name-1': 'custom-header-value-1',
        'custom-header-name-2': 'custom-header-value-2',
      },
    },
    {
      pattern: '/path/*',
      headers: {
        'custom-header-name-1': 'custom-header-value-2',
      },
    },
  ],
});
```

## Properties

- `oauthToken`: [SecretValue](/cdk/api/v2/docs/aws-cdk-lib.SecretValue.html) (required) — A personal access token with the `repo` scope.

- `owner`: string (required) — The user or organization owning the repository.

- `repository`: string (required) — The name of the repository.
