source-workflowmax contribution from btkcodedev (#46866)
Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
This commit is contained in:
55
airbyte-integrations/connectors/source-workflowmax/README.md
Normal file
55
airbyte-integrations/connectors/source-workflowmax/README.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# Workflowmax
|
||||
This directory contains the manifest-only connector for [`source-workflowmax`](https://app.workflowmax2.com/).
|
||||
|
||||
## Documentation reference:
|
||||
Visit `https://app.swaggerhub.com/apis-docs/WorkflowMax-BlueRock/WorkflowMax-BlueRock-OpenAPI3/0.1#/` for V1 API documentation
|
||||
|
||||
## Authentication setup
|
||||
`Workflowmax` uses bearer token authentication, You have to input your bearer access_token in the field of API key for authentication.
|
||||
|
||||
### Using postman to get access token
|
||||
- Move to Authorization tab of an empty http request and selected Oauth 2.0
|
||||
- Set use token type as `access token`
|
||||
- Set header prefix as `Bearer`
|
||||
- Set grant type as `Authorization code`
|
||||
- Check `Authorize using browser`
|
||||
- Set Auth URL as `https://oauth.workflowmax2.com/oauth/authorize`
|
||||
- Set Access token URL as `https://oauth.workflowmax2.com/oauth/token`
|
||||
- Set Client ID, Client secret, Scope defined as your Workflowmax settings, Example Scope: `openid profile email workflowmax offline_access`
|
||||
- Set state as any number, Example: `1`
|
||||
- Set Client Authentication as `Send as Basic Auth Header`
|
||||
Click `Get New Access Token` for retrieving access token
|
||||
|
||||
Then authorize your source with the required information.
|
||||
1. Go to set up `The Source` page.
|
||||
2. Enter your Workflowmax application's access token.
|
||||
3. Click Save button.
|
||||
|
||||
## Usage
|
||||
There are multiple ways to use this connector:
|
||||
- You can use this connector as any other connector in Airbyte Marketplace.
|
||||
- You can load this connector in `pyairbyte` using `get_source`!
|
||||
- You can open this connector in Connector Builder, edit it, and publish to your workspaces.
|
||||
|
||||
Please refer to the manifest-only connector documentation for more details.
|
||||
|
||||
## Local Development
|
||||
We recommend you use the Connector Builder to edit this connector.
|
||||
|
||||
But, if you want to develop this connector locally, you can use the following steps.
|
||||
|
||||
### Environment Setup
|
||||
You will need `airbyte-ci` installed. You can find the documentation [here](airbyte-ci).
|
||||
|
||||
### Build
|
||||
This will create a dev image (`source-workflowmax:dev`) that you can use to test the connector locally.
|
||||
```bash
|
||||
airbyte-ci connectors --name=source-workflowmax build
|
||||
```
|
||||
|
||||
### Test
|
||||
This will run the acceptance tests for the connector.
|
||||
```bash
|
||||
airbyte-ci connectors --name=source-workflowmax test
|
||||
```
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference)
|
||||
# for more information about how to configure these tests
|
||||
connector_image: airbyte/source-workflowmax:dev
|
||||
acceptance_tests:
|
||||
spec:
|
||||
tests:
|
||||
- spec_path: "manifest.yaml"
|
||||
connection:
|
||||
bypass_reason: "This is a builder contribution, and we do not have secrets at this time"
|
||||
discovery:
|
||||
bypass_reason: "This is a builder contribution, and we do not have secrets at this time"
|
||||
basic_read:
|
||||
bypass_reason: "This is a builder contribution, and we do not have secrets at this time"
|
||||
incremental:
|
||||
bypass_reason: "This is a builder contribution, and we do not have secrets at this time"
|
||||
full_refresh:
|
||||
bypass_reason: "This is a builder contribution, and we do not have secrets at this time"
|
||||
10
airbyte-integrations/connectors/source-workflowmax/icon.svg
Normal file
10
airbyte-integrations/connectors/source-workflowmax/icon.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 18 KiB |
2275
airbyte-integrations/connectors/source-workflowmax/manifest.yaml
Normal file
2275
airbyte-integrations/connectors/source-workflowmax/manifest.yaml
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,35 @@
|
||||
metadataSpecVersion: "1.0"
|
||||
data:
|
||||
allowedHosts:
|
||||
hosts:
|
||||
- "api.workflowmax2.com"
|
||||
registryOverrides:
|
||||
oss:
|
||||
enabled: true
|
||||
cloud:
|
||||
enabled: true
|
||||
remoteRegistries:
|
||||
pypi:
|
||||
enabled: false
|
||||
packageName: airbyte-source-workflowmax
|
||||
connectorBuildOptions:
|
||||
baseImage: docker.io/airbyte/source-declarative-manifest:5.13.0@sha256:ffc5977f59e1f38bf3f5dd70b6fa0520c2450ebf85153c5a8df315b8c918d5c3
|
||||
connectorSubtype: api
|
||||
connectorType: source
|
||||
definitionId: a3eb6410-f3c3-48ba-8b27-29a56de1e9db
|
||||
dockerImageTag: 0.0.1
|
||||
dockerRepository: airbyte/source-workflowmax
|
||||
githubIssueLabel: source-workflowmax
|
||||
icon: icon.svg
|
||||
license: MIT
|
||||
name: Workflowmax
|
||||
releaseDate: 2024-10-13
|
||||
releaseStage: alpha
|
||||
supportLevel: community
|
||||
documentationUrl: https://docs.airbyte.com/integrations/sources/workflowmax
|
||||
tags:
|
||||
- language:manifest-only
|
||||
- cdk:low-code
|
||||
ab_internal:
|
||||
ql: 100
|
||||
sl: 100
|
||||
65
docs/integrations/sources/workflowmax.md
Normal file
65
docs/integrations/sources/workflowmax.md
Normal file
@@ -0,0 +1,65 @@
|
||||
# Workflowmax
|
||||
This directory contains the manifest-only connector for [`source-workflowmax`](https://app.workflowmax2.com/).
|
||||
|
||||
## Documentation reference:
|
||||
Visit `https://app.swaggerhub.com/apis-docs/WorkflowMax-BlueRock/WorkflowMax-BlueRock-OpenAPI3/0.1#/` for V1 API documentation
|
||||
|
||||
## Authentication setup
|
||||
`Workflowmax` uses bearer token authentication, You have to input your bearer access_token in the field of API key for authentication.
|
||||
|
||||
### Using postman to get access token
|
||||
- Move to Authorization tab of an empty http request and selected Oauth 2.0
|
||||
- Set use token type as `access token`
|
||||
- Set header prefix as `Bearer`
|
||||
- Set grant type as `Authorization code`
|
||||
- Check `Authorize using browser`
|
||||
- Set Auth URL as `https://oauth.workflowmax2.com/oauth/authorize`
|
||||
- Set Access token URL as `https://oauth.workflowmax2.com/oauth/token`
|
||||
- Set Client ID, Client secret, Scope defined as your Workflowmax settings, Example Scope: `openid profile email workflowmax offline_access`
|
||||
- Set state as any number, Example: `1`
|
||||
- Set Client Authentication as `Send as Basic Auth Header`
|
||||
Click `Get New Access Token` for retrieving access token
|
||||
|
||||
Then authorize your source with the required information.
|
||||
1. Go to set up `The Source` page.
|
||||
2. Enter your Workflowmax application's access token.
|
||||
3. Click Save button.
|
||||
|
||||
|
||||
## Configuration
|
||||
|
||||
| Input | Type | Description | Default Value |
|
||||
|-------|------|-------------|---------------|
|
||||
| `api_key_2` | `string` | API Key. | |
|
||||
| `account_id` | `string` | Account ID. The account id for workflowmax | |
|
||||
| `start_date` | `string` | Start date. | |
|
||||
|
||||
## Streams
|
||||
| Stream Name | Primary Key | Pagination | Supports Full Sync | Supports Incremental |
|
||||
|-------------|-------------|------------|---------------------|----------------------|
|
||||
| stafflist | UUID | DefaultPaginator | ✅ | ❌ |
|
||||
| clientlist | UUID | DefaultPaginator | ✅ | ❌ |
|
||||
| clients_documents | uuid | No pagination | ✅ | ❌ |
|
||||
| clientgrouplist | UUID | DefaultPaginator | ✅ | ❌ |
|
||||
| costlist | UUID | DefaultPaginator | ✅ | ❌ |
|
||||
| invoice_current | UUID | DefaultPaginator | ✅ | ❌ |
|
||||
| invoicelist | UUID | DefaultPaginator | ✅ | ✅ |
|
||||
| joblist | UUID | DefaultPaginator | ✅ | ✅ |
|
||||
| job_tasks | UUID | DefaultPaginator | ✅ | ✅ |
|
||||
| leadlist | UUID | DefaultPaginator | ✅ | ✅ |
|
||||
| purchaseorderlist | ID | DefaultPaginator | ✅ | ✅ |
|
||||
| tasklist | UUID | DefaultPaginator | ✅ | ❌ |
|
||||
| quotelist | UUID | DefaultPaginator | ✅ | ✅ |
|
||||
| supplierlist | UUID | DefaultPaginator | ✅ | ❌ |
|
||||
| timelist | UUID | DefaultPaginator | ✅ | ✅ |
|
||||
|
||||
## Changelog
|
||||
|
||||
<details>
|
||||
<summary>Expand to review</summary>
|
||||
|
||||
| Version | Date | Pull Request | Subject |
|
||||
|------------------|-------------------|--------------|----------------|
|
||||
| 0.0.1 | 2024-10-13 | [46866](https://github.com/airbytehq/airbyte/pull/46866) | Initial release by [@btkcodedev](https://github.com/btkcodedev) via Connector Builder |
|
||||
|
||||
</details>
|
||||
Reference in New Issue
Block a user