Skip to main content
PUT
/
integrations
/
shipstation
ShipStation
curl --request PUT \
  --url https://staging-api.puppetvendors.com/integrations/shipstation \
  --header 'Content-Type: application/json' \
  --header 'x-access-token: <api-key>' \
  --data '
{
  "apiKey": "<string>",
  "apiSecret": "<string>"
}
'
import requests

url = "https://staging-api.puppetvendors.com/integrations/shipstation"

payload = {
"apiKey": "<string>",
"apiSecret": "<string>"
}
headers = {
"x-access-token": "<api-key>",
"Content-Type": "application/json"
}

response = requests.put(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PUT',
headers: {'x-access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({apiKey: '<string>', apiSecret: '<string>'})
};

fetch('https://staging-api.puppetvendors.com/integrations/shipstation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://staging-api.puppetvendors.com/integrations/shipstation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'apiKey' => '<string>',
'apiSecret' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-access-token: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://staging-api.puppetvendors.com/integrations/shipstation"

payload := strings.NewReader("{\n \"apiKey\": \"<string>\",\n \"apiSecret\": \"<string>\"\n}")

req, _ := http.NewRequest("PUT", url, payload)

req.Header.Add("x-access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.put("https://staging-api.puppetvendors.com/integrations/shipstation")
.header("x-access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"apiKey\": \"<string>\",\n \"apiSecret\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://staging-api.puppetvendors.com/integrations/shipstation")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["x-access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"apiKey\": \"<string>\",\n \"apiSecret\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
V2 Alpha — This endpoint is part of the V2 API preview. Breaking changes may occur.

Overview

Set or update the ShipStation API credentials for order sync and shipping automation.

Request Body

apiKey
string
required
ShipStation API key.
apiSecret
string
required
ShipStation API secret.

Response

200
{
  "success": true,
  "data": {
    "integration": {
      "type": "shipstation",
      "connected": true,
      "updatedAt": "2024-06-15T10:00:00.000Z"
    }
  }
}

Example

curl -X PUT https://staging-api.puppetvendors.com/integrations/shipstation \
  -H "Content-Type: application/json" \
  -H "x-access-token: YOUR_VENDOR_JWT_TOKEN" \
  -d '{
    "apiKey": "abc123def456",
    "apiSecret": "secret789xyz"
  }'