-
Notifications
You must be signed in to change notification settings - Fork 7
[CON-3291] feat(breezy): New provider docs #641
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Fullstack-Hero
wants to merge
9
commits into
amp-labs:main
Choose a base branch
from
Fullstack-Hero:breezyHR
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+144
−0
Open
Changes from all commits
Commits
Show all changes
9 commits
Select commit
Hold shift + click to select a range
06fb439
Added breezy docs
Fullstack-Hero 659e536
Refactored the Supported objects table to match the ConnectWise pattern
Fullstack-Hero f7e1538
Remove company scoping
Fullstack-Hero fb52e32
Remove custom fields
Fullstack-Hero 23d4255
Fix docs for incremental read
Fullstack-Hero d20ff58
Remove delete comment
Fullstack-Hero 61f063f
Rewrote Published vs draft positions
Fullstack-Hero a1f6f78
Update Before you get started section
Fullstack-Hero 9649c9a
Rm a bullet
Fullstack-Hero File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,142 @@ | ||
| --- | ||
| title: "Breezy" | ||
| --- | ||
|
|
||
| ## What's supported | ||
|
|
||
| ### Supported actions | ||
|
|
||
| This connector supports: | ||
| - [Read Actions](/read-actions), including full historic backfill. Incremental read is supported for `positions` only. For all other objects, a full read will be done on each scheduled read. | ||
| - [Write Actions](/write-actions) (create/update) for `positions` only. | ||
| - [Proxy Actions](/proxy-actions), using the base URL `https://api.breezy.hr`. | ||
| - Subscribe Actions are not currently supported. | ||
|
|
||
| ### Supported objects | ||
|
|
||
| export const rows = [ | ||
| { | ||
| label: "categories", read: true, write: false, subscribe: false, | ||
| href: "https://developer.breezy.hr/reference/company-pipelines-1-1", | ||
| }, { | ||
| label: "companies", read: true, write: false, subscribe: false, | ||
| href: "https://developer.breezy.hr/reference/companies", | ||
| }, { | ||
| label: "departments", read: true, write: false, subscribe: false, | ||
| href: "https://developer.breezy.hr/reference/company-pipelines-1", | ||
| }, { | ||
| label: "pipelines", read: true, write: false, subscribe: false, | ||
| href: "https://developer.breezy.hr/reference/company-pipelines", | ||
| }, { | ||
| label: "positions", read: true, write: true, subscribe: false, | ||
| href: "https://developer.breezy.hr/reference/company-positions", | ||
| }, { | ||
| label: "questionnaires", read: true, write: false, subscribe: false, | ||
| href: "https://developer.breezy.hr/reference/company-questionnaires", | ||
| }, { | ||
| label: "templates", read: true, write: false, subscribe: false, | ||
| href: "https://developer.breezy.hr/reference/company-templates", | ||
| }, | ||
| ] | ||
|
|
||
| export const Check = () => <span>✅</span> | ||
| export const Cross = () => <span>🚫</span> | ||
|
|
||
| export function renderCellValue(value) { | ||
| if (typeof value === "boolean") { | ||
| return value ? <Check/> : <Cross/>; | ||
| } | ||
|
|
||
| return value; | ||
| } | ||
|
|
||
| <div style={{ width: '100%', overflowX: 'auto', display: 'block' }}> | ||
| <table style={{ | ||
| width: '100%', | ||
| minWidth: '100%', | ||
| tableLayout: 'fixed', | ||
| textAlign: 'center', | ||
| borderCollapse: 'collapse', | ||
| display: 'table', | ||
| }}> | ||
| <thead style={{ display: 'table-header-group', width: '100%' }}> | ||
| <tr style={{ display: 'table-row', width: '100%' }}> | ||
| <th style={{ textAlign: 'left', width: '44%' }}>Object</th> | ||
| <th style={{ width: '14%' }}>Read</th> | ||
| <th style={{ width: '14%' }}>Write</th> | ||
| <th style={{ width: '14%' }}>Subscribe</th> | ||
| </tr> | ||
| </thead> | ||
| <tbody style={{ display: 'table-row-group', width: '100%' }}> | ||
| {[...rows] | ||
| .sort((a, b) => a.label.localeCompare(b.label)) | ||
| .map((row) => ( | ||
| <tr key={row.label}> | ||
| <td style={{ textAlign: 'left' }}> | ||
| <a href={row.href}>{row.label}</a> | ||
| </td> | ||
| <td>{renderCellValue(row.read)}</td> | ||
| <td>{renderCellValue(row.write)}</td> | ||
| <td>{renderCellValue(row.subscribe)}</td> | ||
| </tr> | ||
| ))} | ||
| </tbody> | ||
| </table> | ||
| </div> | ||
|
|
||
| For objects and fields, you can also use Ampersand’s [Object Metadata APIs](/reference/objects-&-fields/get-object-metadata-via-connection) to inspect what’s available for a specific connection. | ||
|
|
||
| ### Notes and limitations | ||
|
|
||
| - **Published vs draft positions**: Write creates new positions as **drafts** in Breezy. The `positions` Read object returns **published** job postings only. If you create a position via Write and need it in Read results, publish that job posting in Breezy first. | ||
| - **Incremental read**: Incremental read is supported for `positions` only. `companies`, `pipelines`, `categories`, `departments`, `questionnaires`, and `templates` are read in full on each scheduled read. | ||
| - **Pipelines**: The connector returns the default hiring pipeline from Breezy’s pipelines map response. | ||
|
|
||
| ### Example integration | ||
|
|
||
| To define an integration for Breezy, use a manifest file (`amp.yaml`). For a complete example, visit our [samples repo on Github](https://github.com/amp-labs/samples/blob/main/breezy/amp.yaml). | ||
|
|
||
| ## Before you get started | ||
|
|
||
| To connect _Breezy_ with _Ampersand_, you will need [a Breezy account](https://breezy.hr/). | ||
|
|
||
| Once your account is created, you'll need to obtain an **API Key** — a Breezy access token used as the `Authorization` header on API requests. | ||
|
|
||
| Your customers enter this when they install the integration via the InstallIntegration UI. | ||
|
|
||
| ### Create a Breezy account | ||
|
|
||
| Here's how you can sign up for a Breezy account: | ||
|
|
||
| - Sign up at [Breezy](https://breezy.hr/). | ||
|
|
||
| ### Obtain API credentials | ||
|
|
||
| Follow the steps below to obtain your API key from Breezy: | ||
|
|
||
| 1. Call Breezy's [sign-in endpoint](https://developer.breezy.hr/reference/signin) with a user that has API access. See [Authorization](https://developer.breezy.hr/reference/authorization). | ||
|
|
||
| ```bash | ||
| curl -H "Content-Type: application/json" \ | ||
| -X POST \ | ||
| -d '{"email":"user@example.com","password":"YOUR_PASSWORD"}' \ | ||
| https://api.breezy.hr/v3/signin | ||
| ``` | ||
|
|
||
| Use the `access_token` value from the response as the API key. | ||
|
|
||
| ## Using the connector | ||
|
|
||
| This connector uses API Key auth, which means that you do not need to set up a Provider App before getting started. (Provider apps are only required for providers that use OAuth2 Authorization Code grant type.) | ||
|
|
||
| The API key is sent in the `Authorization` header with no prefix, per [Breezy’s documentation](https://developer.breezy.hr/reference/authorization). | ||
|
|
||
| To start integrating with Breezy: | ||
| - Create a manifest file; see [Example integration](#example-integration). | ||
| - Deploy it using the [amp CLI](/cli/overview). | ||
| - If you are using Read Actions, create a [destination](/destinations). | ||
| - Embed the [InstallIntegration](/embeddable-ui-components#install-integration) UI component. The UI component will prompt the customer for their API key. | ||
| - Start using the connector! | ||
| - If your integration has [Read Actions](/read-actions), you'll start getting webhook messages. | ||
| - If your integration has [Write Actions](/write-actions), you can start making API calls to our Write API. | ||
| - If your integration has [Proxy Actions](/proxy-actions), you can start making Proxy API calls. Ampersand will automatically attach the API key for the connected account. | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.