https://github.com/strvcom/tap-instantly-ai
https://github.com/strvcom/tap-instantly-ai
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/strvcom/tap-instantly-ai
- Owner: strvcom
- License: apache-2.0
- Created: 2024-02-09T09:57:37.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-06-04T19:43:03.000Z (about 2 years ago)
- Last Synced: 2025-03-17T15:26:40.863Z (over 1 year ago)
- Language: Python
- Size: 116 KB
- Stars: 1
- Watchers: 7
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tap-instantly-ai
`tap-instantly-ai` is a Singer tap for InstantlyAI.
Built with the [Meltano Tap SDK](https://sdk.meltano.com) for Singer Taps.
## Capabilities
* `catalog`
* `state`
* `discover`
* `about`
* `stream-maps`
* `schema-flattening`
## Settings
| Setting | Required | Default | Description |
|:--------------------|:--------:|:-------:|:------------|
| api_key | True | None | The API key to authenticate against the API service |
| start_date | True | None | The earliest record date to sync |
| stream_maps | False | None | Config object for stream maps capability. For more information check out [Stream Maps](https://sdk.meltano.com/en/latest/stream_maps.html). |
| stream_map_config | False | None | User-defined config values to be used within map expressions. |
| flattening_enabled | False | None | 'True' to enable schema flattening and automatically expand nested properties. |
| flattening_max_depth| False | None | The max depth to flatten schemas. |
A full list of supported settings and capabilities is available by running: `tap-instantly-ai --about`
### Configure using environment variables
This Singer tap will automatically import any environment variables within the working directory's
`.env` if the `--config=ENV` is provided, such that config values will be considered if a matching
environment variable is set either in the terminal context or in the `.env` file.
### Source Authentication and Authorization
See https://developer.instantly.ai/introduction.
## Usage
You can easily run `tap-instantly-ai` by itself or in a pipeline using [Meltano](https://meltano.com/).
### Executing the Tap Directly
```bash
tap-instantly-ai --version
tap-instantly-ai --help
tap-instantly-ai --config CONFIG --discover > ./catalog.json
```
## Developer Resources
Follow these instructions to contribute to this project.
### Initialize your Development Environment
```bash
pipx install poetry
poetry install
```
### Create and Run Tests
Create tests within the `tests` subfolder and
then run:
```bash
poetry run pytest
```
You can also test the `tap-instantly-ai` CLI interface directly using `poetry run`:
```bash
poetry run tap-instantly-ai --help
```
### Testing with [Meltano](https://www.meltano.com)
_**Note:** This tap will work in any Singer environment and does not require Meltano.
Examples here are for convenience and to streamline end-to-end orchestration scenarios._
Next, install Meltano (if you haven't already) and any needed plugins:
```bash
# Install meltano
pipx install meltano
# Initialize meltano within this directory
cd tap-instantly-ai
meltano install
```
Now you can test and orchestrate using Meltano:
```bash
# Test invocation:
meltano invoke tap-instantly-ai --version
# OR run a test `elt` pipeline:
meltano elt tap-instantly-ai target-jsonl
```
### SDK Dev Guide
See the [dev guide](https://sdk.meltano.com/en/latest/dev_guide.html) for more instructions on how to use the SDK to
develop your own taps and targets.