Create a compliance portal

posthttps://api.expiryedge.com/v1/createPortal
admin60/minJede Methode
Anfrage
curl -X POST 'https://api.expiryedge.com/v1/createPortal' \
  -H "Authorization: Bearer $EXPIRYEDGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Northwind Dental - Vendor Compliance",
  "description": "Current licenses and insurance certificates for Northwind Dental.",
  "client_name": "Northwind Dental",
  "client_email": "priya@northwinddental.example",
  "expiry_ids": [
    "exp_4Tq9sLm2",
    "exp_8Jd3kQw1"
  ],
  "password": "harbor-2026",
  "link_expires_at": "2026-12-31T23:59:59.000Z"
}'
Antwort
{
  "success": true,
  "portal": {
    "id": "prt_5Vb1nK",
    "name": "Northwind Dental - Vendor Compliance",
    "description": "Current licenses and insurance certificates for Northwind Dental.",
    "client_name": "Northwind Dental",
    "client_email": "priya@northwinddental.example",
    "expiry_ids": [
      "exp_4Tq9sLm2",
      "exp_8Jd3kQw1"
    ],
    "link_expires_at": "2026-12-31T23:59:59.000Z",
    "organization_id": "org_northwind",
    "created_by": "u_71bXq",
    "access_token": "0f5c2a8e-6d4b-4e3a-9c1f-7b2d8e9a3c41",
    "has_password": true,
    "is_active": true,
    "view_count": 0,
    "last_viewed_at": null,
    "created_at": "2026-09-27T14:05:00.000Z",
    "updated_at": "2026-09-27T14:05:00.000Z"
  },
  "portalUrl": "https://app.expiryedge.com/portal/0f5c2a8e-6d4b-4e3a-9c1f-7b2d8e9a3c41"
}

Creates an active portal and returns its public URL. expiry_ids must all be in your organization (max 1000).

Body-Parameter

application/json
  • namestringerforderlich
    Required on create.
  • descriptionstring
  • client_namestring
  • client_emailstring
  • expiry_idsarray of string
    Expiry ids shown on the portal. Every id must belong to your organization (400 otherwise); duplicates are removed.
    max items: 1000
  • passwordstring
    Optional viewer password. On update, an empty string removes the password. Never returned.
  • link_expires_atstring | null
    After this time viewPortal returns 410.
    format: date-time

Rückgabe

201
Created.
  • successboolean
  • portalobject
    A shareable, read-only compliance portal. The password hash is never returned.
  • portalUrlstring
    format: uri

Fehler

400
The request is missing required fields or contains invalid values.
401
Missing, expired or invalid bearer token.
403
Authenticated, but your role or organization does not allow this action.
429
Too many requests for this endpoint from your IP. Wait Retry-After seconds.
500
Unexpected server error. Retry later; quote requestId to support.