Portal Community
Phase 3 — PENDING This feature is planned but not yet implemented.

Creating a Publisher Profile

POST /api/marketplace/publishers
Authorization: Bearer {token}
{
  "displayName":  "Acme Corp Engineering",
  "slug":         "acme-corp",            // Unique URL identifier
  "website":      "https://acmecorp.com",
  "contactEmail": "dev@acmecorp.com",
  "description":  "Enterprise workflow packages for HR, Finance, and Operations.",
  "logoUrl":      "https://acmecorp.com/logo.png"
}

// Response:
{
  "publisherId":        "pub-a1b2c3",
  "status":             "PendingVerification",
  "verificationMethod": "DNS",
  "verificationRecord": {
    "type":  "TXT",
    "host":  "@",
    "value": "bizfirstai-verify=a1b2c3d4e5f6"
  },
  "verificationExpiresAt": "2026-06-01T00:00:00Z"
}

Domain Verification

To earn a verified publisher badge, you must prove ownership of your organization's domain. There are two verification methods:

MethodHow It WorksTime to Verify
DNS TXT RecordAdd a TXT record to your domain with the provided verification token. BizFirstAI checks DNS propagation.Up to 48 hours (DNS TTL)
File UploadUpload a bizfirstai-verify.txt file to https://yourdomain.com/.well-known/ containing the verification token.Immediate after upload

Triggering Verification Check

POST /api/marketplace/publishers/{publisherId}/verify

// Success:
{
  "publisherId": "pub-a1b2c3",
  "status":      "Verified",
  "verifiedAt":  "2026-05-25T10:00:00Z",
  "domain":      "acmecorp.com"
}

// Still pending:
{
  "status":  "PendingVerification",
  "message": "DNS TXT record not yet detected. DNS changes can take up to 48 hours to propagate."
}

Publisher Profile Fields

FieldRequiredConstraintsNotes
displayNameYesMax 100 charsShown on all package listings
slugYesLowercase, alphanumeric + hyphens, max 50 chars, globally uniqueUsed in marketplace URLs
websiteYes (for Certified)Valid HTTPS URLMust match verified domain
contactEmailYesValid emailUsed for review correspondence
descriptionNoMax 500 charsShown on publisher profile page
logoUrlNoHTTPS URL, image must be 128×128 or 256×256 pxShown next to package listings

Publisher Status Values

StatusCan Submit Packages?Description
PendingVerificationNoAwaiting domain verification
VerifiedYesDomain verified — can submit Community packages
SuspendedNoAccount suspended — contact support
Unverified Publishers Even without domain verification, your publisher profile is created in PendingVerification state. You can prepare packages but cannot submit them until verification completes.

Getting Your Publisher Profile

GET /api/marketplace/publishers/{publisherId}

{
  "publisherId":   "pub-a1b2c3",
  "displayName":   "Acme Corp Engineering",
  "slug":          "acme-corp",
  "status":        "Verified",
  "domain":        "acmecorp.com",
  "verifiedAt":    "2026-05-25T10:00:00Z",
  "packageCount":  12,
  "totalInstalls": 847,
  "averageRating": 4.7
}