Skip to main content

GitHub

The GitHub connector enables easy and secure data synchronization between your application and your customers’ GitHub accounts through unified data models.

Authorization

The GitHub connector uses OAuth for secure authentication. When creating a connection, the required OAuth scopes are automatically configured based on your specific operations needs (e.g. genericContact::create, genericUser::list).

✓ Automatic token refresh handling
✓ Proactive insufficient permissions detection

View our step-by-step integration guideWhitelabel
Supported
You can choose to provide your own set of clientId and clientSecret for this connector from the Morph Cloud dashboard; allowing a fully whitelabled experience for your end-customers.
import { Morph } from "@runmorph/cloud";

const morph = Morph({ publicKey: "pk_demo_xxxxxxxxxxxxxxx", secretKey: "sk_demo_xxxxxxxxxxxxxxx"}); 

// create a new connection
const connection = morph.connections({ connectorId: "github", ownerId: "demo" });
await connection.create({ operations:[ "genericContact::list" ]});

// auhtorize the connection
const { auhtorizationUrl } = await connection.authorize();

// redirect the user to the auhtorizationUrl

Live Demo
Select a connector below to experience our seamless authentication flow and see how easy it is to connect third-party services.

Models

Generic

The GitHub connector seamlessly integrates with our unified genericContact model, enabling you to manage Contacts with rich data including firstName, lastName, phoneNumber, email and other key details

API Reference
GET/resources/genericContactList and Search GitHub Contacts
GET/resources/genericContact/:idRetrieve a GitHub Contact
POST/resources/genericContactCreate a GitHub Contact
PATCH/resources/genericContact/:idUpdate a GitHub Contact
DEL/resources/genericContact/:idDelete a GitHub Contact
Custom Fields
Supported
The GitHub connector supports our Field Mapping feature, enabling you or your customers to seamlessly map GitHub Contact custom fields to the unified contact model. This allows for flexible data synchronization while maintaining data consistency across all connectors.

view Contact model details

The GitHub connector seamlessly integrates with our unified genericCompany model, enabling you to manage Companies with rich data including name and other key details

API Reference
GET/resources/genericCompanyList and Search GitHub Companies
GET/resources/genericCompany/:idRetrieve a GitHub Company
POST/resources/genericCompanyCreate a GitHub Company
PATCH/resources/genericCompany/:idUpdate a GitHub Company
DEL/resources/genericCompany/:idDelete a GitHub Company
Custom Fields
Supported
The GitHub connector supports our Field Mapping feature, enabling you or your customers to seamlessly map GitHub Company custom fields to the unified company model. This allows for flexible data synchronization while maintaining data consistency across all connectors.

view Company model details

The GitHub connector seamlessly integrates with our unified genericUser model, enabling you to manage Users with rich data including firstName, lastName, email and other key details

API Reference
GET/resources/genericUserList and Search GitHub Users
GET/resources/genericUser/:idRetrieve a GitHub User
POST/resources/genericUserCreate a GitHub User
PATCH/resources/genericUser/:idUpdate a GitHub User
DEL/resources/genericUser/:idDelete a GitHub User
Custom Fields
Supported
The GitHub connector supports our Field Mapping feature, enabling you or your customers to seamlessly map GitHub User custom fields to the unified user model. This allows for flexible data synchronization while maintaining data consistency across all connectors.

view User model details

The GitHub connector seamlessly integrates with our unified genericWorkspace model, enabling you to manage Workspaces with rich data including name and other key details

API Reference
GET/resources/genericWorkspaceList and Search GitHub Workspaces
GET/resources/genericWorkspace/:idRetrieve a GitHub Workspace
POST/resources/genericWorkspaceCreate a GitHub Workspace
PATCH/resources/genericWorkspace/:idUpdate a GitHub Workspace
DEL/resources/genericWorkspace/:idDelete a GitHub Workspace
Custom Fields
Supported
The GitHub connector supports our Field Mapping feature, enabling you or your customers to seamlessly map GitHub Workspace custom fields to the unified workspace model. This allows for flexible data synchronization while maintaining data consistency across all connectors.

view Workspace model details

Ticketing

The GitHub connector seamlessly integrates with our unified ticketProject model, enabling you to manage Projects with rich data including name, description, members and other key details

API Reference
GET/resources/ticketProjectList and Search GitHub Projects
GET/resources/ticketProject/:idRetrieve a GitHub Project
POST/resources/ticketProjectCreate a GitHub Project
PATCH/resources/ticketProject/:idUpdate a GitHub Project
DEL/resources/ticketProject/:idDelete a GitHub Project

view Project model details

The GitHub connector seamlessly integrates with our unified ticketIssue model, enabling you to manage Issues with rich data including project, title, description, status, priority and other key details

API Reference
GET/resources/ticketIssueList and Search GitHub Issues
GET/resources/ticketIssue/:idRetrieve a GitHub Issue
POST/resources/ticketIssueCreate a GitHub Issue
PATCH/resources/ticketIssue/:idUpdate a GitHub Issue
DEL/resources/ticketIssue/:idDelete a GitHub Issue

view Issue model details

The GitHub connector seamlessly integrates with our unified ticketComment model, enabling you to manage Comments with rich data including issue, author, content, isInternal and other key details

API Reference
GET/resources/ticketCommentList and Search GitHub Comments
GET/resources/ticketComment/:idRetrieve a GitHub Comment
POST/resources/ticketCommentCreate a GitHub Comment
PATCH/resources/ticketComment/:idUpdate a GitHub Comment
DEL/resources/ticketComment/:idDelete a GitHub Comment

view Comment model details

Custom

Supported
Can’t find the unified model you need? The GitHub connector supports your own custom model.

Webhooks

The GitHub connector supports real-time event subscriptions, allowing you to receive instant notifications when records are created, updated, or deleted. Below are the supported models and their corresponding triggers.
ModelsCreatedUpdatedDeletedAPI Reference
genericContactview event
genericCompanyview event
genericUserview event
genericWorkspaceview event
ticketProjectview event
ticketIssueview event
ticketCommentview event

Proxy

Supported
The GitHub connector supports our Proxy Request feature, allowing you to directly call any endpoints from GitHub’s public API without needing to handle authentication. Your customer’s token will be automatically set and refreshed as needed, enabling quick implementation of custom connector behaviors. View API Reference.