Skip to content

Integration API Reference

Complete API reference for the Integration resource in the beeps SDK.

Create a new integration.

Parameters:

  • input: CreateIntegrationInput

Returns: Promise<Integration>

Example:

const integration = await client.integration.create({
name: "Devin Production",
provider: "devin",
apiKey: process.env.DEVIN_API_KEY,
metadata: {
environment: "production",
},
});

List all integrations in your organization.

Returns: Promise<Integration[]>

Example:

const integrations = await client.integration.list();

Get a specific integration by ID.

Parameters:

  • integrationId: string

Returns: Promise<Integration>

Example:

const integration = await client.integration.get("int_abc123");

client.integration.update(integrationId, input)

Section titled “client.integration.update(integrationId, input)”

Update an integration.

Parameters:

  • integrationId: string
  • input: UpdateIntegrationInput

Returns: Promise<Integration>

Example:

const updated = await client.integration.update("int_abc123", {
name: "Updated Name",
apiKey: process.env.NEW_API_KEY,
});

Delete an integration.

Parameters:

  • integrationId: string

Returns: Promise<{ success: boolean }>

Example:

await client.integration.delete("int_abc123");

All methods have corresponding *Safe variants that return Result<T> instead of throwing:

  • client.integration.listSafe()
  • client.integration.createSafe(input)
  • client.integration.getSafe(integrationId)
  • client.integration.updateSafe(integrationId, input)
  • client.integration.deleteSafe(integrationId)

Example:

const result = await client.integration.createSafe({
name: "Devin",
provider: "devin",
apiKey: process.env.DEVIN_API_KEY,
});
if (result.error) {
console.error(result.error.message);
} else {
console.log(result.data.id);
}
type IntegrationProvider = "devin" | "cursor";
type CreateIntegrationInput = {
name: string;
provider: IntegrationProvider;
apiKey: string;
metadata?: Record<string, unknown>;
};
type UpdateIntegrationInput = {
name?: string;
apiKey?: string;
metadata?: Record<string, unknown>;
};
type Integration = {
id: string;
organizationId: string;
name: string;
provider: IntegrationProvider;
apiKey: string; // Always returns "***" for security
metadata: Record<string, unknown> | null;
createdBy: string;
createdAt: string;
updatedAt: string;
deletedAt: string | null;
};
POST /v0/integrations

Request Body:

{
"name": "Devin Production",
"provider": "devin",
"apiKey": "devin_api_key_here",
"metadata": {
"environment": "production"
}
}
GET /v0/integrations
GET /v0/integrations/:integrationId
PUT /v0/integrations/:integrationId

Request Body:

{
"name": "Updated Name",
"apiKey": "new_api_key_here",
"metadata": {
"version": "v2"
}
}
DELETE /v0/integrations/:integrationId

All API requests require authentication using your API key:

Terminal window
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.beeps.dev/v0/integrations