Skip to main content

Alpaca Destination

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a FlexFlow data flow that sends data to an Alpaca location.
alpaca_api.png

Alpaca

  1. Click the + icon on the Nexset that will be sent to the Alpaca destination, and select the Send to Destination option from the menu.

  2. Select the Alpaca connector from the list of available destination connectors. Then, select the credential that will be used to connect to the Alpaca account, and click Next; or, create a new Alpaca credential for use in this flow.

  3. Alpaca destinations can be manually configured to send data to any valid Alpaca REST API endpoint. This is useful for programmatically placing orders, cancelling orders, updating watchlists, or interacting with any other writable Alpaca endpoint.

    You can also configure Nexla to automatically send the response received from the Alpaca API after each call to a new Nexla webhook data source, which allows you to capture and process order confirmations, error messages, or other response data returned by Alpaca.

    First, select the API method that will be used for calls to the Alpaca API from the Method pulldown menu. Common methods for Alpaca write operations include:

    • POST: For creating new resources such as orders (/v2/orders), watchlist entries, or other objects
    • PATCH: For partially updating existing resources such as replacing an open order
    • DELETE: For cancelling orders or removing watchlist entries

Data Format

  1. Select the format in which the Nexset data will be sent to the Alpaca API from the Content Format pulldown menu. Nexla will automatically convert the data to the selected format for each API call.

    For most Alpaca write endpoints, select JSON, as the Alpaca REST API accepts and returns data in JSON format.

API Endpoint URL

  1. Enter the URL of the Alpaca API endpoint to which you want to send the Nexset data in the URL field.

    Alpaca uses two separate base URL domains depending on your environment:

    • Live trading: https://api.alpaca.markets/v2/ for live account operations
    • Paper trading (simulated): https://paper-api.alpaca.markets/v2/ for all paper trading operations

    Common destination endpoint examples include:

    • https://api.alpaca.markets/v2/orders — Submit new stock, options, or crypto orders (POST)
    • https://paper-api.alpaca.markets/v2/orders — Submit orders in the paper trading environment (POST)
    • https://api.alpaca.markets/v2/orders/{'{order_id}'} — Replace or cancel an existing order (PATCH or DELETE)

Ensure that the API key in your Alpaca credential corresponds to the correct environment. Live trading keys will not work with the paper trading base URL and vice versa. For complete endpoint reference documentation, see the Alpaca Trading API documentation.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2).

    You do not need to include the APCA-API-KEY-ID or APCA-API-SECRET-KEY authentication headers here. These are injected automatically by Nexla using your saved Alpaca credential.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Alpaca destination, select the attributes from the Exclude Attributes pulldown menu.

  • Any number of attributes can be selected for exclusion, and all excluded attributes will be shown in the field. To remove an attribute from the list, click the X icon next to the attribute name.

When submitting orders to the Alpaca API, include only the fields required by the target endpoint. The Alpaca Orders API requires fields such as symbol, qty or notional, side, type, and time_in_force. Use Exclude Attributes to remove any fields in your Nexset that should not be sent to Alpaca. For a complete list of required and optional order fields, refer to the Alpaca Create an Order documentation.

Record Batching

Optional
  1. If records should be sent to this destination in batched API calls, check the box next to Would you like to batch your records together? to enable record batching.

  2. Enter the maximum number of records that should be batched together in a single API call in the Batch Size field. By default, this value is set to 100.

  3. Select the algorithm that will be used to group records into batches from the Grouping Algorithm pulldown menu. The sample request shown in the panel on the right will be updated to reflect the current batching settings.

Most Alpaca write endpoints (such as the Orders API) accept a single object per request rather than arrays. For these endpoints, set the Batch Size to 1 to ensure each record is sent as a separate API call. Check the Alpaca API documentation for each endpoint to confirm whether batch submission is supported.

Response Webhook

Optional

Nexla can automatically send the response received from the Alpaca API after each call to a new Nexla webhook data source. This option allows you to keep track of the status of each API call and any additional information returned after each call—for example, capturing order IDs, order status, filled quantities, and timestamps returned by Alpaca after each order submission.

  • To enable this option, check the box next to Would you like to process the API response as a Nexla Webhook source?.

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the Alpaca API endpoint based on the current settings are shown in the Sample Payload panel on the right. These samples can be referenced to ensure that the destination and request settings are correctly configured.

  • Click on a sample request payload to expand it and view the complete payload content.

  • Sample payloads are automatically updated with each setting change, making it easy to verify that changes achieve the desired effect.

Endpoint Testing

After all endpoint settings have been configured, Nexla can send a test payload to the Alpaca API to ensure that the destination is configured correctly.

  1. To send a test payload, select the Test button at the top of the Sample Payload panel, and click on a listed sample payload to expand it.

  2. If any modifications to the sample payload are needed, make the necessary changes directly within the sample window.

  3. Click the Send Test Data button at the top of a sample payload to send the test payload to the Alpaca API using the current settings.

Important

When testing against a live trading endpoint, test payloads may result in actual orders being placed in your Alpaca account. Use the paper trading endpoint (https://paper-api.alpaca.markets/v2/orders) for testing to avoid unintended trades in a live account.

Save & Activate the Destination

  • 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 Alpaca API, open the destination resource menu, and select Activate.

    The Nexset data will not be sent to Alpaca until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.