Skip to main content
Table of Contents

Integrations

The following set of APIs are applicable across all the supported integration categories.

Get integrations list

Fetch a list of the integration(names, category, etc.) that BrowserStack Integrate supports.

GET /api/integrations

Request parameters

Request

curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" \
-X GET "https://integrate.browserstack.com/api/integrations?unique_user_id=steve@acme.com"
  • unique_user_id* String

    Unique identifier for user e.g. email ID.

  • configuration_key* String

    Secret key for your integration configuration.

Response attributes 200 application/json

Response

{
    "success": true,
    "data": {
        "integrations": [
            {
                "key": "jira",
                "label": "Jira",
                "icon": "https://static-assets.browserstack.com/integrate/icons/jira.png",
                "category": "pm-tools",
                "category_label": "Project Management Tools",
                "auth_meta": {
                    "oauth": {
                        "supported": true,
                        "path": "/api/integrations/oauth?integration_key=jira"
                    },
                    "api_token": {
                        "supported": true,
                        "fields": [
                            {
                                "label": "Atlassian host",
                                "key": "site",
                                "placeholder": "https://your-domain.atlassian.net",
                                "type": "text"
                            },
                            {
                                "label": "Email ID or username (used in Jira)",
                                "key": "username",
                                "type": "text"
                            },
                            {
                                "label": "Password or API token",
                                "key": "api_token",
                                "type": "password",
                                "doc_link": {
                                    "href": "https://id.atlassian.com/manage-profile/security/api-tokens",
                                    "text": "Get your API token"
                                }
                            }
                        ]
                    }
                },
                "setup_completed": false
            },
            {
                "key": "slack",
                "label": "Slack",
                "icon": "https://static-assets.browserstack.com/integrate/icons/slack.png",
                "category": "collaboration-tools",
                "category_label": "Collaboration Tools",
                "auth_meta": {
                    "oauth": {
                        "supported": true,
                        "path": "/api/integrations/oauth?integration_key=slack"
                    },
                    "bot_oauth": {
                        "supported": true,
                        "path": "/api/integrations/oauth?integration_key=slack&as_bot=true"
                    }
                },
                "setup_completed": false
            },
            {
                "key": "msteams",
                "label": "MS Teams",
                "icon": "https://static-assets.browserstack.com/integrate/icons/msteams.png",
                "category": "collaboration-tools",
                "category_label": "Collaboration Tools",
                "auth_meta": {
                    "oauth": {
                        "supported": true,
                        "path": "/api/integrations/oauth?integration_key=msteams"
                    }
                },
                "setup_completed": false
            }
        ]
    }
}
  • success Boolean

    Operation was a success or failure.

  • data Object

    List of all integrations

Get integration status

Get the current status of an integration for a user.

GET /api/integrations/setup-status

Request parameters

Request

curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" \
-X GET "https://integrate.browserstack.com/api/integrations?unique_user_id=steve@acme.com&integration_key=slack"
  • unique_user_id* String

    Unique identifier for user e.g. email ID

  • integration_key* String

    Name of the integration tool. Allowed values are - jira, slack, msteams

Response attributes 200 application/json

Response

{
    "success": true,
    "setup_completed": true
}
  • success Boolean

    Operation was a success or failure.

  • setup_completed boolean

    Indicator that signifies if the integration is setup for the user.

Connect integration via OAuth

Connect to a new integration via OAuth method.

Note: Integrate Unified APIs offer two connection methods for integrating with various tools: OAuth and Access Tokens. Not all tools support both methods. To determine which method(s) are supported for a specific tool, refer to the auth_meta attribute in the Get Integrations List API endpoint (/api/integrations) response.

GET /api/integrations/oauth

Request parameters

Request

curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" \
-X GET "https://integrate.browserstack.com/api/integrations/oauth?unique_user_id=steve@acme.com&integration_key=msteams"
  • unique_user_id* String

    Unique identifier for user e.g. email ID

  • integration_key* String

    Name of the intgeration tool. Allowed values are - jira, slack, msteams

  • as_bot boolean

    Indicator that allows you to identify the source/sender of a message as a bot. By using this field, you can attribute messages to a bot entity, distinguishing them from messages originating from user accounts.

Response attributes 200 application/json

Response

<TBA>
  • success Boolean

    Operation was a success or failure.

  • message String

    Success or failure message.

Connect integration via Access Token

Connect to a new integration via Access Token method.

Note: Integrate Unified APIs offer two connection methods for integrating with various tools: OAuth and Access Tokens. Not all tools support both methods. To determine which method(s) are supported for a specific tool, refer to the auth_meta attribute in the Get Integrations List API endpoint (/api/integrations) response.

GET /api/save-api-token

Request parameters

Request

curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" \
-X GET "https://integrate.browserstack.com/api/save-api-token?unique_user_id=steve@acme.com&integration_key=msteams"
  • unique_user_id* String

    Unique identifier for user e.g. email ID

  • integration_key* String

    Name of the integration tool. Allowed values are - jira, slack, msteams

Response attributes 200 application/json

Response

{
    "success": true,
    "message": "Saved credentials"
}
  • success Boolean

    Operation was a success or failure.

  • message String

    Success or failure message.

Disconnect integration

Disconnect an integration for a user/bot.

DELETE /api/integrations/disconnect

Request parameters

Request

curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" \
-X GET "https://integrate.browserstack.com/api/save-api-token?unique_user_id=steve@acme.com&integration_key=msteams"
  • unique_user_id* String

    Unique identifier for user e.g. email ID

  • integration_key* String

    Name of the integration tool. Allowed values are - jira, slack, msteams

  • as_bot boolean

    Indicator that allows you to identify the source/sender of a message as a bot. By using this field, you can attribute messages to a bot entity, distinguishing them from messages originating from user accounts.

Response attributes 200 application/json

Response

{
    "success": true,
    "message": "Disconnected successfully"
}
  • success Boolean

    Operation was a success or failure.

  • message String

    Success or failure message.

We're sorry to hear that. Please share your feedback so we can do better

Contact our Support team for immediate help while we work on improving our docs.

We're continuously improving our docs. We'd love to know what you liked






Thank you for your valuable feedback