npm package: @higherintel-io/petexec-sdk
Description: The PetExec SDK is a TypeScript library designed to interact with the PetExec API, providing a convenient way to access various features of the PetExec platform. This SDK is built to be used in Node.js environments and is compatible with modern JavaScript
Author: Quintin Henry
Latest version: 0.1.50

# PetExec SDK

The PetExec SDK is a TypeScript library designed to interact with the PetExec API, providing a convenient way to access various features of the PetExec platform. This SDK is built to be used in Node.js environments and is compatible with modern JavaScript projects.

## Installation

To install the PetExec SDK, you can use npm or yarn. Run one of the following commands in your project directory:

```bash
npm install @higherintel-io/petexec-sdk
```

or

```bash
yarn add @higherintel-io/petexec-sdk
```

## Usage

First, import the SDK into your project:

```typescript
import { PetExecSdk } from '@higherintel-io/petexec-sdk';
```

Then, you can authenticate and start using the SDK:

```typescript
const petExec = PetExecSdk();

// Authenticate with the PetExec API
await petExec.authenticate({
  username: 'your_username',
  password: 'your_password',
  clientId: 'your_client_id',
  clientSecret: 'your_client_secret',
  permittedScopes: 'your_permitted_scopes',
});

// Example: Fetch all owners
const owners = await petExec.read.owners();
console.log(owners);
```

## Environment Variables

The PetExec SDK requires certain environment variables to be set for it to function correctly. These variables are used for authentication and configuration purposes.

- `PETEXEC_API_URL`: The base URL for the PetExec API. Defaults to `'https://secure.petexec.net/api'` if not provided.
- `PETEXEC_CLIENT_ID`: Your PetExec client ID.
- `PETEXEC_CLIENT_SECRET`: Your PetExec client secret.
- `PETEXEC_USERNAME`: Your PetExec username.
- `PETEXEC_PASSWORD`: Your PetExec password.
- `PETEXEC_PERMITTED_SCOPES`: The scopes you have permission to access.

## Contributing

Contributions are welcome! Please read the [contributing guide](CONTRIBUTING.md) for details on how to contribute to this project.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

---

This `README.md` provides a basic overview of your SDK, including installation instructions, usage examples, and a list of required environment variables. You may need to adjust the content based on the specific features and requirements of your SDK.To generate a `README.md` file for your SDK, we'll need to cover several key sections: an introduction, installation instructions, usage examples, and a section on environment variables required for the SDK to function correctly. Given the context of your `sdk.ts` and `package.json`, here's a draft for your `README.md`:

---

# PetExec SDK

The PetExec SDK is a TypeScript library designed to interact with the PetExec API, providing a convenient way to access various features of the PetExec platform. This SDK is built to be used in Node.js environments and is compatible with modern JavaScript projects.

## Installation

To install the PetExec SDK, you can use npm or yarn. Run one of the following commands in your project directory:

```bash
npm install @higherintel-io/petexec-sdk
```

or

```bash
yarn add @higherintel-io/petexec-sdk
```

## Usage

First, import the SDK into your project:

```typescript
import { PetExecSdk } from '@higherintel-io/petexec-sdk';
```

Then, you can authenticate and start using the SDK:

```typescript
const petExec = PetExecSdk();

// Authenticate with the PetExec API
await petExec.authenticate({
  username: 'your_username',
  password: 'your_password',
  clientId: 'your_client_id',
  clientSecret: 'your_client_secret',
  permittedScopes: 'your_permitted_scopes',
});

// Example: Fetch all owners
const owners = await petExec.read.owners();
console.log(owners);
```

## Environment Variables

The PetExec SDK requires certain environment variables to be set for it to function correctly. These variables are used for authentication and configuration purposes.

- `PETEXEC_API_URL`: The base URL for the PetExec API. Defaults to `'https://secure.petexec.net/api'` if not provided.
- `PETEXEC_CLIENT_ID`: Your PetExec client ID.
- `PETEXEC_CLIENT_SECRET`: Your PetExec client secret.
- `PETEXEC_USERNAME`: Your PetExec username.
- `PETEXEC_PASSWORD`: Your PetExec password.
- `PETEXEC_PERMITTED_SCOPES`: The scopes you have permission to access.

## Contributing

Contributions are welcome! Please read the [contributing guide](CONTRIBUTING.md) for details on how to contribute to this project.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

---

This `README.md` provides a basic overview of your SDK, including installation instructions, usage examples, and a list of required environment variables. You may need to adjust the content based on the specific features and requirements of your SDK.