Strava
Strava is a fitness tracking social network for runners and cyclists, exposing athlete profiles, activities, segments, and clubs through its REST API. Nexla connects to the Strava API to ingest activity and athlete data or to push updates and new activities back to Strava.
Power end-to-end data operations for your Strava API with Nexla. Our bi-directional Strava connector is purpose-built for Strava, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Strava or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Strava workflows fast, secure, and fully governed.
Features
Type: API
- Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
- Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
- API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
- Request optimization with intelligent batching, retry, and caching to minimize API calls and costs
Prerequisites
Strava authenticates API requests using OAuth 2.0. Before creating a Strava credential in Nexla, you need to register an API application in your Strava account to obtain a Client ID and Client Secret, then grant Nexla access through the three-legged OAuth authorization flow.
To register a Strava API application and obtain your credentials, follow these steps:
-
Sign in to your Strava account at strava.com.
-
Navigate to your API application settings at strava.com/settings/api.
-
Complete the application form, providing an application name, a website, and an Authorization Callback Domain. The callback domain must be set to a value that permits Nexla's OAuth redirect to complete.
-
After the application is created, note the Client ID and Client Secret shown on the API settings page. The Client Secret is sensitive and should be kept confidential.
-
Decide which OAuth scopes your integration requires. Strava supports scopes such as
read,read_all,activity:read,activity:read_all,activity:write,profile:read_all, andprofile:write. Read scopes are needed to ingest athlete and activity data, and write scopes are needed to update athletes, star segments, or create and upload activities.
When you connect in Nexla, Strava redirects you to authorize the application, and the returned authorization code is exchanged for access and refresh tokens automatically. For details on the authorization flow, token exchange, and scopes, see the Strava API Authentication documentation and the Strava API Reference.
Authenticate
Credentials required
An OAuth authentication flow where users must authorize an application to access their data
| Field | Required | Secret | Description |
|---|---|---|---|
| Authorization URL | No | No | The URL endpoint where users authenticate and authorize access |
| Client ID | Yes | Yes | A unique public identifier assigned to your application |
| Access Scope | No | No | A space-separated list of permissions your application requests |
| Token URL | No | No | The URL endpoint where authorization codes are exchanged for access tokens |
| Client Secret | No | Yes | A private key used to authenticate your application when requesting tokens |
Create a credential in Nexla
-
After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.
-
Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.
-
Confirm the Authorization URL and Token URL fields. Strava uses
https://www.strava.com/oauth/authorizefor authorization andhttps://www.strava.com/oauth/tokenfor token exchange. -
Enter the Client ID and Client Secret from your Strava API application, and set the Access Scope to the space-separated list of permissions your integration requires.
-
Click the Authenticate button and complete the Strava authorization prompt to grant Nexla access. Strava will redirect back to Nexla and the access and refresh tokens will be stored with the credential.
If your Client Secret is compromised, revoke or reset it from your Strava API application settings and update the credential in Nexla with the new value.
For detailed information about OAuth scopes, token exchange, and available endpoints, see the Strava API Authentication documentation and the Strava API Reference.
-
Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.
Use as a data source
To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Strava connector tile, then select the credential that will be used to connect to Strava, and click Next; or, create a new Strava credential for use in this flow.
Endpoint templates
Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Strava endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.
Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.
Manual configuration
Strava data sources can also be manually configured to ingest data from any valid Strava API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.
Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Strava data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.
Use as a destination
Click the + icon on the Nexset that will be sent to the Strava destination, and select the Send to Destination option from the menu. Select the Strava connector from the list of available destination connectors, then select the credential that will be used to connect to Strava, and click Next; or, create a new Strava credential for use in this flow.
Endpoint templates
Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Strava endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.
Manual configuration
Strava destinations can also be manually configured to send data to any valid Strava API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.
Strava write endpoints expect specific request formats and scopes. Update and star operations require the ID of the object to be modified, and write scopes such as activity:write or profile:write must be granted on the credential.
Save & activate
Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Strava endpoint, open the destination resource menu, and select Activate.
The Nexset data will not be sent to the Strava endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.