FLAM

Internal

16 Internal routes on the FLAM API: Approve one invitation applicant after human confirmation; Research one applicant's safe public storefront; Ask.

Base URL https://api.flam.fashion. Send Authorization: Bearer flam_sk_… on every call; a handful of routes are session-only and say so. How keys and roles work.

POST /api/internal/analyst/actions/invitations/{id}/approve

Approve one invitation applicant after human confirmation

Uses a separate action credential, resolves the email from the pending application row, issues the existing idempotent platform invitation, and appends an Eve audit record.

Parameters

InNameTypeRequiredNotes
pathidstring (uuid)yes

Request bodyapplication/json

FieldTypeRequiredNotes
reasonstringyes
{
  "reason": "string"
}

Responses

StatusMeaning
200The applicant was invited, or already held the same invitation.
401Missing or invalid action token
404Unknown application
409Application is no longer pending

200 returns:

{}

Call it

curl -X POST "https://api.flam.fashion/api/internal/analyst/actions/invitations/{id}/approve" \
  -H "Authorization: Bearer $FLAM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"reason":"string"}'

POST /api/internal/analyst/actions/invitations/{id}/research

Research one applicant's safe public storefront

Resolves the stored applicant email and link, rejects social/private hosts, fetches only the public homepage and Shopify products endpoint, and persists bounded findings.

Parameters

InNameTypeRequiredNotes
pathidstring (uuid)yes

Responses

StatusMeaning
200Bounded storefront research.
401Missing or invalid action token
404Unknown application

200 returns:

{}

Call it

curl -X POST "https://api.flam.fashion/api/internal/analyst/actions/invitations/{id}/research" \
  -H "Authorization: Bearer $FLAM_API_KEY"

POST /api/internal/analyst/actions/recordings/{id}/summarize

Ask PostHog to analyze one session replay

Triggers PostHog's asynchronous single-session summary workflow with a bounded focus area. It does not return snapshots or enable public sharing.

Parameters

InNameTypeRequiredNotes
pathidstringyes

Request bodyapplication/json

FieldTypeRequiredNotes
focusAreastringyes
{
  "focusArea": "string"
}

Responses

StatusMeaning
200PostHog accepted the replay for asynchronous analysis.
401Missing or invalid action token
503PostHog analysis is not configured

200 returns:

{}

Call it

curl -X POST "https://api.flam.fashion/api/internal/analyst/actions/recordings/{id}/summarize" \
  -H "Authorization: Bearer $FLAM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"focusArea":"string"}'

GET /api/internal/analyst/assets/{id}/preview

Read one bounded asset thumbnail for visual analysis

Streams only an existing generated thumbnail after bearer authentication. It never lists R2 keys, serves originals, or grants bucket access.

Parameters

InNameTypeRequiredNotes
pathidstring (uuid)yes

Responses

StatusMeaning
200Thumbnail bytes
401Missing or invalid analyst token
404Unknown asset, deleted asset, missing thumbnail, or missing object

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/assets/{id}/preview" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/experiments

Read bounded PostHog experiment state and aggregate results

Lists experiments or loads one experiment and runs its fixed aggregate metric queries. It cannot launch, pause, end, or ship a variant.

Parameters

InNameTypeRequiredNotes
querylimitintegerno
querystatus"all" | "complete" | "draft" | "exposure_frozen" | "paused" | "running" | "stopped"no
queryexperimentIdintegerno

Responses

StatusMeaning
200Experiment state and, for a selected experiment, aggregate results.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/experiments" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/failures

Read grouped recent failures for the FLAM analyst

Groups generation failures into stable signatures without returning job ids, user identities, prompts, or images.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno

Responses

StatusMeaning
200Grouped generation failure patterns.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/failures" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/feature-flags

Read bounded PostHog feature flag state

Returns flag status, rollout configuration, variants, and experiment links without mutation capability or person evaluations.

Parameters

InNameTypeRequiredNotes
querylimitintegerno
queryactive"true" | "false" | "all"no

Responses

StatusMeaning
200Feature flag state, or an explicit unavailable state.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/feature-flags" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/funnel

Read FLAM's fixed acquisition and activation funnel

Runs a fixed PostHog query over FLAM's typed event catalog. No caller-supplied SQL, event properties, or person identities are returned.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno

Responses

StatusMeaning
200Ordered funnel stages with event and actor counts.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/funnel" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/invitations

Read the bounded invitation applicant queue

Returns applicants, their intake answers, and the optional brand link for review. It cannot approve, decline, or modify an application.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno
querylimitintegerno
querystatus"pending" | "invited" | "declined" | "all"no

Responses

StatusMeaning
200Applicant queue.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/invitations" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/learnings

Read recent cross-house learnings for the FLAM analyst

Returns active house-level lessons, playbooks, outcome patterns, and image readings. Person memories and evidence identifiers are intentionally excluded.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno
querylimitintegerno

Responses

StatusMeaning
200Recent house-level learnings.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/learnings" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/product-usage

Read bounded PostHog product usage for the FLAM analyst

Runs fixed aggregate HogQL queries. The caller cannot supply SQL, and the response contains event names and counts rather than event properties or identities.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno

Responses

StatusMeaning
200Aggregate product analytics, or an explicit unavailable state.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/product-usage" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/recordings

Read bounded PostHog session replay metadata

Returns replay activity, error, URL, and summary metadata plus links for human review. It excludes person identity and raw recording payloads.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno
querylimitintegerno

Responses

StatusMeaning
200Recent session replay metadata, or an explicit unavailable state.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/recordings" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/recordings/{id}/analysis

Read PostHog's stored AI analysis of one session replay

Returns a bounded, identity-minimized PostHog replay summary and an authenticated human review link. It never returns raw snapshots or creates a public sharing link.

Parameters

InNameTypeRequiredNotes
pathidstringyes

Responses

StatusMeaning
200Stored analysis, or an explicit not-yet-generated state.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/recordings/{id}/analysis" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/rejections

Read explicit generation rejection evidence

Returns explicit regenerate/delete gestures and low ratings with their judge context. Silent frames are never counted as rejection.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno
querylimitintegerno

Responses

StatusMeaning
200Recent explicit rejection evidence.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/rejections" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/snapshot

Read a bounded platform snapshot for the FLAM analyst

Read-only, bearer-gated aggregate operational, commercial, memory, and learning health. It returns no prompts, images, emails, person memories, or mutation capability.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno

Responses

StatusMeaning
200Aggregate platform snapshot.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/snapshot" \
  -H "Authorization: Bearer $FLAM_API_KEY"

GET /api/internal/analyst/support

Read bounded PostHog support tickets

Returns recent support ticket content for the operating analyst. Ticket access is bounded and bearer-gated; replies and status changes are not exposed here.

Parameters

InNameTypeRequiredNotes
queryhoursintegerno
querylimitintegerno
queryticketIdstringno
querystatus"new" | "open" | "pending" | "on_hold" | "resolved"no

Responses

StatusMeaning
200Recent tickets or one ticket thread.
401Missing or invalid analyst token

200 returns:

{}

Call it

curl -X GET "https://api.flam.fashion/api/internal/analyst/support" \
  -H "Authorization: Bearer $FLAM_API_KEY"