@fias/arche-sdk 1.8.1 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/types.d.ts CHANGED
@@ -1,7 +1,14 @@
1
1
  /**
2
2
  * Permission scopes that plugins can request in their manifest.
3
+ *
4
+ * Re-exported from `./generated/permissions`, which is produced by
5
+ * `pnpm generate:sdk-types` from `@fias/db-types`'s canonical list. The
6
+ * `sdk-permissions-match-db-types.test.ts` architecture trip-wire ensures
7
+ * the generated file stays in lockstep.
3
8
  */
4
- export type PluginPermission = 'user:profile:read' | 'entities:invoke' | 'storage:sandbox' | 'theme:read' | 'data:store' | 'store:purchase';
9
+ import type { PluginPermission } from './generated/permissions';
10
+ export type { PluginPermission };
11
+ export { VALID_PLUGIN_PERMISSIONS, isValidPluginPermission } from './generated/permissions';
5
12
  /**
6
13
  * User profile data available via useFiasUser() hook.
7
14
  */
@@ -99,18 +106,49 @@ export interface EntityInvocationParams {
99
106
  * Image generation parameters for useImageGeneration() hook.
100
107
  */
101
108
  export interface ImageGenerationParams {
102
- /** Entity ID of an image model (e.g., ent_modeldef_dalle3) */
109
+ /** Entity ID of an image model (e.g., ent_modeldef_gpt_image_1_5) */
103
110
  entityId: string;
104
111
  /** Text prompt describing the image to generate */
105
112
  prompt: string;
106
113
  /** Image size/aspect ratio (model-specific, e.g., '1024x1024', '16:9') */
107
114
  size?: string;
108
- /** Quality level (model-specific, e.g., 'standard', 'hd') */
115
+ /** Quality level (model-specific, e.g., 'low', 'medium', 'high') */
109
116
  quality?: string;
110
- /** Artistic style (model-specific, e.g., 'vivid', 'natural') */
117
+ /** Artistic style (model-specific, e.g., 'realistic_image', 'digital_illustration') */
111
118
  style?: string;
112
119
  /** Additional provider-specific parameters */
113
120
  providerParams?: Record<string, unknown>;
121
+ /**
122
+ * Optional reference image for image-to-image generation. Provide ONE of:
123
+ *
124
+ * - `{ archeAssetId }` — a published asset from this arche's library
125
+ * (uses the `assets:read` permission scope to read bytes server-side).
126
+ * - `{ fileId }` — a Vault Document this arche owns (uses
127
+ * `vault:documents:read` to read bytes server-side). For images
128
+ * previously generated via `useImageGeneration`, pass `result.fileId`.
129
+ * - `{ dataUrl }` — a `data:` URL with base64-encoded PNG/JPEG/WEBP
130
+ * bytes. Use only when the source isn't already in the asset library
131
+ * or vault; subject to a payload-size cap (~8 MB).
132
+ *
133
+ * The selected image model must support reference images (e.g. the
134
+ * Stability AI entities `ent_modeldef_stable_img_core`,
135
+ * `ent_modeldef_stable_img_ultra`, `ent_modeldef_sd3_large`). Models
136
+ * that don't support it return INVALID_PARAMS rather than silently
137
+ * ignoring the reference.
138
+ */
139
+ referenceImage?: {
140
+ archeAssetId: string;
141
+ } | {
142
+ fileId: string;
143
+ } | {
144
+ dataUrl: string;
145
+ };
146
+ /**
147
+ * How closely the output should follow the reference image. 0 = ignore
148
+ * the reference, 1 = copy it almost exactly. Default 0.5 when a
149
+ * `referenceImage` is provided.
150
+ */
151
+ referenceStrength?: number;
114
152
  }
115
153
  /**
116
154
  * Image generation result.
@@ -138,6 +176,73 @@ export interface ImageGenerationApi {
138
176
  result: ImageGenerationResult | null;
139
177
  error: Error | null;
140
178
  }
179
+ /**
180
+ * Audio sub-type discriminator. v1 ships music only; future entries
181
+ * (`'speech'`, `'sfx'`, ...) extend the unions on `AudioGenerationParams`,
182
+ * `AudioGenerationResult`, and the bridge dispatch in lockstep.
183
+ */
184
+ export type AudioType = 'music';
185
+ /**
186
+ * Audio generation parameters for useAudioGeneration() hook.
187
+ *
188
+ * Discriminated union by `audioType` so future sub-types can carry their
189
+ * own parameter shape (e.g., speech adds voice/style, SFX adds duration
190
+ * range) without breaking music callers.
191
+ */
192
+ export type AudioGenerationParams = MusicAudioGenerationParams;
193
+ /** Parameters for music audio generation (Lyria today). */
194
+ export interface MusicAudioGenerationParams {
195
+ audioType: 'music';
196
+ /** Entity ID of a music model (e.g., ent_modeldef_lyria2) OR a PluginAudioConfig configId. */
197
+ entityId: string;
198
+ /** Text prompt describing the music to generate. */
199
+ prompt: string;
200
+ /** Optional negative prompt — sounds or styles to avoid. */
201
+ negativePrompt?: string;
202
+ /** Optional seed for deterministic regeneration. */
203
+ seed?: number;
204
+ /** Number of clips to generate (1–4 for Lyria 2). */
205
+ sampleCount?: number;
206
+ /** Requested duration in seconds (Lyria 2 emits a fixed 30 s clip). */
207
+ durationSeconds?: number;
208
+ }
209
+ /**
210
+ * Audio generation result. Always returns an array of clips so multi-clip
211
+ * generations (sampleCount > 1) and single-clip generations share one shape.
212
+ */
213
+ export interface AudioGenerationResult {
214
+ /** Audio sub-type discriminator matching the request. */
215
+ audioType: AudioType;
216
+ /** Generated audio clips. */
217
+ clips: Array<{
218
+ /** Same-origin signed proxy URL for `<audio src>`. Expires after ~1 hour. */
219
+ audioUrl: string;
220
+ /** S3 reference for the clip (use for persistent storage / re-signing). */
221
+ audioRef: string;
222
+ /** User-file record id (best-effort; undefined if the write failed). */
223
+ fileId?: string;
224
+ /** MIME type — `audio/wav` today. */
225
+ mimeType: string;
226
+ sampleRate: number;
227
+ durationSeconds: number;
228
+ sizeBytes: number;
229
+ }>;
230
+ /** Sum of `clips[].durationSeconds`. */
231
+ totalDurationSeconds: number;
232
+ /** Provider that generated the audio. */
233
+ provider: string;
234
+ /** Provider-side model name. */
235
+ model: string;
236
+ }
237
+ /**
238
+ * Audio generation API available via useAudioGeneration() hook.
239
+ */
240
+ export interface AudioGenerationApi {
241
+ generate: (params: AudioGenerationParams) => Promise<AudioGenerationResult>;
242
+ isLoading: boolean;
243
+ result: AudioGenerationResult | null;
244
+ error: Error | null;
245
+ }
141
246
  /**
142
247
  * Navigation API available via useFiasNavigation() hook.
143
248
  */
@@ -145,10 +250,160 @@ export interface FiasNavigationApi {
145
250
  navigateTo: (path: string) => void;
146
251
  currentPath: string;
147
252
  }
253
+ /**
254
+ * A document owned by the calling arche in the user's Vault.
255
+ *
256
+ * Documents written via useVaultDocuments() (or generated via
257
+ * useImageGeneration()) are scoped by `source_arche_id`. Listing only
258
+ * returns documents the calling arche created — documents from other
259
+ * arches are never visible.
260
+ */
261
+ export interface VaultDocumentSummary {
262
+ documentId: string;
263
+ name: string;
264
+ mimeType: string;
265
+ sizeBytes: number;
266
+ /** ISO 8601 timestamp. */
267
+ createdAt: string;
268
+ /** ISO 8601 timestamp. */
269
+ updatedAt: string;
270
+ /** Free-form tags, set by the arche on write/update. */
271
+ tags: string[];
272
+ /**
273
+ * Folder the document lives in. The platform places arche-owned
274
+ * writes into `/My-Fias/Arches/<archeId>/` by default; users can move
275
+ * them via the My Data UI without breaking arche access (listing is
276
+ * scoped by `source_arche_id`, not folder).
277
+ */
278
+ folderId: string | null;
279
+ }
280
+ export interface VaultDocumentsListOptions {
281
+ search?: string;
282
+ limit?: number;
283
+ cursor?: string;
284
+ }
285
+ export interface VaultDocumentsListResult {
286
+ documents: VaultDocumentSummary[];
287
+ nextCursor: string | null;
288
+ }
289
+ export interface VaultDocumentDownloadUrl {
290
+ url: string;
291
+ /** Epoch milliseconds when the presigned URL expires. */
292
+ expiresAt: number;
293
+ /** MIME type of the document, or null when unset on the row. */
294
+ contentType: string | null;
295
+ }
296
+ export interface VaultDocumentWriteParams {
297
+ /**
298
+ * Document name (no leading slash). Must be unique per arche per
299
+ * user; same-name writes create a new row with the same name (no
300
+ * implicit overwrite — call `delete` first if that's what you want).
301
+ */
302
+ name: string;
303
+ /** UTF-8 string content. Use for JSON, text, or base64-encoded binaries. */
304
+ content: string;
305
+ /** MIME type. Defaults to `text/plain` if not supplied. */
306
+ contentType?: string;
307
+ /** Free-form tags. */
308
+ tags?: string[];
309
+ }
310
+ export interface VaultDocumentUpdateParams {
311
+ /** New document name. */
312
+ name?: string;
313
+ /** Replaces the tag list. */
314
+ tags?: string[];
315
+ }
316
+ /**
317
+ * Vault Documents API available via useVaultDocuments() hook.
318
+ *
319
+ * Provides access to the user's Vault Documents, scoped to documents
320
+ * this arche owns (via `source_arche_id`). Documents are visible to
321
+ * the user in My Data under `/My-Fias/Arches/<archeId>/`, but the SDK
322
+ * lists by ownership — moving a document in My Data does not hide it
323
+ * from the arche.
324
+ *
325
+ * Permissions:
326
+ * - `vault:documents:read` — list, read, getDownloadUrl
327
+ * - `vault:documents:write` — write, update, delete
328
+ *
329
+ * Note: images returned from useImageGeneration() are auto-saved into
330
+ * the arche's folder and the result includes a `documentId`. Pass that
331
+ * documentId here to refresh the presigned URL after the original ~1h
332
+ * TTL expires.
333
+ */
334
+ export interface VaultDocumentsApi {
335
+ /** List documents owned by this arche. Paginated. */
336
+ list: (options?: VaultDocumentsListOptions) => Promise<VaultDocumentsListResult>;
337
+ /** Read the UTF-8 content of a document. */
338
+ read: (documentId: string) => Promise<{
339
+ content: string;
340
+ contentType: string;
341
+ }>;
342
+ /**
343
+ * Get a fresh presigned download URL for a documentId. The result is
344
+ * cached client-side and refreshed automatically before expiry.
345
+ */
346
+ getDownloadUrl: (documentId: string) => Promise<VaultDocumentDownloadUrl>;
347
+ /** Create a document. Returns the documentId. */
348
+ write: (params: VaultDocumentWriteParams) => Promise<{
349
+ documentId: string;
350
+ }>;
351
+ /** Rename or retag a document. */
352
+ update: (documentId: string, params: VaultDocumentUpdateParams) => Promise<void>;
353
+ /** Soft-delete a document (recoverable from Trash in My Data). */
354
+ delete: (documentId: string) => Promise<void>;
355
+ }
356
+ /**
357
+ * One entry from the arche's published asset manifest. Surfaced to
358
+ * plugins via `useArcheAssets().list()`.
359
+ *
360
+ * `signedUrl` is a short-lived (~5 min default) URL that loads through
361
+ * api.fias.ai's signed proxy. Plugins should use `getUrl(assetId)` to
362
+ * refresh after expiry rather than caching URLs across sessions.
363
+ */
364
+ export interface ArcheAsset {
365
+ assetId: string;
366
+ signedUrl: string;
367
+ /** Unix-seconds expiry of `signedUrl`. */
368
+ expiresAt: number;
369
+ contentType: 'image/png' | 'image/jpeg' | 'image/webp';
370
+ width: number;
371
+ height: number;
372
+ sizeBytes: number;
373
+ /** Display name set by the contributor. May be null if not provided. */
374
+ name: string | null;
375
+ /** Alt text — recommended for accessibility-aware rendering. */
376
+ altText: string | null;
377
+ /** Tags set by the contributor for filtering. Empty array if none. */
378
+ tags: string[];
379
+ }
380
+ export interface ArcheAssetsListOptions {
381
+ cursor?: string;
382
+ /** 1..100. Default 50. */
383
+ limit?: number;
384
+ }
385
+ export interface ArcheAssetsListResult {
386
+ entries: ArcheAsset[];
387
+ nextCursor: string | null;
388
+ }
389
+ /**
390
+ * Asset library API. Permission: `assets:read`.
391
+ *
392
+ * The library is a contributor-curated set of images pinned to this
393
+ * arche's published version — once the contributor publishes, the set
394
+ * is immutable for that version's runtime. New uploads on the
395
+ * contributor's side affect future published versions only.
396
+ */
397
+ export interface ArcheAssetsApi {
398
+ /** Page through the published asset manifest. */
399
+ list: (options?: ArcheAssetsListOptions) => Promise<ArcheAssetsListResult>;
400
+ /** Refresh the signed URL for a single asset. */
401
+ getUrl: (assetId: string) => Promise<ArcheAsset>;
402
+ }
148
403
  /**
149
404
  * Message types sent from the plugin iframe to the parent frame.
150
405
  */
151
- export type PluginToHostMessageType = 'ready' | 'resize' | 'toast' | 'get_user' | 'get_theme' | 'storage_read' | 'storage_write' | 'storage_list' | 'storage_delete' | 'entity_invoke' | 'image_generate' | 'navigate' | 'data_create_collection' | 'data_list_collections' | 'data_delete_collection' | 'data_put' | 'data_get' | 'data_query' | 'data_delete' | 'store_get_products' | 'store_purchase' | 'store_get_entitlements' | 'store_get_purchase_history' | 'store_restore' | 'store_cancel_subscription';
406
+ export type PluginToHostMessageType = 'ready' | 'resize' | 'toast' | 'get_user' | 'get_theme' | 'storage_read' | 'storage_write' | 'storage_list' | 'storage_delete' | 'entity_invoke' | 'image_generate' | 'audio_generate' | 'surface_invoke' | 'navigate' | 'data_create_collection' | 'data_list_collections' | 'data_delete_collection' | 'data_put' | 'data_get' | 'data_query' | 'data_delete' | 'store_get_products' | 'store_purchase' | 'store_get_entitlements' | 'store_get_purchase_history' | 'store_restore' | 'store_cancel_subscription' | 'vault_documents_list' | 'vault_documents_read' | 'vault_documents_download_url' | 'vault_documents_write' | 'vault_documents_update' | 'vault_documents_delete' | 'arche_assets_list' | 'arche_assets_get_url';
152
407
  /**
153
408
  * Step navigation API available via useStepNavigation() hook.
154
409
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -1,3 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isValidPluginPermission = exports.VALID_PLUGIN_PERMISSIONS = void 0;
4
+ var permissions_1 = require("./generated/permissions");
5
+ Object.defineProperty(exports, "VALID_PLUGIN_PERMISSIONS", { enumerable: true, get: function () { return permissions_1.VALID_PLUGIN_PERMISSIONS; } });
6
+ Object.defineProperty(exports, "isValidPluginPermission", { enumerable: true, get: function () { return permissions_1.isValidPluginPermission; } });
3
7
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAUA,uDAA4F;AAAnF,uHAAA,wBAAwB,OAAA;AAAE,sHAAA,uBAAuB,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fias/arche-sdk",
3
- "version": "1.8.1",
3
+ "version": "1.11.0",
4
4
  "description": "SDK for building FIAS platform plugin arches",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -23,14 +23,6 @@
23
23
  "publishConfig": {
24
24
  "access": "public"
25
25
  },
26
- "scripts": {
27
- "build": "tsc && esbuild src/index.ts --bundle --format=esm --outfile=dist/index.mjs --external:react --external:react-dom --jsx=automatic --target=es2020",
28
- "clean": "rm -rf dist",
29
- "watch": "tsc -w",
30
- "typecheck": "tsc --noEmit",
31
- "test": "jest",
32
- "test:coverage": "jest --coverage"
33
- },
34
26
  "keywords": [
35
27
  "fias",
36
28
  "plugin",
@@ -44,15 +36,23 @@
44
36
  },
45
37
  "devDependencies": {
46
38
  "@types/jest": "^30.0.0",
47
- "@types/node": "^25.5.0",
39
+ "@types/node": "^25.6.0",
48
40
  "@types/react": "^19.2.14",
49
- "@types/react-dom": "^19.0.0",
50
- "react-dom": "^19.0.0",
41
+ "@types/react-dom": "^19.2.3",
51
42
  "daisyui": "^5.5.19",
52
43
  "esbuild": "^0.24.2",
53
44
  "jest": "^29.7.0",
54
- "react": "^19.0.0",
55
- "ts-jest": "^29.1.1",
56
- "typescript": "^5.3.3"
45
+ "react": "^19.2.5",
46
+ "react-dom": "^19.2.5",
47
+ "ts-jest": "^29.4.9",
48
+ "typescript": "^5.9.3"
49
+ },
50
+ "scripts": {
51
+ "build": "tsc && esbuild src/index.ts --bundle --format=esm --outfile=dist/index.mjs --external:react --external:react-dom --jsx=automatic --target=es2020",
52
+ "clean": "rm -rf dist",
53
+ "watch": "tsc -w",
54
+ "typecheck": "tsc --noEmit",
55
+ "test": "jest",
56
+ "test:coverage": "jest --coverage"
57
57
  }
58
- }
58
+ }
@@ -220,10 +220,10 @@ function ImageMaker() {
220
220
  <button
221
221
  onClick={() =>
222
222
  generate({
223
- entityId: 'ent_modeldef_dalle3',
223
+ entityId: 'ent_modeldef_gpt_image_1_5',
224
224
  prompt: 'A serene mountain landscape at sunset',
225
225
  size: '1024x1024',
226
- quality: 'hd',
226
+ quality: 'high',
227
227
  })
228
228
  }
229
229
  disabled={isLoading}
@@ -237,6 +237,56 @@ function ImageMaker() {
237
237
  }
238
238
  ```
239
239
 
240
+ ### `useFiasFiles()` — User-files filesystem (SDK ≥ 1.9.0)
241
+
242
+ **Permissions:** `files:read` for `list`/`read`/`getDownloadUrl`; add `files:write` for `write`/`update`/`delete`
243
+ **Returns:** `FiasFilesApi`
244
+
245
+ Access the user's Fias filesystem, scoped to files this arche owns. Files written through this hook (and images created via `useImageGeneration()`) appear in MyData under `/My-Fias/{ArcheName}/`. Listing is by ownership — moving a file in MyData doesn't hide it from the arche.
246
+
247
+ The most common use is `getDownloadUrl(fileId)` to refresh the presigned URL on a generated image after the original (~1h) expires:
248
+
249
+ ```tsx
250
+ import { useFiasFiles, useImageGeneration } from '@fias/arche-sdk';
251
+
252
+ function PortraitGallery({ savedFileId }: { savedFileId: string }) {
253
+ const { getDownloadUrl } = useFiasFiles();
254
+ const [url, setUrl] = useState<string | null>(null);
255
+
256
+ useEffect(() => {
257
+ let cancelled = false;
258
+ getDownloadUrl(savedFileId).then((r) => {
259
+ if (!cancelled) setUrl(r.url);
260
+ });
261
+ return () => {
262
+ cancelled = true;
263
+ };
264
+ }, [savedFileId, getDownloadUrl]);
265
+
266
+ return url ? <img src={url} alt="" /> : null;
267
+ }
268
+ ```
269
+
270
+ **Store the `fileId`, not the `imageUrl`.** Image-generation results include both, but `imageUrl` is a short-lived presigned link. Persist `fileId` in your data store and resolve to a fresh URL on render via `getDownloadUrl`.
271
+
272
+ **Same-name writes overwrite.** Calling `write({ name: 'save.json', content })` twice with the same name reuses the existing `fileId` and replaces the content — useful for periodic snapshots.
273
+
274
+ **`read()` is text-only.** It rejects binary content types with HTTP 415. Use `getDownloadUrl(fileId)` and pass the URL to `<img>`, `fetch`, etc. for binaries.
275
+
276
+ ```tsx
277
+ const files = useFiasFiles();
278
+
279
+ await files.write({
280
+ name: 'save.json',
281
+ content: JSON.stringify(state),
282
+ contentType: 'application/json',
283
+ });
284
+ const { content } = await files.read(fileId);
285
+ const { files: page, nextCursor } = await files.list({ limit: 20 });
286
+ await files.update(fileId, { tags: ['draft'] });
287
+ await files.delete(fileId);
288
+ ```
289
+
240
290
  ### `useFiasNavigation()` — In-plugin routing
241
291
 
242
292
  **Permission:** None required
@@ -337,6 +387,12 @@ fias.showToast('Saved!', 'success'); // Toast: 'info' | 'success' | 'warning' |
337
387
 
338
388
  These are hard limits enforced by the platform. Code that violates these will fail review or be blocked at runtime.
339
389
 
390
+ ### Hitting a limit? Tell the user about Entity requests
391
+
392
+ Don't just say "can't do that" when the user asks for something blocked by these rules — most often a direct external API call, a third-party service, or a capability the platform hasn't surfaced yet. The Fias team adds new **Entities** on request: platform-managed wrappers that hold credentials, handle auth, and expose the capability to plugins through `useEntityInvocation()` (or `useImageGeneration()` for image models). The plugin never bypasses the sandbox — it invokes the new Entity like any other model.
393
+
394
+ When you hit a constraint, say so AND tell the user: file an Entity request on the Customer Support arche at `https://platform.fias.io/a/arche_customer_support`. Describe the service, endpoints, and auth method needed; once the Entity ships, the plugin can call it via `useEntityInvocation` with no sandbox change. Then propose a fallback that works inside the current sandbox (mock data, a simpler path, deferring the call) so the build keeps moving while the request is in flight.
395
+
340
396
  ### Sandboxing
341
397
 
342
398
  - Plugins run in an iframe with `sandbox="allow-scripts allow-forms allow-same-origin allow-downloads"`
@@ -423,7 +479,7 @@ npx fias-dev login --env production # Authenticate with production
423
479
  npx fias-dev entities # List all
424
480
  npx fias-dev entities --search "image" # Search by keyword
425
481
  npx fias-dev entities --type "model-definition" # Filter by type
426
- npx fias-dev entities --detail ent_modeldef_dalle3 # Full entity details (capabilities, sizes, pricing)
482
+ npx fias-dev entities --detail ent_modeldef_gpt_image_1_5 # Full entity details (capabilities, sizes, pricing)
427
483
  ```
428
484
 
429
485
  ### Validating the Manifest
@@ -220,10 +220,10 @@ function ImageMaker() {
220
220
  <button
221
221
  onClick={() =>
222
222
  generate({
223
- entityId: 'ent_modeldef_dalle3',
223
+ entityId: 'ent_modeldef_gpt_image_1_5',
224
224
  prompt: 'A serene mountain landscape at sunset',
225
225
  size: '1024x1024',
226
- quality: 'hd',
226
+ quality: 'high',
227
227
  })
228
228
  }
229
229
  disabled={isLoading}
@@ -237,6 +237,56 @@ function ImageMaker() {
237
237
  }
238
238
  ```
239
239
 
240
+ ### `useFiasFiles()` — User-files filesystem (SDK ≥ 1.9.0)
241
+
242
+ **Permissions:** `files:read` for `list`/`read`/`getDownloadUrl`; add `files:write` for `write`/`update`/`delete`
243
+ **Returns:** `FiasFilesApi`
244
+
245
+ Access the user's Fias filesystem, scoped to files this arche owns. Files written through this hook (and images created via `useImageGeneration()`) appear in MyData under `/My-Fias/{ArcheName}/`. Listing is by ownership — moving a file in MyData doesn't hide it from the arche.
246
+
247
+ The most common use is `getDownloadUrl(fileId)` to refresh the presigned URL on a generated image after the original (~1h) expires:
248
+
249
+ ```tsx
250
+ import { useFiasFiles, useImageGeneration } from '@fias/arche-sdk';
251
+
252
+ function PortraitGallery({ savedFileId }: { savedFileId: string }) {
253
+ const { getDownloadUrl } = useFiasFiles();
254
+ const [url, setUrl] = useState<string | null>(null);
255
+
256
+ useEffect(() => {
257
+ let cancelled = false;
258
+ getDownloadUrl(savedFileId).then((r) => {
259
+ if (!cancelled) setUrl(r.url);
260
+ });
261
+ return () => {
262
+ cancelled = true;
263
+ };
264
+ }, [savedFileId, getDownloadUrl]);
265
+
266
+ return url ? <img src={url} alt="" /> : null;
267
+ }
268
+ ```
269
+
270
+ **Store the `fileId`, not the `imageUrl`.** Image-generation results include both, but `imageUrl` is a short-lived presigned link. Persist `fileId` in your data store and resolve to a fresh URL on render via `getDownloadUrl`.
271
+
272
+ **Same-name writes overwrite.** Calling `write({ name: 'save.json', content })` twice with the same name reuses the existing `fileId` and replaces the content — useful for periodic snapshots.
273
+
274
+ **`read()` is text-only.** It rejects binary content types with HTTP 415. Use `getDownloadUrl(fileId)` and pass the URL to `<img>`, `fetch`, etc. for binaries.
275
+
276
+ ```tsx
277
+ const files = useFiasFiles();
278
+
279
+ await files.write({
280
+ name: 'save.json',
281
+ content: JSON.stringify(state),
282
+ contentType: 'application/json',
283
+ });
284
+ const { content } = await files.read(fileId);
285
+ const { files: page, nextCursor } = await files.list({ limit: 20 });
286
+ await files.update(fileId, { tags: ['draft'] });
287
+ await files.delete(fileId);
288
+ ```
289
+
240
290
  ### `useFiasNavigation()` — In-plugin routing
241
291
 
242
292
  **Permission:** None required
@@ -337,6 +387,12 @@ fias.showToast('Saved!', 'success'); // Toast: 'info' | 'success' | 'warning' |
337
387
 
338
388
  These are hard limits enforced by the platform. Code that violates these will fail review or be blocked at runtime.
339
389
 
390
+ ### Hitting a limit? Tell the user about Entity requests
391
+
392
+ Don't just say "can't do that" when the user asks for something blocked by these rules — most often a direct external API call, a third-party service, or a capability the platform hasn't surfaced yet. The Fias team adds new **Entities** on request: platform-managed wrappers that hold credentials, handle auth, and expose the capability to plugins through `useEntityInvocation()` (or `useImageGeneration()` for image models). The plugin never bypasses the sandbox — it invokes the new Entity like any other model.
393
+
394
+ When you hit a constraint, say so AND tell the user: file an Entity request on the Customer Support arche at `https://platform.fias.io/a/arche_customer_support`. Describe the service, endpoints, and auth method needed; once the Entity ships, the plugin can call it via `useEntityInvocation` with no sandbox change. Then propose a fallback that works inside the current sandbox (mock data, a simpler path, deferring the call) so the build keeps moving while the request is in flight.
395
+
340
396
  ### Sandboxing
341
397
 
342
398
  - Plugins run in an iframe with `sandbox="allow-scripts allow-forms allow-same-origin allow-downloads"`
@@ -423,7 +479,7 @@ npx fias-dev login --env production # Authenticate with production
423
479
  npx fias-dev entities # List all
424
480
  npx fias-dev entities --search "image" # Search by keyword
425
481
  npx fias-dev entities --type "model-definition" # Filter by type
426
- npx fias-dev entities --detail ent_modeldef_dalle3 # Full entity details (capabilities, sizes, pricing)
482
+ npx fias-dev entities --detail ent_modeldef_gpt_image_1_5 # Full entity details (capabilities, sizes, pricing)
427
483
  ```
428
484
 
429
485
  ### Validating the Manifest