Skip to content

Latest commit

Β 

History

History
4973 lines (3508 loc) Β· 58.3 KB

File metadata and controls

4973 lines (3508 loc) Β· 58.3 KB

Reference

AppCategories

client.appCategories.list() -> List<AppCategory>

πŸ“ Description

Retrieve all available categories for integrated apps

πŸ”Œ Usage

client.appCategories().list();
client.appCategories.retrieve(id) -> AppCategory

πŸ“ Description

Get details of a specific app category by its ID

πŸ”Œ Usage

client.appCategories().retrieve("id");

βš™οΈ Parameters

id: String β€” The ID of the app category to retrieve

Apps

client.apps.list() -> SyncPagingIterable<App>

πŸ“ Description

Retrieve all available apps with optional filtering and sorting

πŸ”Œ Usage

client.apps().list(
    AppsListRequest
        .builder()
        .categoryIds(
            Arrays.asList("category_ids")
        )
        .after("after")
        .before("before")
        .limit(1)
        .q("q")
        .sortKey(AppsListRequestSortKey.NAME)
        .sortDirection(AppsListRequestSortDirection.ASC)
        .hasComponents(true)
        .hasActions(true)
        .hasTriggers(true)
        .build()
);

βš™οΈ Parameters

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

q: Optional<String> β€” A search query to filter the apps

sortKey: Optional<AppsListRequestSortKey> β€” The key to sort the apps by

sortDirection: Optional<AppsListRequestSortDirection> β€” The direction to sort the apps

categoryIds: Optional<String> β€” Only return apps in these categories

hasComponents: Optional<Boolean> β€” Only return apps that have components (actions or triggers)

hasActions: Optional<Boolean> β€” Only return apps that have actions

hasTriggers: Optional<Boolean> β€” Only return apps that have triggers

client.apps.retrieve(appId) -> GetAppResponse

πŸ“ Description

Get detailed information about a specific app by ID or name slug

πŸ”Œ Usage

client.apps().retrieve("app_id");

βš™οΈ Parameters

appId: String β€” The name slug or ID of the app (e.g., 'slack', 'github')

Accounts

client.accounts.list(projectId) -> SyncPagingIterable&lt;Account&gt;

πŸ“ Description

Retrieve all connected accounts for the project with optional filtering

πŸ”Œ Usage

