Skip to content

Developer API Overview ​

The Developer API provides full management access to your PackEdge resources. Use it to build automations, integrate with your platform, or create custom dashboards.

Base URL: https://api.packedge.dev/v1

Who Uses This? ​

You (the developer) — from your backend systems. Never expose this API to end customers.

┌─────────────────────────────────────────────────────┐
│  Your Backend / Platform                            │
│  ┌─────────────────────────────────────────────┐   │
│  │  WooCommerce, Custom CRM, Automation        │   │
│  │  ┌─────────────────────────────────────┐   │   │
│  │  │  Authorization: Bearer pk_secret... │───┼───┼──► api.packedge.dev/v1/*
│  │  │  (YOUR secret, never shared)        │   │   │
│  │  └─────────────────────────────────────┘   │   │
│  └─────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────┘

Use Cases ​

  • E-commerce integration — Auto-create licenses on WooCommerce/EDD purchase
  • CRM sync — Keep customer data in sync with your CRM
  • Custom dashboard — Build your own analytics/management UI
  • Automation — Bulk license operations, scheduled tasks

Authentication ​

Pass your secret API key in the Authorization header:

bash
Authorization: Bearer pk_your_api_key

Creating an API Key ​

  1. Go to PackEdge Console
  2. Navigate to Settings → API Keys
  3. Click Create API Key
  4. Copy and store securely (shown once)

Security ​

  • Never expose API keys in client-side code, git repos, or logs
  • Keys have full account access
  • Rotate immediately if compromised

Endpoints ​

Products ​

  • List — Get all products
  • Get — Get single product
  • Create — Create new product
  • Update — Update product
  • Delete — Delete product

Licenses ​

  • List — Get licenses (with filters)
  • Get — Get single license
  • Create — Issue new license
  • Update — Modify license
  • Revoke — Revoke a license (cache-busting + webhook)
  • Bulk — Revoke / suspend / activate / extend many at once
  • Delete — Permanently delete license

Customers ​

Sites ​

Releases ​

  • List — A product's releases
  • Upload — Upload a release zip
  • Inspect — Preview a zip's readme metadata
  • Create — Create a release record
  • Update — Edit notes / compat / status
  • Set Stable — Promote or roll back the stable release
  • Download — Signed download URL
  • Delete — Delete a release

Plans ​

  • List — A product's pricing plans
  • Create — Create a plan
  • Update — Update a plan (reconciles Stripe/Polar)
  • Sync — Push a plan to the payment provider
  • Delete — Delete a plan

Webhooks ​

Payments ​

  • List — Get payments / orders
  • Get — One payment with linked records
  • Create Order — Record a manual order + license

Subscriptions ​

  • List — Get subscriptions
  • Create — Record a manual subscription
  • Cancel — Cancel a subscription
  • Bulk — Bulk cancel

Dashboard & Analytics ​

Events & Logs ​

Exports ​

  • CSV Exports — Licenses, customers, payments, sales, and per-product data as CSV

Feedback ​

  • List — Customer feedback
  • Stats — Sentiment / rating / tag breakdowns
  • Tags — Manage and assign feedback tags

Notifications ​

  • List — Notification feed + unread count
  • Mark Read — Mark one or all read

Tickets ​

Portal ​

Settings ​

Response Format ​

All responses are JSON (the only exception: CSV exports return text/csv):

json
{
  "data": { ... },
  "meta": {
    "page": 1,
    "perPage": 20,
    "total": 100,
    "totalPages": 5
  }
}

Error Handling ​

Errors return appropriate HTTP status codes with details:

json
{
  "error": "Product not found"
}
StatusMeaning
200Success
201Created
400Bad request
401Unauthorized — invalid or missing API key
404Not found
422Validation error
500Server error