---
title: "Reference"
description: "The exports of forges, with their signatures, types and descriptions."
canonical_url: "https://forges.link/reference/overview"
---
# Reference

> The exports of forges, with their signatures, types and descriptions.

`forges` is one client for every forge. You create a provider for each forge that you use, call the same operations on all of them, such as `provider.threads.merge()`, and get the same objects back.

## Providers

Create a provider with the factory of your forge, such as `github()`. Combine providers with `createForges()`, or create them from environment variables with `forgesFromEnv()`. See [Providers](https://forges.link/reference/providers).

## Provider and capabilities

Every provider has the same properties and namespaces. Use `can()` and `support()` to check what a forge supports before you call an operation. See [Provider and capabilities](https://forges.link/reference/provider).

## Issues and pull requests

The methods of `provider.threads`: read, create and update issues and pull requests, then comment, label, review and merge them. See [Issues and pull requests](https://forges.link/reference/threads).

## Repositories

The `repos`, `contents`, `releases`, `users`, `installations`, `orgs` and `search` namespaces: repositories, their files, commits and releases, accounts, app installations, organisation teams and search. See [Repositories](https://forges.link/reference/repositories).

## Notifications, webhooks and CI

The `notifications`, `sources`, `webhooks`, `checks`, `ci` and `securityAlerts` namespaces. See [Notifications, webhooks and CI](https://forges.link/reference/notifications).

## Data model

The objects that methods take and return, grouped by topic. Look here when a signature names a type. See [Data model](https://forges.link/reference/data-model).

## Requests and pagination

Pages and cursors for lists, `request()` for endpoints that the model does not cover, and the helpers that turn web URLs into refs. See [Requests and pagination](https://forges.link/reference/requests).

## Errors

The error classes that forges throws, with their properties. All of them extend `ForgeError`. See [Errors](https://forges.link/reference/errors).

## Testing

`fake()` creates an in-memory provider, and `fixtureFetch()` replays recorded requests. See [Testing](https://forges.link/reference/testing).

## Capability matrix

Which operations each forge supports. See [Capability matrix](https://forges.link/reference/capability-matrix).

## Events reference

Which event kinds and actions each forge delivers through webhooks. See [Events reference](https://forges.link/reference/events).

## Environment variables

The variables that `providersFromEnv()` and `forgesFromEnv()` read. See [Environment variables](https://forges.link/reference/environment-variables).

## JSON Schemas

A JSON Schema for each public type. See [JSON Schemas](https://forges.link/reference/json-schemas).

To add a forge, see [Write a provider](https://forges.link/contributing/write-a-provider) and the [provider kit](https://forges.link/contributing/provider-kit).


## Sitemap

See the full [sitemap](https://forges.link/sitemap.md) for all pages.
