1.0.12 • Published 9 months ago

@citiwave-io/impactmap v1.0.12

Weekly downloads
-
License
MIT
Repository
-
Last release
9 months ago

ImpactMap SDK

Official SDK for impactmap.io - CRM for impact management

Installation

npm install impactmap

or

yarn add impactmap

Usage

Authentication

First, set your API key for the environment you want to use:

impactmap set-key <environment> <api-key>

List Available Environments

To list all available ImpactMap environments, you'll need to set the internal API key. You have two options:

  1. Using a .env file in your project root:
# .env file
IMPACTMAP_INTERNAL_API_KEY=your_internal_api_key
  1. Setting it as an environment variable:
# Linux/macOS
export IMPACTMAP_INTERNAL_API_KEY=your_internal_api_key

# Windows PowerShell
$env:IMPACTMAP_INTERNAL_API_KEY='your_internal_api_key'

Then you can list the environments:

impactmap list-tenants

This will display a table of all available environments with their names, slugs, statuses, and URLs.

API Reference

TenantsAPI

The TenantsAPI class provides methods for interacting with ImpactMap tenants:

import { ImpactMap } from 'impactmap';

const client = new ImpactMap({
  apiKey: 'your-api-key'
});

// List all tenants (requires IMPACTMAP_INTERNAL_API_KEY in .env or environment)
const tenants = await client.tenants.list();

// Get a specific tenant by slug
const tenant = await client.tenants.get('environment-slug');

// Example: Get all projects
const projects = await client.projects.list();

### AgentOps Integration

This SDK includes optional integration with AgentOps for monitoring and observability. To enable AgentOps:

1. Get an AgentOps API key from [AgentOps Dashboard](https://app.agentops.ai/settings/projects)

2. Include the AgentOps key in your SDK initialization:

```typescript
import { ImpactMap } from '@citiwave-io/impactmap';

const client = new ImpactMap({
  apiKey: 'your_impactmap_api_key',
  agentOpsKey: 'your_agentops_api_key' // Optional
});

When AgentOps is enabled, all SDK requests will be automatically tracked and monitored in your AgentOps dashboard. You can view detailed analytics, monitor performance, and track usage patterns at app.agentops.ai.

Tracking Custom Actions

You can track custom actions in your code using our decorators:

import { ImpactMap, track_action, record_action } from '@citiwave-io/impactmap';

// Track a class and all its methods
@track_action('my-custom-agent')
class MyCustomAgent {
  // Track specific method calls
  @record_action('custom-operation')
  async doSomething() {
    // Your code here
  }
}

These decorators will help you monitor and analyze the behavior of your custom implementations.

Environment Variables

  • IMPACTMAP_INTERNAL_API_KEY: Required for tenant listing functionality. This is an internal API key that should be kept secure. Can be set in a .env file or as an environment variable.

Documentation

For detailed documentation, visit docs.impactmap.io.

License

MIT