An open API service indexing awesome lists of open source software.

https://github.com/furionix-labs/tigrmail

API client for creating temporary email addresses to use in your E2E tests with Playwright, Cypress, and other frameworks.
https://github.com/furionix-labs/tigrmail

api cypress disposable e2e email emails framework integration javascript mail mfa playwright temp temporary test testing tests typescript verification verify

Last synced: about 2 months ago
JSON representation

API client for creating temporary email addresses to use in your E2E tests with Playwright, Cypress, and other frameworks.

Awesome Lists containing this project

README

          


Tigrmail Logo


Website |
API Docs |
Demo

# Tigrmail SDK

Tigrmail SDK is a Node.js library for automating email verification workflows. It allows you to generate temporary inboxes and poll for email messages with customizable filters. This library is ideal for testing email-based features or automating email verification processes.

> If you are working in a different programming language, you can still access all features by integrating directly with [our API](https://docs.tigrmail.com).

## Features

- Generate temporary inboxes.
- Poll for the next email message with advanced filtering options (e.g., by subject, sender email, or domain).
- Built-in error handling for API interactions.
- Automatic retry logic for HTTP requests.

## Installation
```bash
npm install -D tigrmail
```
or
```bash
yarn add -D tigrmail
```

## Usage

### Importing the Library

```typescript
import { Tigrmail } from 'tigrmail';
```

### Creating an Instance

To use the library, retrieve your API token from [our console](https://console.tigrmail.com?utm_source=github&utm_medium=readme) and create a `Tigrmail` instance using that token:

```typescript
const tigrmail = new Tigrmail({ token: 'your-api-token' });
```

### Generating a Temporary Inbox

```typescript
const emailAddress: string = await tigrmail.createEmailAddress();
console.log(emailAddress); // @den.tigrmail.com
```

### Polling for the Next Email Message

You can poll for the next email message using filters:

```typescript
const message = await tigrmail.pollNextMessage({
inbox: emailAddress,
subject: { contains: 'Verification' },
from: { email: 'noreply@example.com' },
});

console.log(`Received email: ${message.subject}`);
```

### Playwright Integration Example

For a complete example of using Tigrmail SDK with Playwright for automated email verification testing, check out our [Playwright Email Verification Example](https://github.com/furionix-labs/playwright-email-verification-example).

## Error Handling

The library throws `TigrmailError` for API-related issues. You can catch and handle these errors as follows:

```typescript
try {
const inbox = await tigrmail.generateInbox();
} catch (error) {
if (error instanceof TigrmailError) {
console.error('Error:', error.generalMessage);
} else {
console.error('Unexpected error:', error);
}
}
```

## License

This project is licensed under the MIT License.