agent-proxy

Base URL https://api.example.com
POST /api/v1/agent/proxy/aftership

AfterShip BYOK passthrough

Relay one whitelisted AfterShip call using the brand's stored key. * ``412`` — the brand has no active AfterShip BYOK credential configured. * ``400`` — the requested path is not on the forwardable allowlist. * ``503`` — our stored credential could not be decrypted, or AfterShip was unreachable (transport error). Never leaks the underlying detail.

Responses
  • 200Successful Response
  • 422Validation Error
POST /api/v1/agent/proxy/aftership
curl -X POST 'https://api.example.com/api/v1/agent/proxy/aftership' \
  -H 'Authorization: Bearer ' \
  -H 'Content-Type: application/json' \
  -d '{
  "method": "string",
  "path": "string",
  "json_body": {},
  "params": {}
}'
import httpx

resp = httpx.post(
    "https://api.example.com/api/v1/agent/proxy/aftership",
    headers={"Authorization": "Bearer ", "Content-Type": "application/json"},
    json={"method": "string", "path": "string", "json_body": {}, "params": {}},
)
resp.raise_for_status()
print(resp.json())
const resp = await fetch("https://api.example.com/api/v1/agent/proxy/aftership", {
  method: "POST",
  headers: { "Authorization": "Bearer ", "Content-Type": "application/json" },
  body: JSON.stringify({"method": "string", "path": "string", "json_body": {}, "params": {}})
});
const data = await resp.json();
console.log(data);
package main

import (
	"net/http"
	"strings"
)

func main() {
	body := strings.NewReader(`{"method": "string", "path": "string", "json_body": {}, "params": {}}`)
	req, _ := http.NewRequest("POST", "https://api.example.com/api/v1/agent/proxy/aftership", body)
	req.Header.Set("Authorization", "Bearer ")
	req.Header.Set("Content-Type", "application/json")
	resp, _ := http.DefaultClient.Do(req)
	defer resp.Body.Close()
}
Request body
{"path":"string","method":"string","params":{},"json_body":{}}
POST /api/v1/agent/proxy/twilio

Proxy Twilio

Responses
  • 200Successful Response
  • 422Validation Error
POST /api/v1/agent/proxy/twilio
curl -X POST 'https://api.example.com/api/v1/agent/proxy/twilio' \
  -H 'Authorization: Bearer ' \
  -H 'Content-Type: application/json' \
  -d '{
  "method": "string",
  "path": "string",
  "form_body": {},
  "params": {}
}'
import httpx

resp = httpx.post(
    "https://api.example.com/api/v1/agent/proxy/twilio",
    headers={"Authorization": "Bearer ", "Content-Type": "application/json"},
    json={"method": "string", "path": "string", "form_body": {}, "params": {}},
)
resp.raise_for_status()
print(resp.json())
const resp = await fetch("https://api.example.com/api/v1/agent/proxy/twilio", {
  method: "POST",
  headers: { "Authorization": "Bearer ", "Content-Type": "application/json" },
  body: JSON.stringify({"method": "string", "path": "string", "form_body": {}, "params": {}})
});
const data = await resp.json();
console.log(data);
package main

import (
	"net/http"
	"strings"
)

func main() {
	body := strings.NewReader(`{"method": "string", "path": "string", "form_body": {}, "params": {}}`)
	req, _ := http.NewRequest("POST", "https://api.example.com/api/v1/agent/proxy/twilio", body)
	req.Header.Set("Authorization", "Bearer ")
	req.Header.Set("Content-Type", "application/json")
	resp, _ := http.DefaultClient.Do(req)
	defer resp.Body.Close()
}
Request body
{"path":"string","method":"string","params":{},"form_body":{}}