Skip to content

Import integrated account into Truto


Please use this endpoint only for importing existing app credentials into Truto. To connect new Integrated accounts, please use the Link token approach.

Endpoint

http
POST /integrated-account

Request Body

tenant_id
string
The ID of the tenant.
Example: acme-1
environment_integration_id
string
The ID of the environment integration (installed integration).
Example: b179ad55-db02-4bd4-b7a4-d2c173eee9ae
context
object
The context of the integrated account. You can find these in the `Variables` section of an integrated account in the Truto UI. For creating an integrated account with authentication_type `oauth2`, `oauth2_client_credentials` and `keka_oauth`, set the `oauth` object with `{ "token": { "access_token": "<token_value", "refresh_token": "<if_available>", "expires_in": <value> } }`. For api_key, please refer the fields section of `credentials` object of the integration.
Example: { "oauth": { "token": { "access_token": "secret_foo_bar", "refresh_token": "refresh_foo_bar", "expires_in": 3600 } } }
authentication_method
string
Type of authentication used.
All possible enum values:
  • oauth2
  • api_key
  • oauth2_client_credentials
  • keka_oauth

Response Body

id
string · uuid
The ID of the integrated account.
Example: 1ba1f401-7183-47c5-9e39-e8e257e3c795
tenant_id
string
The ID of the tenant.
Example: acme-1
environment_integration_id
string
The ID of the environment integration (installed integration).
Example: b179ad55-db02-4bd4-b7a4-d2c173eee9ae
context
object
The context of the integrated account. You can find these in the `Variables` section of an integrated account in the Truto UI.
Example: { "zendesk_subdomain": "truto" }
status
string
Status of the integrated account. `active` - Everything is fine and the account should work, `connecting` - Post install and validation steps are being run, `post_install_error` - There was an error while running post install steps, `validation_error` - There was an error while running validation steps, `needs_reauth` - There was an error while refreshing the credentials and the integrated account needs to be reauthorized.
All possible enum values:
  • active
  • connecting
  • post_install_error
  • validation_error
  • needs_reauth
last_error
string
The last error that occurred while running the post install or validation steps.
last_action_result
object
The results of the post install and validation steps that ran on the integrated account.
created_at
string · date-time
The date and time when the integrated account was created.
Example: 2021-08-10T10:00:00.000Z
updated_at
string · date-time
The date and time when the integrated account was last updated.
Example: 2021-08-10T10:00:00.000Z
is_sandbox
boolean
Whether the integrated account is in sandbox mode or not. Sandbox integrated accounts do not allow any "write" operations.
authentication_method
string
Type of authentication used.
All possible enum values:
  • oauth2
  • api_key
  • oauth2_client_credentials
  • keka_oauth
environment_id
string · uuid
The ID of the environment this integrated account belongs to.
Example: 8a2b104d-74a6-47f2-b93e-c6b611e82391
integration
object
The integration associated with this integrated account.
id
string · uuid
The ID of the integration.
Example: 4a4de828-f4db-4c9e-adfd-434e0864c3c7
name
string
The name of the integration.
Example: zendesk
category
string
The category of the integration.
Example: helpdesk
is_beta
boolean
Whether the integration is in beta or not. Beta integrations might not have been tested completely and are not recommended for production environments.
config
object
The configuration object defining the underlying API of the integration.
Example: { "base_url": "https://api.example.com", "label": "Example API", "logo": "https://example.com/logo.png", "headers": { "Content-Type": "application/json", "Accept": "application/json", "User-Agent": "truto" }, "authorization": { "format": "bearer", "config": { "value": "{{oauth.token.access_token}}" } }, "pagination": { "format": "page", "config": { "page_key": "page", "limit_key": "per_page" } }, "resources": { "users": { "list": { "method": "get", "path": "/users", "response_path": "data.users" } } } }
team_id
string · uuid
The ID of the team that owns this integration.
Example: 05daecaf-4365-42e8-8370-8127de5dd717
sharing
string
The sharing policy of the integration. allow - Any Truto team can install, ask - Truto teams need to ask for permission to install, deny - Only your team can install.
All possible enum values:
  • allow
  • ask
  • deny
Example: allow
created_at
string · date-time
The date and time when the integration was created.
Example: 2021-08-10T10:00:00.000Z
updated_at
string · date-time
The date and time when the integration was last updated.
Example: 2021-08-10T10:00:00.000Z
object_store_context_fields
string[]
The list of context fields that are stored in the object store.