Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion adaptors/chatgpt.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ ChatGPT AI models into your workflows to leverage their natural language
processing (NLP) capabilities.

Example AI-driven workflow on OpenFn:
![ai-driven-workflow](/img/ai-workflow-example.png)
![ai-driven-workflow](/img/ai-workflow-example.webp)

## Authentication

Expand Down
2 changes: 1 addition & 1 deletion adaptors/claude.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Use this adpator to integrate with the
your workflows to leverage their natural language processing (NLP) capabilities.

Example AI-driven workflow on OpenFn:
![ai-driven-workflow](/img/ai-workflow-example.png)
![ai-driven-workflow](/img/ai-workflow-example.webp)

## Authentication

Expand Down
10 changes: 5 additions & 5 deletions adaptors/commcare.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ To set up a connection, in CommCareHQ you'll need to:
set up on OpenFn, add the authentication type, the username and password here
7. You can test the connection, then save it

![Connection](/img/commecare_connection_settings.png)
![Connection](/img/commecare_connection_settings.webp)

### Data Forwarding Options

Expand Down Expand Up @@ -107,7 +107,7 @@ Here's how you can configure CommCare to forward a form to OpenFn.
to find the XMLNS of any form.
9. Click "Start Forwarding" to save and activate

![Forms](/img/commecare_forward_forms.png)
![Forms](/img/commecare_forward_forms.webp)

#### Forwarding Specific Case Types

Expand All @@ -123,7 +123,7 @@ forms. Here's how you can configure CommCare to forward a case type to OpenFn.
7. Select which case type(s) you want to forward, for example `patient`
8. Exclude any (eg. test) users

![Cases](/img/commcare_forward_cases.png)
![Cases](/img/commcare_forward_cases.webp)

:::tip Data Forwarding and OpenFn Workflow Design

