Skip to content
Back to skills

Flexport Deploy Integration

ASecurity

'Deploy Flexport logistics integrations to Vercel, Fly.io, and Cloud

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 11, 2026
devopstypescriptgobashnextjsapi

Works with

  • claude code
  • api

Security analysis

A100/100

Scanned November 11, 2026

npx -y skills add pauldx/claudifying --skill flexport-deploy-integration --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Flexport Deploy Integration?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Flexport Deploy Integration
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/pauldx-flexport-deploy-integration/badge)](https://www.skillsdirectory.com/skills/pauldx-flexport-deploy-integration)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: flexport-deploy-integration
description: 'Deploy Flexport logistics integrations to Vercel, Fly.io, and Cloud
  Run.

  Use when deploying shipment tracking dashboards, webhook receivers,

  or supply chain automation services to production infrastructure.

  Trigger: "deploy flexport", "flexport hosting", "flexport Cloud Run".

  '
allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(fly:*), Bash(gcloud:*), Grep
version: 1.0.0
license: MIT
tags:
- saas
- logistics
- flexport
compatibility: Designed for Claude Code
---
# Flexport Deploy Integration

## Overview

Deploy Flexport-powered applications to production. Webhook receivers need always-on hosting. Dashboards can use serverless. Background sync workers suit containers.

## Instructions

### Option A: Vercel (Dashboard + Webhook Routes)

```typescript
// app/api/webhooks/flexport/route.ts (Next.js App Router)
import crypto from 'crypto';

export async function POST(req: Request) {
  const body = await req.text();
  const sig = req.headers.get('x-hub-signature') || '';
  const expected = 'sha256=' + crypto.createHmac('sha256', process.env.FLEXPORT_WEBHOOK_SECRET!)
    .update(body).digest('hex');
  if (!crypto.timingSafeEqual(Buffer.from(sig), Buffer.from(expected))) {
    return new Response('Invalid signature', { status: 401 });
  }
  const event = JSON.parse(body);
  // Process milestone, booking, invoice events
  return new Response('OK');
}
```

### Option B: Fly.io (Always-On Webhook Receiver)

```toml
# fly.toml
app = "flexport-webhooks"
primary_region = "iad"
[http_service]
  internal_port = 3000
  force_https = true
  min_machines_running = 1
```

```bash
fly secrets set FLEXPORT_API_KEY="key" FLEXPORT_WEBHOOK_SECRET="secret"
fly deploy
```

### Option C: Cloud Run (Shipment Sync Worker)

```bash
gcloud run deploy flexport-sync \
  --source . --region us-central1 \
  --set-secrets "FLEXPORT_API_KEY=flexport-key:latest" \
  --min-instances 1 --timeout 300
```

## Post-Deploy Verification

```bash
curl -X POST https://your-app.fly.dev/webhooks/flexport \
  -H "X-Hub-Signature: sha256=invalid" -d '{"type":"test"}'
# Expected: 401 (signature verification working)
```

## Resources

- [Flexport Webhooks API](https://apidocs.flexport.com/v2/tag/Webhook-Endpoints/)
- [Fly.io Docs](https://fly.io/docs/)
- [Cloud Run Docs](https://cloud.google.com/run/docs)

## Next Steps

For webhook event handling, see `flexport-webhooks-events`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in devops →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.