client.accounts().list(
    AccountsListRequest
        .builder()
        .externalUserId("external_user_id")
        .oauthAppId("oauth_app_id")
        .after("after")
        .before("before")
        .limit(1)
        .app("app")
        .includeCredentials(true)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

externalUserId: Optional<String>

oauthAppId: Optional<String> β€” The OAuth app ID to filter by, if applicable

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

app: Optional<String> β€” The app slug or ID to filter accounts by.

includeCredentials: Optional<Boolean> β€” Whether to retrieve the account's credentials or not

client.accounts.create(projectId, request) -> Account

πŸ“ Description

Connect a new account for an external user in the project

πŸ”Œ Usage

client.accounts().create(
    CreateAccountOpts
        .builder()
        .appSlug("app_slug")
        .cfmapJson("cfmap_json")
        .connectToken("connect_token")
        .externalUserId("external_user_id")
        .oauthAppId("oauth_app_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

externalUserId: Optional<String>

oauthAppId: Optional<String> β€” The OAuth app ID to filter by, if applicable

appSlug: String β€” The app slug for the account

cfmapJson: String β€” JSON string containing the custom fields mapping

connectToken: String β€” The connect token for authentication

name: Optional<String> β€” Optional name for the account

accountId: Optional<String> β€” An existing account ID to reconnect. When provided, the account's credentials are updated instead of creating a new account. Must belong to the same external user and project environment as the connect token, and match the app identified by app_slug.

client.accounts.retrieve(projectId, accountId) -> Account

πŸ“ Description

Get the details for a specific connected account

πŸ”Œ Usage

client.accounts().retrieve(
    "account_id",
    AccountsRetrieveRequest
        .builder()
        .includeCredentials(true)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

accountId: String

includeCredentials: Optional<Boolean> β€” Whether to retrieve the account's credentials or not

client.accounts.delete(projectId, accountId)

πŸ“ Description

Remove a connected account and its associated credentials

πŸ”Œ Usage

client.accounts().delete("account_id");

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

accountId: String

client.accounts.deleteByApp(projectId, appId)

πŸ“ Description

Remove all connected accounts for a specific app

πŸ”Œ Usage

client.accounts().deleteByApp("app_id");

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

appId: String

client.accounts.listByExternalUser(projectId, externalUserId) -> List&lt;Account&gt;

πŸ“ Description

List all connected accounts for a specific external user. Equivalent to GET /accounts with external_user_id filter but uses path-based routing.

πŸ”Œ Usage

client.accounts().listByExternalUser(
    "external_user_id",
    AccountsListByExternalUserRequest
        .builder()
        .includeCredentials(true)
        .app("app")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

externalUserId: String

includeCredentials: Optional<Boolean>

app: Optional<String>

Users

client.users.deleteExternalUser(projectId, externalUserId)

πŸ“ Description

Remove an external user and all their associated accounts and resources

πŸ”Œ Usage

client.users().deleteExternalUser("external_user_id");

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

externalUserId: String

client.users.list(projectId) -> SyncPagingIterable&lt;ExternalUser&gt;

πŸ“ Description

Retrieve all external users for the project

πŸ”Œ Usage

client.users().list(
    UsersListRequest
        .builder()
        .after("after")
        .before("before")
        .limit(1)
        .q("q")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

q: Optional<String> β€” Filter users by external_id (partial match)

Components

client.components.list(projectId) -> SyncPagingIterable&lt;Component&gt;

πŸ“ Description

Retrieve available components with optional search and app filtering

πŸ”Œ Usage

client.components().list(
    ComponentsListRequest
        .builder()
        .after("after")
        .before("before")
        .limit(1)
        .q("q")
        .app("app")
        .registry(ComponentsListRequestRegistry.PUBLIC)
        .componentType(ComponentType.TRIGGER)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

q: Optional<String> β€” A search query to filter the components

app: Optional<String> β€” The ID or name slug of the app to filter the components

registry: Optional<ComponentsListRequestRegistry> β€” The registry to retrieve components from. Defaults to 'all' ('public', 'private', or 'all')

componentType: Optional<ComponentType> β€” The type of the component to filter the components

client.components.retrieve(projectId, componentId) -> GetComponentResponse

πŸ“ Description

Get detailed configuration for a specific component by its key

πŸ”Œ Usage

client.components().retrieve(
    "component_id",
    ComponentsRetrieveRequest
        .builder()
        .version("1.2.3")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

componentId: String β€” The key that uniquely identifies the component (e.g., 'slack-send-message')

version: Optional<String> β€” Optional semantic version of the component to retrieve (for example '1.0.0')

client.components.configureProp(projectId, request) -> ConfigurePropResponse

πŸ“ Description

Retrieve remote options for a given prop for a component

πŸ”Œ Usage

client.components().configureProp(
    ConfigurePropOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .propName("prop_name")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

request: ConfigurePropOpts

client.components.reloadProps(projectId, request) -> ReloadPropsResponse

πŸ“ Description

Reload the prop definition based on the currently configured props

πŸ”Œ Usage

client.components().reloadProps(
    ReloadPropsOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

request: ReloadPropsOpts

Actions

client.actions.list(projectId) -> SyncPagingIterable&lt;Component&gt;

πŸ“ Description

Retrieve available actions with optional search and app filtering

πŸ”Œ Usage

client.actions().list(
    ActionsListRequest
        .builder()
        .after("after")
        .before("before")
        .limit(1)
        .q("q")
        .app("app")
        .registry(ActionsListRequestRegistry.PUBLIC)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

q: Optional<String> β€” A search query to filter the actions

app: Optional<String> β€” The ID or name slug of the app to filter the actions

registry: Optional<ActionsListRequestRegistry> β€” The registry to retrieve actions from. Defaults to 'all' ('public', 'private', or 'all')

client.actions.retrieve(projectId, componentId) -> GetComponentResponse

πŸ“ Description

Get detailed configuration for a specific action by its key

πŸ”Œ Usage

client.actions().retrieve(
    "component_id",
    ActionsRetrieveRequest
        .builder()
        .version("1.2.3")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

componentId: String β€” The key that uniquely identifies the component (e.g., 'slack-send-message')

version: Optional<String> β€” Optional semantic version of the component to retrieve (for example '1.0.0')

client.actions.configureProp(projectId, request) -> ConfigurePropResponse

πŸ“ Description

Retrieve remote options for a given prop for a action

πŸ”Œ Usage

client.actions().configureProp(
    ConfigurePropOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .propName("prop_name")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

request: ConfigurePropOpts

client.actions.reloadProps(projectId, request) -> ReloadPropsResponse

πŸ“ Description

Reload the prop definition based on the currently configured props

πŸ”Œ Usage

client.actions().reloadProps(
    ReloadPropsOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

request: ReloadPropsOpts

client.actions.run(projectId, request) -> RunActionResponse

πŸ“ Description

Execute an action with the provided configuration and return results

πŸ”Œ Usage

client.actions().run(
    RunActionOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

id: String β€” The action component ID

version: Optional<String> β€” Optional action component version (in SemVer format, for example '1.0.0'), defaults to latest

externalUserId: String β€” The external user ID

configuredProps: Optional<Map<String, ConfiguredPropValue>>

dynamicPropsId: Optional<String> β€” The ID for dynamic props

stashId: Optional<RunActionOptsStashId>

Triggers

client.triggers.list(projectId) -> SyncPagingIterable&lt;Component&gt;

πŸ“ Description

Retrieve available triggers with optional search and app filtering

πŸ”Œ Usage

client.triggers().list(
    TriggersListRequest
        .builder()
        .after("after")
        .before("before")
        .limit(1)
        .q("q")
        .app("app")
        .registry(TriggersListRequestRegistry.PUBLIC)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

q: Optional<String> β€” A search query to filter the triggers

app: Optional<String> β€” The ID or name slug of the app to filter the triggers

registry: Optional<TriggersListRequestRegistry> β€” The registry to retrieve triggers from. Defaults to 'all' ('public', 'private', or 'all')

client.triggers.retrieve(projectId, componentId) -> GetComponentResponse

πŸ“ Description

Get detailed configuration for a specific trigger by its key

πŸ”Œ Usage

client.triggers().retrieve(
    "component_id",
    TriggersRetrieveRequest
        .builder()
        .version("1.2.3")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

componentId: String β€” The key that uniquely identifies the component (e.g., 'slack-send-message')

version: Optional<String> β€” Optional semantic version of the component to retrieve (for example '1.0.0')

client.triggers.configureProp(projectId, request) -> ConfigurePropResponse

πŸ“ Description

Retrieve remote options for a given prop for a trigger

πŸ”Œ Usage

client.triggers().configureProp(
    ConfigurePropOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .propName("prop_name")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

request: ConfigurePropOpts

client.triggers.reloadProps(projectId, request) -> ReloadPropsResponse

πŸ“ Description

Reload the prop definition based on the currently configured props

πŸ”Œ Usage

client.triggers().reloadProps(
    ReloadPropsOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

request: ReloadPropsOpts

client.triggers.deploy(projectId, request) -> DeployTriggerResponse

πŸ“ Description

Deploy a trigger to listen for and emit events

πŸ”Œ Usage

client.triggers().deploy(
    DeployTriggerOpts
        .builder()
        .id("id")
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

id: String β€” The trigger component ID

version: Optional<String> β€” Optional trigger component version (in SemVer format, for example '1.0.0'), defaults to latest

externalUserId: String β€” The external user ID

configuredProps: Optional<Map<String, ConfiguredPropValue>>

dynamicPropsId: Optional<String> β€” The ID for dynamic props

workflowId: Optional<String> β€” Optional ID of a workflow to receive trigger events

webhookUrl: Optional<String> β€” Optional webhook URL to receive trigger events

emitOnDeploy: Optional<Boolean> β€” Whether the trigger should emit events during the deploy hook execution. Defaults to true if not specified.

DeployedTriggers

client.deployedTriggers.list(projectId) -> SyncPagingIterable&lt;Emitter&gt;

πŸ“ Description

Retrieve all deployed triggers for a specific external user

πŸ”Œ Usage

client.deployedTriggers().list(
    DeployedTriggersListRequest
        .builder()
        .externalUserId("external_user_id")
        .after("after")
        .before("before")
        .limit(1)
        .emitterType(EmitterType.EMAIL)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

externalUserId: String β€” Your end user ID, for whom you deployed the trigger

emitterType: Optional<EmitterType> β€” Filter deployed triggers by emitter type (defaults to 'source' if not provided)

client.deployedTriggers.retrieve(projectId, triggerId) -> GetTriggerResponse

πŸ“ Description

Get details of a specific deployed trigger by its ID

πŸ”Œ Usage

client.deployedTriggers().retrieve(
    "trigger_id",
    DeployedTriggersRetrieveRequest
        .builder()
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” Your end user ID, for whom you deployed the trigger

client.deployedTriggers.update(projectId, triggerId, request) -> GetTriggerResponse

πŸ“ Description

Modify the configuration of a deployed trigger, including active status

πŸ”Œ Usage

client.deployedTriggers().update(
    "trigger_id",
    UpdateTriggerOpts
        .builder()
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” The external user ID who owns the trigger

active: Optional<Boolean> β€” Whether the trigger should be active

configuredProps: Optional<Map<String, ConfiguredPropValue>>

name: Optional<String> β€” The name of the trigger

emitOnDeploy: Optional<Boolean> β€” Whether the trigger should emit events during deployment

client.deployedTriggers.delete(projectId, triggerId)

πŸ“ Description

Remove a deployed trigger and stop receiving events

πŸ”Œ Usage

client.deployedTriggers().delete(
    "trigger_id",
    DeployedTriggersDeleteRequest
        .builder()
        .externalUserId("external_user_id")
        .ignoreHookErrors(true)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” The external user ID who owns the trigger

ignoreHookErrors: Optional<Boolean> β€” Whether to ignore errors during deactivation hook

client.deployedTriggers.listEvents(projectId, triggerId) -> GetTriggerEventsResponse

πŸ“ Description

Retrieve recent events emitted by a deployed trigger

πŸ”Œ Usage

client.deployedTriggers().listEvents(
    "trigger_id",
    DeployedTriggersListEventsRequest
        .builder()
        .externalUserId("external_user_id")
        .n(1)
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” Your end user ID, for whom you deployed the trigger

n: Optional<Integer> β€” The number of events to retrieve (defaults to 20 if not provided)

client.deployedTriggers.listWorkflows(projectId, triggerId) -> GetTriggerWorkflowsResponse

πŸ“ Description

Get workflows connected to receive events from this trigger

πŸ”Œ Usage

client.deployedTriggers().listWorkflows(
    "trigger_id",
    DeployedTriggersListWorkflowsRequest
        .builder()
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” The external user ID who owns the trigger

client.deployedTriggers.updateWorkflows(projectId, triggerId, request) -> GetTriggerWorkflowsResponse

πŸ“ Description

Connect or disconnect workflows to receive trigger events

πŸ”Œ Usage

client.deployedTriggers().updateWorkflows(
    "trigger_id",
    UpdateTriggerWorkflowsOpts
        .builder()
        .externalUserId("external_user_id")
        .workflowIds(
            Arrays.asList("workflow_ids")
        )
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” The external user ID who owns the trigger

workflowIds: List<String> β€” Array of workflow IDs to set

client.deployedTriggers.listWebhooks(projectId, triggerId) -> GetTriggerWebhooksResponse

πŸ“ Description

Get webhook URLs configured to receive trigger events

πŸ”Œ Usage

client.deployedTriggers().listWebhooks(
    "trigger_id",
    DeployedTriggersListWebhooksRequest
        .builder()
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” The external user ID who owns the trigger

client.deployedTriggers.updateWebhooks(projectId, triggerId, request) -> GetTriggerWebhooksResponse

πŸ“ Description

Configure webhook URLs to receive trigger events. signing_key is only returned for OAuth-authenticated requests.

πŸ”Œ Usage

client.deployedTriggers().updateWebhooks(
    "trigger_id",
    UpdateTriggerWebhooksOpts
        .builder()
        .externalUserId("external_user_id")
        .webhookUrls(
            Arrays.asList("webhook_urls")
        )
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

externalUserId: String β€” The external user ID who owns the trigger

webhookUrls: List<String> β€” Array of webhook URLs to set

client.deployedTriggers.retrieveWebhook(projectId, triggerId, webhookId) -> GetWebhookWithSigningKeyResponse

πŸ“ Description

Retrieve a specific webhook for a deployed trigger, including its signing key

πŸ”Œ Usage

client.deployedTriggers().retrieveWebhook(
    "trigger_id",
    "webhook_id",
    DeployedTriggersRetrieveWebhookRequest
        .builder()
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

webhookId: String

externalUserId: String β€” The external user ID who owns the trigger

client.deployedTriggers.regenerateWebhookSigningKey(projectId, triggerId, webhookId) -> GetWebhookWithSigningKeyResponse

πŸ“ Description

Regenerate the signing key for a specific webhook on a deployed trigger

πŸ”Œ Usage

client.deployedTriggers().regenerateWebhookSigningKey(
    "trigger_id",
    "webhook_id",
    DeployedTriggersRegenerateWebhookSigningKeyRequest
        .builder()
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

triggerId: String

webhookId: String

externalUserId: String β€” The external user ID who owns the trigger

ProjectEnvironment

client.projectEnvironment.retrieveWebhook(projectId) -> GetWebhookResponse

πŸ“ Description

Retrieve the webhook configured for a project environment

πŸ”Œ Usage

client.projectEnvironment().retrieveWebhook();

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

client.projectEnvironment.updateWebhook(projectId, request) -> SetWebhookResponse

πŸ“ Description

Create or update the webhook URL for a project environment. Creating a webhook returns signing_key; updating an existing webhook does not.

πŸ”Œ Usage

client.projectEnvironment().updateWebhook(
    SetWebhookOpts
        .builder()
        .url("url")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

url: String β€” The webhook URL to set

client.projectEnvironment.deleteWebhook(projectId)

πŸ“ Description

Remove the webhook configured for a project environment

πŸ”Œ Usage

client.projectEnvironment().deleteWebhook();

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

client.projectEnvironment.regenerateWebhookSigningKey(projectId) -> GetWebhookWithSigningKeyResponse

πŸ“ Description

Regenerate the signing key for the project environment webhook

πŸ”Œ Usage

client.projectEnvironment().regenerateWebhookSigningKey();

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

Projects

client.projects.list() -> SyncPagingIterable&lt;Project&gt;

πŸ“ Description

List the projects that are available to the authenticated Connect client

πŸ”Œ Usage

client.projects().list(
    ProjectsListRequest
        .builder()
        .after("after")
        .before("before")
        .limit(1)
        .q("q")
        .build()
);

βš™οΈ Parameters

after: Optional<String> β€” The cursor to start from for pagination

before: Optional<String> β€” The cursor to end before for pagination

limit: Optional<Integer> β€” The maximum number of results to return

q: Optional<String> β€” A search query to filter the projects

client.projects.create(request) -> Project

πŸ“ Description

Create a new project for the authenticated workspace

πŸ”Œ Usage

client.projects().create(
    CreateProjectOpts
        .builder()
        .name("name")
        .build()
);

βš™οΈ Parameters

name: String β€” Name of the project

appName: Optional<String> β€” Display name for the Connect application

supportEmail: Optional<String> β€” Support email displayed to end users

connectRequireKeyAuthTest: Optional<Boolean> β€” Send a test request to the upstream API when adding Connect accounts for key-based apps

client.projects.retrieve(projectId) -> Project

πŸ“ Description

Get the project details for a specific project

πŸ”Œ Usage

client.projects().retrieve("project_id");

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

client.projects.delete(projectId)

πŸ“ Description

Delete a project owned by the authenticated workspace

πŸ”Œ Usage

client.projects().delete("project_id");

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

client.projects.update(projectId, request) -> Project

πŸ“ Description

Update project details or application information

πŸ”Œ Usage

client.projects().update(
    "project_id",
    UpdateProjectOpts
        .builder()
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

name: Optional<String> β€” Name of the project

appName: Optional<String> β€” Display name for the Connect application

supportEmail: Optional<String> β€” Support email displayed to end users

connectRequireKeyAuthTest: Optional<Boolean> β€” Send a test request to the upstream API when adding Connect accounts for key-based apps

client.projects.updateLogo(projectId, request)

πŸ“ Description

Upload or replace the project logo

πŸ”Œ Usage

client.projects().updateLogo(
    "project_id",
    UpdateProjectLogoOpts
        .builder()
        .logo("data:image/png;base64,AAAAAA...")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

logo: String β€” Data URI containing the new Base64 encoded image

client.projects.retrieveInfo(projectId) -> ProjectInfoResponse

πŸ“ Description

Retrieve project configuration and environment details

πŸ”Œ Usage

client.projects().retrieveInfo();

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

FileStash

client.fileStash.downloadFile(projectId) -> InputStream

πŸ“ Description

Download a file from File Stash

πŸ”Œ Usage

client.fileStash().downloadFile(
    FileStashDownloadFileRequest
        .builder()
        .s3Key("s3_key")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

s3Key: String

Proxy

The Proxy client forwards authenticated HTTP requests to a third-party API using credentials from a connected account stored in Pipedream Connect. Pass the target URL as a String (or okhttp3.HttpUrl) β€” the client Base64-encodes it internally before calling the Pipedream API.

Every method returns a ProxyResponse, which is a closeable union of either a parsed JSON value (response.isJson() / response.json()) or a raw InputStream (response.isStream() / response.stream()), determined by the upstream Content-Type. Stream responses should be consumed inside a try-with-resources block to release the underlying HTTP connection:

try (ProxyResponse response = client.proxy().get("https://api.example.com/users", request)) {
    if (response.isJson()) {
        Object json = response.json();
    } else {
        InputStream body = response.stream();
    }
}

For full HTTP metadata (status code, headers), use client.proxy().withRawResponse(). The async client (asyncClient.proxy().get(...)) exposes the same surface with CompletableFuture<ProxyResponse> return types.

client.proxy.get(url, request) -> ProxyResponse

πŸ“ Description

Forward an authenticated GET request to an external API using an external user's account credentials

πŸ”Œ Usage

client.proxy().get(
    "https://api.example.com/users",
    ProxyGetRequest
        .builder()
        .externalUserId("external_user_id")
        .accountId("account_id")
        .build()
);

βš™οΈ Parameters

url: String β€” Target URL to forward the request to. Base64-encoded internally before being sent to Pipedream. An okhttp3.HttpUrl overload is also available.

externalUserId: String β€” The external user ID for the proxy request

accountId: String β€” The account ID to use for authentication

client.proxy.post(url, request) -> ProxyResponse

πŸ“ Description

Forward an authenticated POST request to an external API using an external user's account credentials

πŸ”Œ Usage

client.proxy().post(
    "https://api.example.com/users",
    ProxyPostRequest
        .builder()
        .externalUserId("external_user_id")
        .accountId("account_id")
        .body(
            new HashMap<String, Object>() {{
                put("name", "Jane Doe");
                put("email", "jane@example.com");
            }}
        )
        .build()
);

βš™οΈ Parameters

url: String β€” Target URL to forward the request to. Base64-encoded internally before being sent to Pipedream. An okhttp3.HttpUrl overload is also available.

externalUserId: String β€” The external user ID for the proxy request

accountId: String β€” The account ID to use for authentication

body: Map<String, Object> β€” Request body to forward to the target API

client.proxy.put(url, request) -> ProxyResponse

πŸ“ Description

Forward an authenticated PUT request to an external API using an external user's account credentials

πŸ”Œ Usage

client.proxy().put(
    "https://api.example.com/users/42",
    ProxyPutRequest
        .builder()
        .externalUserId("external_user_id")
        .accountId("account_id")
        .body(
            new HashMap<String, Object>() {{
                put("name", "Jane Doe");
                put("email", "jane@example.com");
            }}
        )
        .build()
);

βš™οΈ Parameters

url: String β€” Target URL to forward the request to. Base64-encoded internally before being sent to Pipedream. An okhttp3.HttpUrl overload is also available.

externalUserId: String β€” The external user ID for the proxy request

accountId: String β€” The account ID to use for authentication

body: Map<String, Object> β€” Request body to forward to the target API

client.proxy.delete(url, request) -> ProxyResponse

πŸ“ Description

Forward an authenticated DELETE request to an external API using an external user's account credentials

πŸ”Œ Usage

client.proxy().delete(
    "https://api.example.com/users/42",
    ProxyDeleteRequest
        .builder()
        .externalUserId("external_user_id")
        .accountId("account_id")
        .build()
);

βš™οΈ Parameters

url: String β€” Target URL to forward the request to. Base64-encoded internally before being sent to Pipedream. An okhttp3.HttpUrl overload is also available.

externalUserId: String β€” The external user ID for the proxy request

accountId: String β€” The account ID to use for authentication

client.proxy.patch(url, request) -> ProxyResponse

πŸ“ Description

Forward an authenticated PATCH request to an external API using an external user's account credentials

πŸ”Œ Usage

client.proxy().patch(
    "https://api.example.com/users/42",
    ProxyPatchRequest
        .builder()
        .externalUserId("external_user_id")
        .accountId("account_id")
        .body(
            new HashMap<String, Object>() {{
                put("email", "jane.new@example.com");
            }}
        )
        .build()
);

βš™οΈ Parameters

url: String β€” Target URL to forward the request to. Base64-encoded internally before being sent to Pipedream. An okhttp3.HttpUrl overload is also available.

externalUserId: String β€” The external user ID for the proxy request

accountId: String β€” The account ID to use for authentication

body: Map<String, Object> β€” Request body to forward to the target API

Tokens

client.tokens.create(projectId, request) -> CreateTokenResponse

πŸ“ Description

Generate a Connect token to use for client-side authentication

πŸ”Œ Usage

client.tokens().create(
    CreateTokenOpts
        .builder()
        .externalUserId("external_user_id")
        .build()
);

βš™οΈ Parameters

projectId: String β€” The project ID, which starts with proj_.

allowedOrigins: Optional<List<String>> β€” List of allowed origins for CORS

errorRedirectUri: Optional<String> β€” URI to redirect to on error

expiresIn: Optional<Integer> β€” Token TTL in seconds (max 14400 = 4 hours). Defaults to 4 hours if not specified.

externalUserId: String β€” Your end user ID, for whom you're creating the token

scope: Optional<String> β€” Space-separated scopes to restrict token permissions. Defaults to 'connect:*' if not specified. See https://pipedream.com/docs/connect/api-reference/authentication#connect-token-scopes for more information.

successRedirectUri: Optional<String> β€” URI to redirect to on success

webhookUri: Optional<String> β€” Webhook URI for notifications

allowProgressiveScopes: Optional<Boolean> β€” When true, end users may authorize a subset of the app's OAuth scopes; only the app's functional scopes (needed for the post-OAuth test request) are enforced. Defaults to false.

client.tokens.validate(ctok) -> ValidateTokenResponse

πŸ“ Description

Confirm the validity of a Connect token

πŸ”Œ Usage

client.tokens().validate(
    "ctok",
    TokensValidateRequest
        .builder()
        .appId("app_id")
        .accountId("account_id")
        .oauthAppId("oauth_app_id")
        .build()
);

βš™οΈ Parameters

ctok: String

appId: String β€” The app ID to validate against

accountId: Optional<String> β€” An existing account ID to reconnect. Must belong to the app identified by app_id.

oauthAppId: Optional<String> β€” The OAuth app ID to validate against (if the token is for an OAuth app)

Usage

client.usage.list() -> ConnectUsageResponse

πŸ“ Description

Retrieve Connect usage records for a time window

πŸ”Œ Usage

client.usage().list(
    UsageListRequest
        .builder()
        .startTs(1)
        .endTs(1)
        .build()
);

βš™οΈ Parameters

startTs: Integer β€” Usage window start timestamp (seconds)

endTs: Integer β€” Usage window end timestamp (seconds)

OauthTokens

client.oauthTokens.create(request) -> CreateOAuthTokenResponse

πŸ“ Description

Exchange OAuth credentials for an access token

πŸ”Œ Usage

client.oauthTokens().create(
    CreateOAuthTokenOpts
        .builder()
        .clientId("client_id")
        .clientSecret("client_secret")
        .build()
);

βš™οΈ Parameters

grantType: String

clientId: String

clientSecret: String

scope: Optional<String> β€” Optional space-separated scopes for the access token. Defaults to *.

Workflows

The Workflows client invokes a Pipedream workflow via its HTTP interface. Pass either a full workflow URL (https://eo3xxxx.m.pipedream.net) or just the endpoint ID (eo3xxxx). Both methods return the workflow's response body as a deserialized Object (typically a Map, List, or scalar β€” see Jackson's default deserialization). The async client (asyncClient.workflows().invoke(...) / invokeForExternalUser(...)) exposes the same two methods returning CompletableFuture<Object>.

client.workflows.invoke(urlOrEndpoint) -> Object

πŸ”Œ Usage

// Simple workflow invocation (uses OAuth authentication by default)
client.workflows().invoke("eo3xxxx");

// Advanced workflow invocation with all options
client.workflows().invoke(
    InvokeWorkflowOpts
        .builder()
        .urlOrEndpoint("https://eo3xxxx.m.pipedream.net")
        .body(
            new HashMap<String, Object>() {{
                put("name", "John Doe");
                put("email", "john@example.com");
            }}
        )
        .headers(
            new HashMap<String, String>() {{
                put("Content-Type", "application/json");
                put("Authorization", "Bearer your-token"); // For STATIC_BEARER auth
            }}
        )
        .method("POST")
        .authType(HTTPAuthType.STATIC_BEARER)
        .build()
);

βš™οΈ Parameters

urlOrEndpoint: String β€” Either a workflow endpoint ID (e.g., eo3xxxx) or a full workflow URL

body: Optional<Object> β€” Request body to send to the workflow (will be JSON serialized)

headers: Optional<Map<String, String>> β€” Additional headers to include in the request

method: Optional<String> β€” HTTP method to use (defaults to POST)

authType: Optional<HTTPAuthType> β€” Authentication type: OAUTH (default), STATIC_BEARER, or NONE

client.workflows.invokeForExternalUser(urlOrEndpoint, externalUserId) -> Object

πŸ”Œ Usage

// Simple external user invocation (uses OAuth authentication by default)
client.workflows().invokeForExternalUser("eo3xxxx", "user123");

// Advanced external user invocation with all options
client.workflows().invokeForExternalUser(
    InvokeWorkflowForExternalUserOpts
        .builder()
        .url("https://eo3xxxx.m.pipedream.net")
        .externalUserId("user123")
        .body(
            new HashMap<String, Object>() {{
                put("action", "process_data");
                put("data", Arrays.asList("item1", "item2"));
            }}
        )
        .headers(
            new HashMap<String, String>() {{
                put("X-Custom-Header", "value");
            }}
        )
        .method("POST")
        .authType(HTTPAuthType.OAUTH)
        .build()
);

βš™οΈ Parameters

url: String β€” The full workflow URL to invoke

externalUserId: String β€” Your end user ID, for whom you're invoking the workflow (Pipedream Connect)

body: Optional<Object> β€” Request body to send to the workflow (will be JSON serialized)

headers: Optional<Map<String, String>> β€” Additional headers to include in the request

method: Optional<String> β€” HTTP method to use (defaults to POST)

authType: Optional<HTTPAuthType> β€” Authentication type: OAUTH (default), STATIC_BEARER, or NONE