> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chevre.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Chevre Integrations: Connect Slack, GitHub, and More

> Connect Slack, GitHub, Google Workspace, Zapier, and more to push and pull data between Chevre and the tools your team already uses.

Chevre integrates with the tools your team already uses, letting you push and pull data between Chevre and external services without leaving your workspace. Integrations power the actions available in your workflows and automations — like sending Slack messages or linking GitHub pull requests — and they can also bring data into Chevre so your records stay up to date automatically. Connect as many integrations as your team needs from a single place in your workspace settings.

## Available integrations

<CardGroup cols={3}>
  <Card title="Slack" icon="slack">
    Send real-time notifications to any Slack channel directly from workflows and automations.
  </Card>

  <Card title="GitHub" icon="github">
    Link issues and pull requests to Chevre tasks and track development progress in context.
  </Card>

  <Card title="Google Workspace" icon="google">
    Enable SSO login with Google and attach Google Drive files directly to your Chevre records.
  </Card>

  <Card title="Zapier" icon="bolt">
    Connect Chevre to 5,000+ apps through Zapier without writing a single line of code.
  </Card>

  <Card title="Webhook" icon="webhook">
    Send event payloads to any HTTP endpoint for fully custom integrations with your own services.
  </Card>

  <Card title="REST API" icon="code">
    Use Chevre's REST API to build your own integration, sync data, and automate from external systems.
  </Card>
</CardGroup>

## Connecting Slack

Connecting Slack takes about two minutes and requires you to have permission to install apps in your Slack workspace.

<Steps>
  <Step title="Open Integrations settings">
    Click your workspace name in the top-left corner to open the workspace menu, then go to **Settings → Integrations**. You'll see a list of all available integrations and their current connection status.
  </Step>

  <Step title="Start the Slack connection">
    Find **Slack** in the list and click **Connect**. You'll be redirected to Slack's OAuth authorization page.
  </Step>

  <Step title="Authorize Chevre in Slack">
    Review the permissions Chevre is requesting — these include the ability to post messages and read channel lists. Select the Slack workspace you want to connect, then click **Allow** to complete authorization. You'll be returned to Chevre automatically.
  </Step>

  <Step title="Select a default channel">
    After returning to Chevre, a configuration panel opens. Choose a **Default Channel** from the dropdown — this is the channel Chevre will use when no specific channel is defined in a workflow action. You can always override this per workflow or automation.
  </Step>

  <Step title="Save the integration">
    Click **Save**. The Slack integration status changes to **Connected** and a green indicator appears next to it. Slack actions are now available throughout your workflows and automations.
  </Step>
</Steps>

## Connecting a Webhook integration

Webhooks let you send Chevre event data to any external HTTP endpoint — your own server, a logging service, or a third-party platform.

<Steps>
  <Step title="Open Integrations settings">
    Navigate to **Settings → Integrations** and click **Connect** next to **Webhook**.
  </Step>

  <Step title="Enter your endpoint URL">
    Paste the full URL of the endpoint that should receive the webhook payloads. Make sure the endpoint is publicly accessible and can accept HTTP POST requests with a JSON body.
  </Step>

  <Step title="Generate and copy your signing secret">
    Chevre generates a unique **Signing Secret** for your webhook. Copy this value and store it securely — you'll use it on your server to verify that incoming requests genuinely come from Chevre by validating the `X-Chevre-Signature` header.
  </Step>

  <Step title="Select event types to subscribe to">
    Choose which Chevre events should trigger a payload delivery. You can subscribe to individual events — like `project.created` or `task.completed` — or select **Send all events** to receive everything. Click each event to toggle its subscription.
  </Step>

  <Step title="Save and verify">
    Click **Save**. Chevre immediately sends a test `ping` payload to your endpoint. If your server responds with a `200 OK`, the webhook shows as **Active**. If the verification fails, double-check that your URL is reachable and responding correctly.
  </Step>
</Steps>

## Managing webhooks via the API

In addition to configuring webhooks through the UI, you can create, list, and delete webhooks programmatically using the Chevre REST API. This is especially useful when provisioning webhooks as part of an automated setup or infrastructure-as-code workflow.

**Register a new webhook**

```bash theme={null}
curl -X POST https://api.chevre.io/v1/webhooks \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://your-server.example.com/chevre-events",
    "events": ["project.created", "task.completed"]
  }'
```

The response includes a `signing_secret` field. Store this value securely on your server and use it to validate the `X-Chevre-Signature` header on every incoming request.

**List all registered webhooks**

```bash theme={null}
curl https://api.chevre.io/v1/webhooks \
  -H "Authorization: Bearer YOUR_API_TOKEN"
```

**Delete a webhook**

```bash theme={null}
curl -X DELETE https://api.chevre.io/v1/webhooks/wh_01hx3k9z \
  -H "Authorization: Bearer YOUR_API_TOKEN"
```

Deleting a webhook immediately stops all future payload deliveries to that endpoint. Existing delivery logs are retained for 30 days.

## Managing your integrations

Once connected, all your integrations are visible in **Settings → Integrations**. From this page you can:

* **View connection status** — see which integrations are active, paused, or require re-authentication
* **Re-authenticate** — if an integration shows an error or expired credentials, click **Reconnect** to go through the OAuth flow again without losing your existing configuration
* **Revoke access** — click the **···** menu next to any integration and select **Disconnect** to remove it; this immediately stops all workflows and automations that depend on it
* **View activity logs** — click an integration name to see a log of recent events delivered to or received from that service

<Note>
  Integrations in Chevre operate at two levels:

  * **Workspace-level integrations** (configured in **Settings → Integrations**) are available to all projects in your workspace and can be used by any workflow or automation.
  * **Project-level integrations** apply only to a specific project. Configure these from within the project under **Project Settings → Integrations**. Project-level settings override workspace defaults for that project.

  When you disconnect a workspace-level integration, it becomes unavailable to all projects simultaneously. Disconnect project-level integrations individually if you only want to remove access for a single project.
</Note>