Expand Down Expand Up @@ -182,7 +182,7 @@ See platform docs [on managing credentials](/documentation/manage-projects/manag
how to configure a credential in OpenFn and see the below CommCare credential
example.

![CommCare Cred](/img/commcare_credential_edit.png)
![CommCare Cred](/img/commcare_credential_edit.webp)

If you're using the `Raw JSON` credential type, your configuration may look like this:

Expand Down Expand Up @@ -234,7 +234,7 @@ for a detailed description of the types of data.
> time through a CommCare form. Ultimately form data is the source of all case
> data, but not all form data is case data.

![CommCare-data-model](/img/commcare-data-model.png)
![CommCare-data-model](/img/commcare-data-model.webp)

### Mapping CommCare Metadata to External Systems
Use the [CommCare App Summary](https://dimagi.atlassian.net/wiki/spaces/commcarepublic/pages/2143956371/App+Summary) to view and export case or form metadata to XLS. This will help you discover what data is available to be mapped to an external system.
Expand Down
4 changes: 2 additions & 2 deletions adaptors/intro.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ always leverage Adaptors to better understand how to work with specific APIs, to
access Adaptor helper functions (or "shortcuts") to more quickly build
Workflows, and to handle authenticatio. See the below diagram.

![workflows-adaptors-compare](/img/workflows-v-adaptors.png)
![workflows-adaptors-compare](/img/workflows-v-adaptors.webp)

## Where to find adaptors

Expand Down Expand Up @@ -154,7 +154,7 @@ adaptors, and click on one.
Most of our adaptors are also available on
[npmjs.com](https://www.npmjs.com/search?q=%40openfn).

![Adaptors list in npm](/img/adaptor_npm.png)
![Adaptors list in npm](/img/adaptor_npm.webp)

## Don't see an adaptor for your app?

Expand Down
2 changes: 1 addition & 1 deletion adaptors/postgresql.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ See the [Job Library](/adaptors/library) for more sample jobs.
data recieved
- **Testing**: Create a robust test suite which outlines which tables should be
updated by each job run
![image](https://user-images.githubusercontent.com/80456839/150614749-6d667df9-495c-4153-b5d6-48632e3ba05a.png)
![image](https://user-images.githubusercontent.com/80456839/150614749-6d667df9-495c-4153-b5d6-48632e3ba05a.webp)

## Common Errors

Expand Down
2 changes: 1 addition & 1 deletion adaptors/powerbi.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,6 @@ established, OpenFn assists the iNGO with connecting this data to Power BI.
Refer to the diagram below for a visualization of the data flow cited in the
above use case.

![Tableau Data Flow Visualization](/img/survey_db_powerbi.png)
![Tableau Data Flow Visualization](/img/survey_db_powerbi.webp)

<!-- please note that the diagram can be found at this link: https://lucid.app/lucidchart/invitations/accept/f14e78dc-8c94-43a6-9730-7d3c5c6d6eff -->
10 changes: 5 additions & 5 deletions adaptors/salesforce.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ Salesforce integration project.
Salesforce **field API names** (unique names for each piece of metadata - e.g.,
`PatientID__c`) should be referenced in OpenFn integrations, not **field
labels** (business-friendly label that the end user sees - e.g., `Patient ID`)
![image](https://user-images.githubusercontent.com/80456839/128650593-343090da-7f12-468a-aa51-1f87f1cf9f34.png).
![image](https://user-images.githubusercontent.com/80456839/128650593-343090da-7f12-468a-aa51-1f87f1cf9f34.webp).

To view the Salesforce API field names, navigate to the Salesforce backend. Via
the web app, select `Setup` from the top naviagation menu to browse the
Expand All @@ -108,7 +108,7 @@ being created in Salesforce. To enable this setting on an individual field,
ensure `External ID` is checked on the field settings. Learn more about external
identifiers in Salesforce at
https://www.infallibletechie.com/2014/11/what-is-external-id-in-salesforce.html
![image](https://user-images.githubusercontent.com/80456839/128650680-e10fa395-bddb-45bd-bd6c-3a9dda8998f8.png)
![image](https://user-images.githubusercontent.com/80456839/128650680-e10fa395-bddb-45bd-bd6c-3a9dda8998f8.webp)

#### Relationships and Lookup Fields

Expand Down Expand Up @@ -165,7 +165,7 @@ When connecting via Oauth2, choose only the scopes you require.
([See Salesforce](https://help.salesforce.com/s/articleView?id=sf.remoteaccess_oauth_tokens_scopes.htm&type=5)
for explanations of these options.)

![Salesforce Oauth2](/img/salesforce-oauth2.png)
![Salesforce Oauth2](/img/salesforce-oauth2.webp)

#### Security Token

Expand All @@ -185,7 +185,7 @@ A "Salesforce" Credential record should include:
sandbox environments, use `https://test.salesforce.com`. For custom domains,
use `<my-domain>.my.salesforce.com`

![Salesforce Cred](/img/salesforce-old-cred.png)
![Salesforce Cred](/img/salesforce-old-cred.webp)

For use in the CLI, see an example
[salesforce configuration](/adaptors/packages/salesforce-configuration-schema)
Expand All @@ -196,7 +196,7 @@ For use in the CLI, see an example
or below screenshot. Once reset, you will receive an email from Salesforce.
Please save this `security token` in your OpenFn `Credential`.

![Token Reset](/img/security-token.png)
![Token Reset](/img/security-token.webp)

## Common Errors

Expand Down
2 changes: 1 addition & 1 deletion adaptors/satusehat.md
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@ See platform docs
how to configure a credential in OpenFn and see the below Satusehat credential
example.

![Satusehat Cred](/img/satusehat_credential_edit.png)
![Satusehat Cred](/img/satusehat_credential_edit.webp)

If you're using the `Raw JSON` credential type, your configuration may look like
this:
Expand Down
4 changes: 2 additions & 2 deletions adaptors/surveycto.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ SurveyCTO provides a REST API which can be accessed via the OpenFn `surveycto`
adaptor. In SurveyCTO, admins can also configure webhooks to push data to
OpenFn/other external systems in real-time in CSV or JSON format.

![openfn-trigger-options](/img/openfn_surveycto_trigger.png)
![openfn-trigger-options](/img/openfn_surveycto_trigger.webp)

### 1. Webhooks (for real-time integration):

Expand All @@ -63,7 +63,7 @@ To configure a webhook to push data to OpenFn:
[See this docs page](https://docs.surveycto.com/05-exporting-and-publishing-data/03-publishing-data-to-the-cloud/05.forms-to-webhooks.html)
for more on SurveyCTO webooks.

![Configuraing the webhook for OpenFn](/img/surveycto_webhook_config.png)
![Configuraing the webhook for OpenFn](/img/surveycto_webhook_config.webp)

### 2. API integration (for scheduled and/or bulk data integration):

Expand Down
2 changes: 1 addition & 1 deletion adaptors/tableau.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,6 @@ established, OpenFn assists the iNGO with connecting this data to Tableau.
Refer to the diagram below for a visualization of the data flow cited in the
above use case.

![Tableau Data Flow Visualization](/img/survey_db_tableau.png)
![Tableau Data Flow Visualization](/img/survey_db_tableau.webp)

<!-- please note that the diagram can be found at this link: https://lucid.app/lucidchart/invitations/accept/67c935c0-ec87-4454-b38f-57a6c002f597 -->
2 changes: 1 addition & 1 deletion adaptors/varo.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Equipment Monitoring System (EMS) standard.
To integrate with Varo data, you can use the relevant OpenFn adaptor (e.g.,
Gmail) for your chosen email inbox to query the Varo emails and attachments.

![example-workflow](/img/sample-cce-workflow.png)
![example-workflow](/img/sample-cce-workflow.webp)

## Authentication

Expand Down
6 changes: 3 additions & 3 deletions articles/2020-06-16-how-information-is-organized.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ technology.

### Boxes and crow's feet

![](/img/box5.png)
![](/img/box5.webp)

The box is my favorite. It represents an entity in your data system. Entities
(like `teachers`) have attributes (like `name`, `phone number`, `date of birth`,
Expand All @@ -69,7 +69,7 @@ gender, etc. These are the fields on your teacher entity. By submitting one of
these forms, you’ll add a new teacher to your database. If you’re an Excel
person, the attributes are columns in your `teachers` table.

![](/img/crowsfeet2.png)
![](/img/crowsfeet2.webp)

The crow’s foot is my second favorite. It’s used to show relationships between
entities. We know that teachers are related to the sessions that they conduct.
Expand All @@ -83,7 +83,7 @@ relationship. The crow’s foot (that little three-pronged fella) denotes the
many. One teacher can have many sessions. One session, however, can only have
one teacher. See the diagram below.

![](/img/objectmodel3.png)
![](/img/objectmodel3.webp)

If we focus just on `teacher` and `session` and think back to MS Excel, we can
envision a `teachers` table and a `sessions` table. Let’s put them on different
Expand Down
4 changes: 2 additions & 2 deletions articles/2021-02-17-syncing-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ interface, i.e., when a real case-worker clicks the “refer” button) OpenFn
receives a small payload with case data and transmits it to OSCaR and vice
versa.

![Real_Time_Sync](/img/syncs1.png)
![Real_Time_Sync](/img/syncs1.webp)

<!-- all diagrams for this article can be found here: https://lucid.app/lucidchart/invitations/accept/d36fb964-7c74-4e48-b248-7e25497883e3 -->

Expand All @@ -60,7 +60,7 @@ case might not get referred to Oscar!

### Scheduled Syncs

![Schedule_Dependent_Sync](/img/syncs2.png)
![Schedule_Dependent_Sync](/img/syncs2.webp)

The second option considered, a bi-directional schedule dependent sync, solves
for the issue discussed above. On a scheduled basis (every 5 minutes, for
Expand Down
2 changes: 1 addition & 1 deletion docs/build/ai-assistant.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ decision-making into action and automated execution.

:::

![AI Assistant](/img/ai-assistant.png)
![AI Assistant](/img/ai-assistant.webp)

:::caution Assistant Unavailable? Can't find it?

Expand Down
2 changes: 1 addition & 1 deletion docs/build/collections.md
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ The key generator will be called with each value and must return a string key.

Collections can be created, destroyed or renamed from the Admin menu.

![Collections Admin Page](/img/collections_admin.png)
![Collections Admin Page](/img/collections_admin.webp)

Before it can be used, a collection must be created. Collection names must be
unique to the deployment, so we recommend using your organisation (and maybe
Expand Down
6 changes: 3 additions & 3 deletions docs/build/credentials.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ A Credentials' values can only be viewed or edited by a single user — their "o
(the user that created that credential). All the collaborators on a Project can
choose from all credentials for the Project when defining a job.

![Credentials Page](/img/settings_credentials.png)
![Credentials Page](/img/settings_credentials.webp)

### Create a new Credential

Expand Down Expand Up @@ -77,13 +77,13 @@ Users of the hosted OpenFn platform SaaS can post on

Note the credential selects only required scopes for Google Sheets.

![Google OAuth](/img/google-oauth2.png)
![Google OAuth](/img/google-oauth2.webp)

#### e.g., Salesforce OAuth Credential

Note that you can choose which scopes to access on Salesforce.

![Salseforce OAuth](/img/salesforce-oauth2.png)
![Salseforce OAuth](/img/salesforce-oauth2.webp)

:::tip

Expand Down
6 changes: 3 additions & 3 deletions docs/build/editing-locally.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ machine:
2. Clone the repo from GitHub. Depending on how you're connecting, grab the
HTTPS or SSH URL of the repository.

![GH Clone URL](/img/git_clone_url.png)
![GH Clone URL](/img/git_clone_url.webp)

:::tip

Expand All @@ -45,14 +45,14 @@ for more info.)
6. To edit your steps, use a code editor. We recommend
[Visual Studio Code](https://code.visualstudio.com/download).

![VS Code](/img/edit_job_vscode.png)
![VS Code](/img/edit_job_vscode.webp)

7. When using VS Code, make sure you install the
[Prettier VSCode Extension](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)
and set it as the default formatter in Settings as seen below. This will apply
the correct code formatting to the files you change.

![Prettier](/img/prettier.png)
![Prettier](/img/prettier.webp)

8. Once you're done, you can check which files you changed with `git status`.

Expand Down
4 changes: 2 additions & 2 deletions docs/build/paths.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ proceed to the next Step when executed:
4. **Matches a JavaScript Expression**: the next Step will only run if an
expression evaluates to be true

![Path Conditions](/img/path_conditions.png)
![Path Conditions](/img/path_conditions.webp)

## Writing JavaScript Expressions for Custom Path Conditions

Expand All @@ -36,7 +36,7 @@ This is a regular Javsacript expression with `state` in scope. If the expression
evaluates to true (or anything _truthy_), the Path will be followed and the next
Step will be executed.

![Custom Conditions](/img/path_js_expression.png)
![Custom Conditions](/img/path_js_expression.webp)

Examples of valid conditions include:

Expand Down
4 changes: 2 additions & 2 deletions docs/build/steps/step-design-intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ In short, to design a Workflow Step, you will need to follow the below list of
actions, and consider summarizing your design specifications in a
[workflow diagram](/documentation/design/design-workflow).

![Example Workflow](/img/example-workflow-state.png)
![Example Workflow](/img/example-workflow-state.webp)

## 1. Determine your Inputs/Outputs

Expand All @@ -37,7 +37,7 @@ To get started:
source app (input) & destination app (output).
2. Paste the metadata into an Excel spreadsheet to create a mapping sheet:

![Sample mapping sheet](/img/data-element-mapping.png)
![Sample mapping sheet](/img/data-element-mapping.webp)

3. Map the source and destinationdata elements & define rules for data cleaning
and transformation. Consider:
Expand Down
2 changes: 1 addition & 1 deletion docs/build/steps/steps.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ click on an existing Step to view or configure its key components.

To properly configure a Step, you must understand its basic anatomy.

![Step Anatomy](/img/anatomy_of_step.png)
![Step Anatomy](/img/anatomy_of_step.webp)

A Step includes these key components:

Expand Down
6 changes: 3 additions & 3 deletions docs/build/triggers.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ These triggers are fired by "pushing" data to OpenFn (i.e., by sending an HTTP
The triggering HTTP request might be sent via a webhook in an external app,
another OpenFn workflow, or manually (i.e., via cURL request).

![Webhook Trigger](/img/webhook_trigger.png)
![Webhook Trigger](/img/webhook_trigger.webp)

To learn about how to add an additional layer of security to your Webhook
Trigger by adding authentication, head over to our
Expand All @@ -35,7 +35,7 @@ These Triggers enable users to “pull” data from connected systems. You can p
a standard schedule (e.g., every day, or every month), or define a custom
schedule using cron expressions.

![Cron Trigger](/img/cron_trigger.png)
![Cron Trigger](/img/cron_trigger.webp)

:::tip Help with cron expressions

Expand Down Expand Up @@ -105,7 +105,7 @@ Instance administrators have to enable Kafka for their instance by setting

:::

![Configuring Kafka Trigger](/img/configuring-kafka.png)
![Configuring Kafka Trigger](/img/configuring-kafka.webp)

:::info What is Kafka?

Expand Down
Loading