pdfdancer-client-typescript 1.0.13 → 1.0.14

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/docs/openapi.yml CHANGED
@@ -172,8 +172,46 @@ paths:
172
172
  application/json:
173
173
  schema:
174
174
  type: string
175
+ /keys/anon:
176
+ post:
177
+ operationId: issueAnonymousKey
178
+ parameters:
179
+ - name: X-Fingerprint
180
+ in: header
181
+ required: true
182
+ schema:
183
+ type: string
184
+ - name: v
185
+ in: query
186
+ description: API version
187
+ schema:
188
+ type: string
189
+ - name: api-version
190
+ in: query
191
+ description: API version
192
+ schema:
193
+ type: string
194
+ - name: X-API-VERSION
195
+ in: header
196
+ description: API version
197
+ schema:
198
+ type: string
199
+ - name: Accept-Version
200
+ in: header
201
+ description: API version
202
+ schema:
203
+ type: string
204
+ responses:
205
+ "200":
206
+ description: issueAnonymousKey 200 response
207
+ content:
208
+ application/json:
209
+ schema:
210
+ $ref: "#/components/schemas/ApiTokenCreateResponse"
175
211
  /me/tenant:
176
212
  get:
213
+ summary: Get current user's tenant information.
214
+ description: Get current user's tenant information.
177
215
  operationId: getTenant
178
216
  parameters:
179
217
  - name: v
@@ -198,13 +236,15 @@ paths:
198
236
  type: string
199
237
  responses:
200
238
  "200":
201
- description: getTenant 200 response
239
+ description: User's tenant with role
202
240
  content:
203
241
  application/json:
204
242
  schema:
205
243
  $ref: "#/components/schemas/UserTenantResponse"
206
244
  /me/tokens:
207
245
  get:
246
+ summary: List all API tokens for user's tenant.
247
+ description: List all API tokens for user's tenant.
208
248
  operationId: listTokens
209
249
  parameters:
210
250
  - name: v
@@ -229,7 +269,7 @@ paths:
229
269
  type: string
230
270
  responses:
231
271
  "200":
232
- description: listTokens 200 response
272
+ description: List of API tokens (without raw token values)
233
273
  content:
234
274
  application/json:
235
275
  schema:
@@ -237,6 +277,8 @@ paths:
237
277
  items:
238
278
  $ref: "#/components/schemas/ApiTokenListResponse"
239
279
  post:
280
+ summary: Create a new API token for user's tenant.
281
+ description: Create a new API token for user's tenant.
240
282
  operationId: createToken
241
283
  parameters:
242
284
  - name: v
@@ -260,6 +302,7 @@ paths:
260
302
  schema:
261
303
  type: string
262
304
  requestBody:
305
+ description: token creation request
263
306
  content:
264
307
  application/json:
265
308
  schema:
@@ -267,17 +310,20 @@ paths:
267
310
  required: true
268
311
  responses:
269
312
  "200":
270
- description: createToken 200 response
313
+ description: Created token with raw token value (shown only once)
271
314
  content:
272
315
  application/json:
273
316
  schema:
274
317
  $ref: "#/components/schemas/ApiTokenCreateResponse"
275
318
  /me/tokens/{tokenId}:
276
319
  get:
320
+ summary: Get a single API token by ID.
321
+ description: Get a single API token by ID.
277
322
  operationId: getToken
278
323
  parameters:
279
324
  - name: tokenId
280
325
  in: path
326
+ description: token ID to retrieve
281
327
  required: true
282
328
  schema:
283
329
  type: string
@@ -303,16 +349,19 @@ paths:
303
349
  type: string
304
350
  responses:
305
351
  "200":
306
- description: getToken 200 response
352
+ description: Token details (without raw token value)
307
353
  content:
308
354
  application/json:
309
355
  schema:
310
356
  $ref: "#/components/schemas/ApiTokenListResponse"
311
357
  delete:
358
+ summary: Revoke an API token.
359
+ description: Revoke an API token.
312
360
  operationId: revokeToken
313
361
  parameters:
314
362
  - name: tokenId
315
363
  in: path
364
+ description: token ID to revoke
316
365
  required: true
317
366
  schema:
318
367
  type: string
@@ -338,13 +387,18 @@ paths:
338
387
  type: string
339
388
  responses:
340
389
  "200":
341
- description: revokeToken 200 response
390
+ description: 204 No Content on success
342
391
  /pdf/add:
343
392
  post:
393
+ summary: Adds new objects to the PDF document.
394
+ description: "Adds new objects to the PDF document. This operation creates new\
395
+ \ PDF content elements such as text, images, forms, or other objects at specified\
396
+ \ positions within the document."
344
397
  operationId: addObject
345
398
  parameters:
346
399
  - name: X-Session-Id
347
400
  in: header
401
+ description: unique identifier for the user session containing the PDF
348
402
  required: true
349
403
  schema:
350
404
  type: string
@@ -369,6 +423,8 @@ paths:
369
423
  schema:
370
424
  type: string
371
425
  requestBody:
426
+ description: "addition specifications including object type, content, and\
427
+ \ positioning"
372
428
  content:
373
429
  application/json:
374
430
  schema:
@@ -376,17 +432,23 @@ paths:
376
432
  required: true
377
433
  responses:
378
434
  "200":
379
- description: addObject 200 response
435
+ description: HTTP response indicating whether the addition operation was
436
+ successful
380
437
  content:
381
438
  application/json:
382
439
  schema:
383
440
  type: boolean
384
441
  /pdf/delete:
385
442
  delete:
443
+ summary: Removes specified objects from the PDF document.
444
+ description: "Removes specified objects from the PDF document. This operation\
445
+ \ permanently deletes PDF objects such as text elements, images, forms, or\
446
+ \ other content based on the provided deletion criteria."
386
447
  operationId: deleteObject
387
448
  parameters:
388
449
  - name: X-Session-Id
389
450
  in: header
451
+ description: unique identifier for the user session containing the PDF
390
452
  required: true
391
453
  schema:
392
454
  type: string
@@ -411,6 +473,7 @@ paths:
411
473
  schema:
412
474
  type: string
413
475
  requestBody:
476
+ description: deletion criteria specifying which objects to remove
414
477
  content:
415
478
  application/json:
416
479
  schema:
@@ -418,22 +481,31 @@ paths:
418
481
  required: true
419
482
  responses:
420
483
  "200":
421
- description: deleteObject 200 response
484
+ description: HTTP response indicating whether the deletion operation was
485
+ successful
422
486
  content:
423
487
  application/json:
424
488
  schema:
425
489
  type: boolean
426
490
  /pdf/document/snapshot:
427
491
  get:
492
+ summary: Retrieves a complete snapshot of the entire PDF document.
493
+ description: "Retrieves a complete snapshot of the entire PDF document. This\
494
+ \ endpoint returns all pages with their elements, document metadata, and font\
495
+ \ catalog in a single response, significantly reducing API overhead compared\
496
+ \ to requesting each element type separately per page."
428
497
  operationId: getDocumentSnapshot
429
498
  parameters:
430
499
  - name: X-Session-Id
431
500
  in: header
501
+ description: unique identifier for the user session containing the PDF
432
502
  required: true
433
503
  schema:
434
504
  type: string
435
505
  - name: types
436
506
  in: query
507
+ description: "optional comma-separated list of object types to include (e.g.,\
508
+ \ \"PARAGRAPH,IMAGE\")"
437
509
  explode: false
438
510
  schema:
439
511
  type: string
@@ -460,17 +532,23 @@ paths:
460
532
  type: string
461
533
  responses:
462
534
  "200":
463
- description: getDocumentSnapshot 200 response
535
+ description: HTTP response containing the complete document snapshot
464
536
  content:
465
537
  application/json:
466
538
  schema:
467
539
  $ref: "#/components/schemas/DocumentSnapshot"
468
540
  /pdf/find:
469
541
  post:
542
+ summary: Searches for PDF objects within the document based on specified criteria.
543
+ description: "Searches for PDF objects within the document based on specified\
544
+ \ criteria. This operation allows finding various types of PDF objects (text,\
545
+ \ images, forms, etc.) using flexible search parameters including object type,\
546
+ \ getPosition, and hints."
470
547
  operationId: findObject
471
548
  parameters:
472
549
  - name: X-Session-Id
473
550
  in: header
551
+ description: unique identifier for the user session containing the PDF
474
552
  required: true
475
553
  schema:
476
554
  type: string
@@ -495,6 +573,8 @@ paths:
495
573
  schema:
496
574
  type: string
497
575
  requestBody:
576
+ description: "search criteria specifying object type, getPosition filters,\
577
+ \ and search hints"
498
578
  content:
499
579
  application/json:
500
580
  schema:
@@ -502,7 +582,8 @@ paths:
502
582
  required: true
503
583
  responses:
504
584
  "200":
505
- description: findObject 200 response
585
+ description: HTTP response containing list of object references matching
586
+ the search criteria
506
587
  content:
507
588
  application/json:
508
589
  schema:
@@ -595,10 +676,15 @@ paths:
595
676
  type: boolean
596
677
  /pdf/move:
597
678
  put:
679
+ summary: Moves PDF objects to new positions within the document.
680
+ description: "Moves PDF objects to new positions within the document. This operation\
681
+ \ relocates existing PDF objects (text, images, etc.) to different coordinates\
682
+ \ or pages while preserving their content and properties."
598
683
  operationId: moveObject
599
684
  parameters:
600
685
  - name: X-Session-Id
601
686
  in: header
687
+ description: unique identifier for the user session containing the PDF
602
688
  required: true
603
689
  schema:
604
690
  type: string
@@ -623,6 +709,8 @@ paths:
623
709
  schema:
624
710
  type: string
625
711
  requestBody:
712
+ description: movement specifications including object reference and target
713
+ getPosition
626
714
  content:
627
715
  application/json:
628
716
  schema:
@@ -630,17 +718,22 @@ paths:
630
718
  required: true
631
719
  responses:
632
720
  "200":
633
- description: moveObject 200 response
721
+ description: HTTP response indicating whether the move operation was successful
634
722
  content:
635
723
  application/json:
636
724
  schema:
637
725
  type: boolean
638
726
  /pdf/page/add:
639
727
  post:
728
+ summary: Adds a new blank page to the end of the PDF document.
729
+ description: Adds a new blank page to the end of the PDF document. This operation
730
+ creates a new page within the PDF and returns a reference that can be used
731
+ for subsequent operations on the created page.
640
732
  operationId: addPage
641
733
  parameters:
642
734
  - name: X-Session-Id
643
735
  in: header
736
+ description: unique identifier for the user session containing the PDF
644
737
  required: true
645
738
  schema:
646
739
  type: string
@@ -664,19 +757,31 @@ paths:
664
757
  description: API version
665
758
  schema:
666
759
  type: string
760
+ requestBody:
761
+ content:
762
+ application/json:
763
+ schema:
764
+ $ref: "#/components/schemas/AddPageRequest"
765
+ required: true
667
766
  responses:
668
767
  "200":
669
- description: addPage 200 response
768
+ description: HTTP response containing the object reference for the newly
769
+ created page
670
770
  content:
671
771
  application/json:
672
772
  schema:
673
773
  $ref: "#/components/schemas/PageRef"
674
774
  /pdf/page/delete:
675
775
  delete:
776
+ summary: Removes a page from the PDF document entirely.
777
+ description: "Removes a page from the PDF document entirely. This operation\
778
+ \ permanently deletes the specified page and all its content from the PDF\
779
+ \ document, updating page numbering for subsequent pages."
676
780
  operationId: deletePage
677
781
  parameters:
678
782
  - name: X-Session-Id
679
783
  in: header
784
+ description: unique identifier for the user session containing the PDF
680
785
  required: true
681
786
  schema:
682
787
  type: string
@@ -701,6 +806,7 @@ paths:
701
806
  schema:
702
807
  type: string
703
808
  requestBody:
809
+ description: reference to the page object to be deleted
704
810
  content:
705
811
  application/json:
706
812
  schema:
@@ -708,22 +814,28 @@ paths:
708
814
  required: true
709
815
  responses:
710
816
  "200":
711
- description: deletePage 200 response
817
+ description: HTTP response indicating whether the deletion was successful
712
818
  content:
713
819
  application/json:
714
820
  schema:
715
821
  type: boolean
716
822
  /pdf/page/find:
717
823
  post:
824
+ summary: Searches for pages within the PDF document based on optional criteria.
825
+ description: Searches for pages within the PDF document based on optional criteria.
826
+ This operation can return either a specific page by number or all pages in
827
+ the document if no page number is specified.
718
828
  operationId: findPage
719
829
  parameters:
720
830
  - name: X-Session-Id
721
831
  in: header
832
+ description: unique identifier for the user session containing the PDF
722
833
  required: true
723
834
  schema:
724
835
  type: string
725
836
  - name: pageIndex
726
837
  in: query
838
+ description: optional specific page number to retrieve (null returns all pages)
727
839
  explode: false
728
840
  schema:
729
841
  type: integer
@@ -751,7 +863,8 @@ paths:
751
863
  type: string
752
864
  responses:
753
865
  "200":
754
- description: findPage 200 response
866
+ description: HTTP response containing list of object references for matching
867
+ pages
755
868
  content:
756
869
  application/json:
757
870
  schema:
@@ -760,10 +873,15 @@ paths:
760
873
  $ref: "#/components/schemas/PageRef"
761
874
  /pdf/page/modify:
762
875
  put:
876
+ summary: Modifies page-level properties and metadata within the PDF document.
877
+ description: "Modifies page-level properties and metadata within the PDF document.\
878
+ \ This operation handles page-specific modifications including dimensions,\
879
+ \ rotation, media box settings, and other page-level attributes."
763
880
  operationId: modifyPage
764
881
  parameters:
765
882
  - name: X-Session-Id
766
883
  in: header
884
+ description: unique identifier for the user session containing the PDF
767
885
  required: true
768
886
  schema:
769
887
  type: string
@@ -788,6 +906,7 @@ paths:
788
906
  schema:
789
907
  type: string
790
908
  requestBody:
909
+ description: modification specifications for page-level changes
791
910
  content:
792
911
  application/json:
793
912
  schema:
@@ -795,17 +914,22 @@ paths:
795
914
  required: true
796
915
  responses:
797
916
  "200":
798
- description: modifyPage 200 response
917
+ description: HTTP response indicating whether the modification was successful
799
918
  content:
800
919
  application/json:
801
920
  schema:
802
921
  type: boolean
803
922
  /pdf/page/move:
804
923
  put:
924
+ summary: Moves a page to a different getPosition within the PDF document.
925
+ description: "Moves a page to a different getPosition within the PDF document.\
926
+ \ This operation reorders pages within the document, updating the page sequence\
927
+ \ according to the specified move request parameters."
805
928
  operationId: movePage
806
929
  parameters:
807
930
  - name: X-Session-Id
808
931
  in: header
932
+ description: unique identifier for the user session containing the PDF
809
933
  required: true
810
934
  schema:
811
935
  type: string
@@ -830,6 +954,7 @@ paths:
830
954
  schema:
831
955
  type: string
832
956
  requestBody:
957
+ description: move request containing source page reference and target getPosition
833
958
  content:
834
959
  application/json:
835
960
  schema:
@@ -837,28 +962,35 @@ paths:
837
962
  required: true
838
963
  responses:
839
964
  "200":
840
- description: movePage 200 response
965
+ description: HTTP response indicating whether the move operation was successful
841
966
  content:
842
967
  application/json:
843
968
  schema:
844
969
  type: boolean
845
970
  /pdf/page/{pageIndex}/snapshot:
846
971
  get:
972
+ summary: Retrieves a snapshot of a single PDF page.
973
+ description: "Retrieves a snapshot of a single PDF page. This endpoint returns\
974
+ \ the page metadata and all elements in a single response, reducing the number\
975
+ \ of API calls needed compared to requesting each element type separately."
847
976
  operationId: getPageSnapshot
848
977
  parameters:
849
978
  - name: X-Session-Id
850
979
  in: header
980
+ description: unique identifier for the user session containing the PDF
851
981
  required: true
852
982
  schema:
853
983
  type: string
854
984
  - name: pageIndex
855
985
  in: path
986
+ description: zero-based index of the page to retrieve
856
987
  required: true
857
988
  schema:
858
989
  type: integer
859
990
  format: int32
860
991
  - name: types
861
992
  in: query
993
+ description: optional comma-separated list of object types to include
862
994
  explode: false
863
995
  schema:
864
996
  type: string
@@ -885,7 +1017,7 @@ paths:
885
1017
  type: string
886
1018
  responses:
887
1019
  "200":
888
- description: getPageSnapshot 200 response
1020
+ description: HTTP response containing the page snapshot
889
1021
  content:
890
1022
  application/json:
891
1023
  schema:
@@ -976,6 +1108,10 @@ paths:
976
1108
  $ref: "#/components/schemas/CommandResult"
977
1109
  /ping:
978
1110
  get:
1111
+ summary: Basic health check endpoint that confirms server availability.
1112
+ description: Basic health check endpoint that confirms server availability.
1113
+ This endpoint provides a simple way for monitoring systems to verify that
1114
+ the API server is running and capable of handling requests.
979
1115
  operationId: index
980
1116
  parameters:
981
1117
  - name: v
@@ -1000,7 +1136,7 @@ paths:
1000
1136
  type: string
1001
1137
  responses:
1002
1138
  "200":
1003
- description: index 200 response
1139
+ description: a simple "Pong" response indicating the server is operational
1004
1140
  content:
1005
1141
  text/plain:
1006
1142
  schema:
@@ -1107,6 +1243,12 @@ paths:
1107
1243
  $ref: "#/components/schemas/Product"
1108
1244
  /session/create:
1109
1245
  post:
1246
+ summary: Creates a new session by uploading and processing a PDF document.
1247
+ description: "Creates a new session by uploading and processing a PDF document.\
1248
+ \ This operation validates the uploaded file, creates a unique session identifier,\
1249
+ \ processes the PDF structure for manipulation, and stores the session for\
1250
+ \ future operations. The PDF is analyzed to extract its internal structure\
1251
+ \ and prepare it for editing."
1110
1252
  operationId: createSession
1111
1253
  parameters:
1112
1254
  - name: v
@@ -1137,6 +1279,7 @@ paths:
1137
1279
  properties:
1138
1280
  pdf:
1139
1281
  type: string
1282
+ description: uploaded PDF file from the multipart request
1140
1283
  format: binary
1141
1284
  encoding:
1142
1285
  pdf:
@@ -1145,13 +1288,18 @@ paths:
1145
1288
  required: true
1146
1289
  responses:
1147
1290
  "200":
1148
- description: createSession 200 response
1291
+ description: HTTP response containing the generated session ID for subsequent
1292
+ operations
1149
1293
  content:
1150
1294
  application/json:
1151
1295
  schema:
1152
1296
  type: string
1153
1297
  /session/new:
1154
1298
  post:
1299
+ summary: Creates a new session with a blank PDF document.
1300
+ description: "Creates a new session with a blank PDF document. This operation\
1301
+ \ creates a new PDF with the specified page size, orientation, and page count,\
1302
+ \ then initializes a session for manipulation operations just like createSession."
1155
1303
  operationId: createBlankPdf
1156
1304
  parameters:
1157
1305
  - name: v
@@ -1175,6 +1323,8 @@ paths:
1175
1323
  schema:
1176
1324
  type: string
1177
1325
  requestBody:
1326
+ description: "parameters for the blank PDF (page size, orientation, initial\
1327
+ \ page count)"
1178
1328
  content:
1179
1329
  application/json:
1180
1330
  schema:
@@ -1182,17 +1332,23 @@ paths:
1182
1332
  required: true
1183
1333
  responses:
1184
1334
  "200":
1185
- description: createBlankPdf 200 response
1335
+ description: HTTP response containing the generated session ID for subsequent
1336
+ operations
1186
1337
  content:
1187
1338
  application/json:
1188
1339
  schema:
1189
1340
  type: string
1190
1341
  /session/{sessionId}:
1191
1342
  delete:
1343
+ summary: Deletes an existing session and cleans up associated resources.
1344
+ description: Deletes an existing session and cleans up associated resources.
1345
+ This operation removes the session from the store and should also clean up
1346
+ temporary files and release any held resources.
1192
1347
  operationId: deleteSession
1193
1348
  parameters:
1194
1349
  - name: sessionId
1195
1350
  in: path
1351
+ description: unique identifier of the session to delete
1196
1352
  required: true
1197
1353
  schema:
1198
1354
  type: string
@@ -1218,17 +1374,26 @@ paths:
1218
1374
  type: string
1219
1375
  responses:
1220
1376
  "200":
1221
- description: deleteSession 200 response
1377
+ description: HTTP response indicating whether the session was successfully
1378
+ deleted
1222
1379
  content:
1223
1380
  application/json:
1224
1381
  schema:
1225
1382
  type: boolean
1226
1383
  /session/{sessionId}/pdf:
1227
1384
  get:
1385
+ summary: Retrieves the current state of the PDF document from the specified
1386
+ session.
1387
+ description: "Retrieves the current state of the PDF document from the specified\
1388
+ \ session. This operation builds and streams the PDF with all applied modifications,\
1389
+ \ generating the final PDF output that reflects all changes made during the\
1390
+ \ session. The PDF is built asynchronously and streamed to avoid memory issues\
1391
+ \ with large files."
1228
1392
  operationId: getSessionPdf_1
1229
1393
  parameters:
1230
1394
  - name: sessionId
1231
1395
  in: path
1396
+ description: unique identifier of the session containing the PDF
1232
1397
  required: true
1233
1398
  schema:
1234
1399
  type: string
@@ -1254,7 +1419,8 @@ paths:
1254
1419
  type: string
1255
1420
  responses:
1256
1421
  "200":
1257
- description: getSessionPdf_1 200 response
1422
+ description: HTTP response containing the streamed PDF file with all modifications
1423
+ applied
1258
1424
  content:
1259
1425
  application/pdf:
1260
1426
  schema:
@@ -1262,6 +1428,12 @@ paths:
1262
1428
  format: binary
1263
1429
  /test:
1264
1430
  get:
1431
+ summary: Authenticated test endpoint that verifies API token authentication
1432
+ is working.
1433
+ description: Authenticated test endpoint that verifies API token authentication
1434
+ is working. This endpoint requires a valid API token (Bearer) and serves as
1435
+ a way to test that the authentication mechanism is functioning properly without
1436
+ affecting any actual application data.
1265
1437
  operationId: test
1266
1438
  parameters:
1267
1439
  - name: v
@@ -1286,7 +1458,7 @@ paths:
1286
1458
  type: string
1287
1459
  responses:
1288
1460
  "200":
1289
- description: test 200 response
1461
+ description: a confirmation message indicating successful authentication
1290
1462
  content:
1291
1463
  text/plain:
1292
1464
  schema:
@@ -1392,6 +1564,20 @@ paths:
1392
1564
  format: binary
1393
1565
  components:
1394
1566
  schemas:
1567
+ AddPageRequest:
1568
+ required:
1569
+ - orientation
1570
+ - pageIndex
1571
+ - pageSize
1572
+ type: object
1573
+ properties:
1574
+ pageIndex:
1575
+ type: integer
1576
+ format: int32
1577
+ orientation:
1578
+ $ref: "#/components/schemas/Orientation"
1579
+ pageSize:
1580
+ $ref: "#/components/schemas/PageSize"
1395
1581
  AddRequest:
1396
1582
  required:
1397
1583
  - object
@@ -1399,6 +1585,10 @@ components:
1399
1585
  properties:
1400
1586
  object:
1401
1587
  $ref: "#/components/schemas/PDFObject"
1588
+ description: "Request record for adding new PDF objects to a document. This\
1589
+ \ immutable record encapsulates the data needed to add new content elements\
1590
+ \ to a PDF document, including the complete object specification with getPosition,\
1591
+ \ properties, and content data."
1402
1592
  ApiTokenCreateRequest:
1403
1593
  required:
1404
1594
  - expiresAt
@@ -1409,6 +1599,7 @@ components:
1409
1599
  type: string
1410
1600
  expiresAt:
1411
1601
  type: string
1602
+ description: Request to create a new API token.
1412
1603
  ApiTokenCreateResponse:
1413
1604
  required:
1414
1605
  - metadata
@@ -1419,6 +1610,8 @@ components:
1419
1610
  type: string
1420
1611
  metadata:
1421
1612
  $ref: "#/components/schemas/ApiTokenCreateResponse.ApiTokenMetadata"
1613
+ description: Response when creating a new API token. Contains the raw token
1614
+ (shown only once) plus metadata.
1422
1615
  ApiTokenCreateResponse.ApiTokenMetadata:
1423
1616
  required:
1424
1617
  - createdAt
@@ -1460,6 +1653,7 @@ components:
1460
1653
  type: string
1461
1654
  expiresAt:
1462
1655
  type: string
1656
+ description: Response for listing API tokens (does not include the raw token).
1463
1657
  Authentication:
1464
1658
  required:
1465
1659
  - attributes
@@ -1477,6 +1671,41 @@ components:
1477
1671
  type: array
1478
1672
  items:
1479
1673
  type: string
1674
+ Bezier:
1675
+ required:
1676
+ - p0
1677
+ - p1
1678
+ - p2
1679
+ - p3
1680
+ type: object
1681
+ description: "Represents a cubic Bezier curve path segment defined by four control\
1682
+ \ points. This class implements a cubic Bezier curve with start point, two\
1683
+ \ control points, and end point, providing smooth curved path segments for\
1684
+ \ complex vector graphics. Includes mathematical evaluation methods for point\
1685
+ \ calculation along the curve."
1686
+ allOf:
1687
+ - $ref: "#/components/schemas/PathSegment"
1688
+ - $ref: "#/components/schemas/PDFObject"
1689
+ - type: object
1690
+ properties:
1691
+ p0:
1692
+ description: Returns the starting point p0 of this Bezier segment.
1693
+ allOf:
1694
+ - $ref: "#/components/schemas/Point"
1695
+ p1:
1696
+ description: Returns the first control point p1 of this Bezier segment.
1697
+ allOf:
1698
+ - $ref: "#/components/schemas/Point"
1699
+ p2:
1700
+ description: Returns the second control point p2 of this Bezier segment.
1701
+ allOf:
1702
+ - $ref: "#/components/schemas/Point"
1703
+ p3:
1704
+ description: Returns the ending point p3 of this Bezier segment.
1705
+ allOf:
1706
+ - $ref: "#/components/schemas/Point"
1707
+ objectType:
1708
+ $ref: "#/components/schemas/ObjectType"
1480
1709
  BoundingRect:
1481
1710
  required:
1482
1711
  - height
@@ -1486,19 +1715,31 @@ components:
1486
1715
  type: object
1487
1716
  properties:
1488
1717
  origin:
1489
- $ref: "#/components/schemas/Point"
1718
+ description: Returns the origin point of this bounding rectangle. The origin
1719
+ represents the bottom-left corner in PDF coordinate system.
1720
+ allOf:
1721
+ - $ref: "#/components/schemas/Point"
1490
1722
  x:
1491
1723
  type: number
1724
+ description: X-coordinate of the rectangle's origin (left edge).
1492
1725
  format: double
1493
1726
  "y":
1494
1727
  type: number
1728
+ description: Y-coordinate of the rectangle's origin (bottom edge in PDF
1729
+ coordinates).
1495
1730
  format: double
1496
1731
  width:
1497
1732
  type: number
1733
+ description: Width of the rectangle extending rightward from the origin.
1498
1734
  format: double
1499
1735
  height:
1500
1736
  type: number
1737
+ description: Height of the rectangle extending upward from the origin.
1501
1738
  format: double
1739
+ description: "Represents a rectangular area defined by getPosition and dimensions.\
1740
+ \ This class encapsulates bounding box information for PDF objects, providing\
1741
+ \ spatial extent data used for positioning, collision detection, and layout\
1742
+ \ operations within PDF documents."
1502
1743
  ChangeFormFieldRequest:
1503
1744
  required:
1504
1745
  - ref
@@ -1514,16 +1755,26 @@ components:
1514
1755
  properties:
1515
1756
  red:
1516
1757
  type: integer
1758
+ description: Red color component (0-255).
1517
1759
  format: int32
1518
1760
  green:
1519
1761
  type: integer
1762
+ description: Green color component (0-255).
1520
1763
  format: int32
1521
1764
  blue:
1522
1765
  type: integer
1766
+ description: Blue color component (0-255).
1523
1767
  format: int32
1524
1768
  alpha:
1525
1769
  type: integer
1770
+ description: "Alpha (transparency) component (0-255, where 255 is fully\
1771
+ \ opaque)."
1526
1772
  format: int32
1773
+ description: "Represents color information using RGBA (Red, Green, Blue, Alpha)\
1774
+ \ color model. This class encapsulates color data for PDF objects, supporting\
1775
+ \ both opaque and transparent colors with integer values ranging from 0-255\
1776
+ \ for each component. Provides convenient constructors and utility methods\
1777
+ \ for color manipulation."
1527
1778
  CommandResult:
1528
1779
  required:
1529
1780
  - commandName
@@ -1557,6 +1808,7 @@ components:
1557
1808
  initialPageCount:
1558
1809
  type: integer
1559
1810
  format: int32
1811
+ description: Request to create a new blank PDF session.
1560
1812
  DeleteRequest:
1561
1813
  required:
1562
1814
  - objectRef
@@ -1564,6 +1816,19 @@ components:
1564
1816
  properties:
1565
1817
  objectRef:
1566
1818
  $ref: "#/components/schemas/ObjectRef"
1819
+ description: Request record for deleting PDF objects from a document. This immutable
1820
+ record encapsulates the object reference needed to identify and remove specific
1821
+ PDF objects from a document during editing operations.
1822
+ DocumentFontInfoDto:
1823
+ required:
1824
+ - documentFontName
1825
+ - systemFontName
1826
+ type: object
1827
+ properties:
1828
+ documentFontName:
1829
+ type: string
1830
+ systemFontName:
1831
+ type: string
1567
1832
  DocumentSnapshot:
1568
1833
  required:
1569
1834
  - fonts
@@ -1577,11 +1842,15 @@ components:
1577
1842
  fonts:
1578
1843
  type: array
1579
1844
  items:
1580
- $ref: "#/components/schemas/FontRecommendationDto"
1845
+ $ref: "#/components/schemas/DocumentFontInfoDto"
1581
1846
  pages:
1582
1847
  type: array
1583
1848
  items:
1584
1849
  $ref: "#/components/schemas/PageSnapshot"
1850
+ description: "Represents a complete snapshot of a PDF document including metadata\
1851
+ \ and all pages. This response provides document-level information and aggregates\
1852
+ \ all page snapshots, allowing clients to retrieve the entire document structure\
1853
+ \ in a single API call."
1585
1854
  FindRequest:
1586
1855
  required:
1587
1856
  - hint
@@ -1595,30 +1864,27 @@ components:
1595
1864
  $ref: "#/components/schemas/Position"
1596
1865
  hint:
1597
1866
  type: string
1867
+ description: "Request record for searching PDF objects within a document. This\
1868
+ \ immutable record encapsulates search criteria for locating PDF objects based\
1869
+ \ on type, getPosition constraints, and optional search hints, enabling flexible\
1870
+ \ and efficient object discovery within PDF documents."
1598
1871
  Font:
1599
1872
  type: object
1600
1873
  properties:
1601
1874
  name:
1602
1875
  type: string
1876
+ description: "Font family name (e.g., \"Arial\", \"Times New Roman\", \"\
1877
+ Helvetica\")."
1603
1878
  size:
1604
1879
  type: number
1880
+ description: Font size in points.
1605
1881
  format: double
1606
1882
  embedded:
1607
1883
  type: boolean
1608
- FontRecommendationDto:
1609
- required:
1610
- - fontName
1611
- - fontType
1612
- - similarityScore
1613
- type: object
1614
- properties:
1615
- fontName:
1616
- type: string
1617
- fontType:
1618
- $ref: "#/components/schemas/FontType"
1619
- similarityScore:
1620
- type: number
1621
- format: double
1884
+ description: "Represents font properties for text rendering in PDF documents.\
1885
+ \ This class encapsulates font characteristics including typeface name, size,\
1886
+ \ and styling attributes such as bold, italic, and underline formatting. Used\
1887
+ \ throughout the API for consistent text formatting and style management."
1622
1888
  FontType:
1623
1889
  type: string
1624
1890
  enum:
@@ -1627,45 +1893,114 @@ components:
1627
1893
  - EMBEDDED
1628
1894
  Form:
1629
1895
  type: object
1896
+ description: "Represents an interactive form field within a PDF document. This\
1897
+ \ class encapsulates form field properties including type, value, appearance,\
1898
+ \ and behavior for various interactive PDF form elements such as text fields,\
1899
+ \ checkboxes, radio buttons, and dropdowns."
1630
1900
  allOf:
1631
1901
  - $ref: "#/components/schemas/PDFObject"
1632
1902
  - type: object
1633
1903
  properties:
1634
1904
  name:
1635
1905
  type: string
1906
+ description: Field name identifier used in form processing.
1636
1907
  type:
1637
- $ref: "#/components/schemas/Form.FormType"
1908
+ description: Type of form field determining its behavior and appearance.
1909
+ allOf:
1910
+ - $ref: "#/components/schemas/Form.FormType"
1638
1911
  value:
1639
1912
  type: string
1913
+ description: Current value or content of the form field.
1640
1914
  size:
1641
- $ref: "#/components/schemas/Size"
1915
+ description: Dimensions of the form field's visual representation.
1916
+ allOf:
1917
+ - $ref: "#/components/schemas/Size"
1642
1918
  font:
1643
- $ref: "#/components/schemas/Font"
1919
+ description: Font properties for text-based form fields.
1920
+ allOf:
1921
+ - $ref: "#/components/schemas/Font"
1644
1922
  objectType:
1645
- $ref: "#/components/schemas/ObjectType"
1923
+ description: Returns the object type for this form field.
1924
+ allOf:
1925
+ - $ref: "#/components/schemas/ObjectType"
1646
1926
  Form.FormType:
1647
1927
  type: string
1928
+ description: Enumeration of supported PDF form field types.
1929
+ x-enum-descriptions:
1930
+ - Single-line or multi-line text input field
1931
+ - Checkbox for binary selections
1932
+ - Radio button for mutually exclusive selections
1933
+ - Dropdown list with selectable options
1934
+ - Clickable button element
1648
1935
  enum:
1649
1936
  - TEXT_FIELD
1650
1937
  - CHECKBOX
1651
1938
  - RADIO_BUTTON
1652
1939
  - DROPDOWN
1653
1940
  - BUTTON
1941
+ FormFieldRef:
1942
+ required:
1943
+ - name
1944
+ - value
1945
+ type: object
1946
+ allOf:
1947
+ - $ref: "#/components/schemas/ObjectRef"
1948
+ - type: object
1949
+ properties:
1950
+ name:
1951
+ type: string
1952
+ value:
1953
+ type: string
1654
1954
  Image:
1655
1955
  type: object
1956
+ description: "Represents an image object within a PDF document. This class encapsulates\
1957
+ \ image data, format information, and dimensional properties for embedded\
1958
+ \ or overlaid images in PDF documents. Supports various image formats and\
1959
+ \ provides utilities for loading images from files."
1656
1960
  allOf:
1657
1961
  - $ref: "#/components/schemas/PDFObject"
1658
1962
  - type: object
1659
1963
  properties:
1660
1964
  format:
1661
1965
  type: string
1966
+ description: "Image format (e.g., \"JPEG\", \"PNG\", \"GIF\")."
1662
1967
  size:
1663
- $ref: "#/components/schemas/Size"
1968
+ description: Dimensions of the image in PDF coordinate units.
1969
+ allOf:
1970
+ - $ref: "#/components/schemas/Size"
1664
1971
  data:
1665
1972
  type: string
1973
+ description: Raw image data bytes.
1666
1974
  format: byte
1667
1975
  objectType:
1668
- $ref: "#/components/schemas/ObjectType"
1976
+ description: Returns the object type for this image.
1977
+ allOf:
1978
+ - $ref: "#/components/schemas/ObjectType"
1979
+ Line:
1980
+ required:
1981
+ - p0
1982
+ - p1
1983
+ type: object
1984
+ description: "Represents a straight line path segment between two points. This\
1985
+ \ class defines a linear path element connecting two coordinate points, commonly\
1986
+ \ used in vector graphics and geometric shapes within PDF documents."
1987
+ allOf:
1988
+ - $ref: "#/components/schemas/PathSegment"
1989
+ - $ref: "#/components/schemas/PDFObject"
1990
+ - type: object
1991
+ properties:
1992
+ p1:
1993
+ description: Returns the ending point of this line segment.
1994
+ allOf:
1995
+ - $ref: "#/components/schemas/Point"
1996
+ p0:
1997
+ description: Returns the starting point of this line segment.
1998
+ allOf:
1999
+ - $ref: "#/components/schemas/Point"
2000
+ objectType:
2001
+ description: Returns the object type for this line segment.
2002
+ allOf:
2003
+ - $ref: "#/components/schemas/ObjectType"
1669
2004
  ModifyRequest:
1670
2005
  required:
1671
2006
  - newObject
@@ -1696,6 +2031,10 @@ components:
1696
2031
  $ref: "#/components/schemas/ObjectRef"
1697
2032
  newPosition:
1698
2033
  $ref: "#/components/schemas/Position"
2034
+ description: "Request record for moving PDF objects to new positions within\
2035
+ \ a document. This immutable record encapsulates both the object to be moved\
2036
+ \ and its target getPosition, enabling precise repositioning operations during\
2037
+ \ PDF editing."
1699
2038
  ObjectRef:
1700
2039
  required:
1701
2040
  - internalId
@@ -1705,16 +2044,66 @@ components:
1705
2044
  properties:
1706
2045
  internalId:
1707
2046
  type: string
2047
+ description: Returns the internal identifier for the referenced object.
1708
2048
  position:
1709
- $ref: "#/components/schemas/Position"
2049
+ description: Returns the current getPosition information for the referenced
2050
+ object.
2051
+ allOf:
2052
+ - $ref: "#/components/schemas/Position"
1710
2053
  type:
1711
- $ref: "#/components/schemas/ObjectType"
2054
+ description: Returns the type classification of the referenced object.
2055
+ allOf:
2056
+ - $ref: "#/components/schemas/ObjectType"
2057
+ description: Lightweight reference to a PDF object providing identity and type
2058
+ information. Object references enable efficient API operations by providing
2059
+ a way to identify and reference PDF objects without transferring their complete
2060
+ content. This design pattern reduces payload sizes and improves performance
2061
+ for operations that only need object identification and basic properties.
2062
+ discriminator:
2063
+ propertyName: objectRefType
2064
+ mapping:
2065
+ CHECKBOX: "#/components/schemas/FormFieldRef"
2066
+ FORM_FIELD: "#/components/schemas/FormFieldRef"
2067
+ RADIO_BUTTON: "#/components/schemas/FormFieldRef"
2068
+ PARAGRAPH: "#/components/schemas/TextTypeObjectRef"
2069
+ TEXT_LINE: "#/components/schemas/TextTypeObjectRef"
2070
+ PAGE: "#/components/schemas/PageRef"
2071
+ TEXT_FIELD: "#/components/schemas/FormFieldRef"
2072
+ oneOf:
2073
+ - $ref: "#/components/schemas/TextTypeObjectRef"
2074
+ - $ref: "#/components/schemas/PageRef"
2075
+ - $ref: "#/components/schemas/FormFieldRef"
1712
2076
  ObjectType:
1713
2077
  type: string
2078
+ description: "Enumeration of PDF object types supported by the PDFDancer API.\
2079
+ \ This enum categorizes the different types of objects that can exist within\
2080
+ \ a PDF document, enabling type-safe operations and filtering across the API.\
2081
+ \ Each type represents a distinct category of PDF content with specific manipulation\
2082
+ \ capabilities and properties."
2083
+ x-enum-descriptions:
2084
+ - Root PDF document object containing all pages and metadata
2085
+ - Individual page within the PDF document
2086
+ - Single character or glyph element
2087
+ - Text paragraph or block element
2088
+ - Embedded image or graphics element
2089
+ - Vector path or shape element
2090
+ - Linear path segment
2091
+ - Rectangular shape element
2092
+ - Bezier curve path element
2093
+ - Clipping region or mask
2094
+ - FormXObject container
2095
+ - Interactive acroform field element
2096
+ - ""
2097
+ - ""
2098
+ - ""
2099
+ - ""
2100
+ - ""
2101
+ - ""
2102
+ - ""
1714
2103
  enum:
1715
2104
  - PDF
1716
2105
  - PAGE
1717
- - CHARACTER
2106
+ - TEXT_ELEMENT
1718
2107
  - PARAGRAPH
1719
2108
  - IMAGE
1720
2109
  - PATH
@@ -1728,9 +2117,15 @@ components:
1728
2117
  - TEXT_LINE
1729
2118
  - TEXT_FIELD
1730
2119
  - RADIO_BUTTON
1731
- - CHECK_BOX
2120
+ - BUTTON
2121
+ - DROPDOWN
2122
+ - CHECKBOX
1732
2123
  Orientation:
1733
2124
  type: string
2125
+ description: Enumeration of page orientations.
2126
+ x-enum-descriptions:
2127
+ - Portrait orientation (height \> width)
2128
+ - Landscape orientation (width \> height)
1734
2129
  enum:
1735
2130
  - PORTRAIT
1736
2131
  - LANDSCAPE
@@ -1739,10 +2134,24 @@ components:
1739
2134
  properties:
1740
2135
  id:
1741
2136
  type: string
2137
+ description: Returns the unique identifier for this PDF object.
1742
2138
  position:
1743
- $ref: "#/components/schemas/Position"
2139
+ description: Returns the spatial getPosition information for this object.
2140
+ allOf:
2141
+ - $ref: "#/components/schemas/Position"
1744
2142
  objectType:
1745
- $ref: "#/components/schemas/ObjectType"
2143
+ description: "Returns the specific object type for this PDF object. This\
2144
+ \ method must be implemented by concrete subclasses to identify their\
2145
+ \ specific type, enabling type-safe operations and filtering."
2146
+ allOf:
2147
+ - $ref: "#/components/schemas/ObjectType"
2148
+ description: |-
2149
+ Abstract base class for all PDF objects that can be manipulated within the API. This class provides the fundamental properties and behaviors shared by all PDF content elements, including getPosition tracking, identification, and object reference generation.
2150
+
2151
+
2152
+ The class uses Jackson polymorphic serialization to handle different concrete types
2153
+ during JSON serialization/deserialization, enabling type-safe API operations
2154
+ while maintaining flexibility for different PDF object types.
1746
2155
  discriminator:
1747
2156
  propertyName: type
1748
2157
  mapping:
@@ -1774,6 +2183,10 @@ components:
1774
2183
  toPageIndex:
1775
2184
  type: integer
1776
2185
  format: int32
2186
+ description: "Request record for reordering pages within a PDF document. This\
2187
+ \ immutable record specifies a page movement operation, defining which page\
2188
+ \ should be moved and where it should be repositioned in the document's page\
2189
+ \ sequence."
1777
2190
  PageRef:
1778
2191
  required:
1779
2192
  - orientation
@@ -1798,9 +2211,12 @@ components:
1798
2211
  height:
1799
2212
  type: number
1800
2213
  format: double
2214
+ description: "Represents PDF page dimensions, supporting both standard sizes\
2215
+ \ and custom dimensions. Dimensions are specified in points (1/72 inch)."
1801
2216
  PageSnapshot:
1802
2217
  required:
1803
2218
  - elements
2219
+ - fonts
1804
2220
  - pageRef
1805
2221
  type: object
1806
2222
  properties:
@@ -1810,20 +2226,35 @@ components:
1810
2226
  type: array
1811
2227
  items:
1812
2228
  $ref: "#/components/schemas/ObjectRef"
2229
+ fonts:
2230
+ type: array
2231
+ items:
2232
+ $ref: "#/components/schemas/DocumentFontInfoDto"
2233
+ description: "Represents a complete snapshot of a single PDF page including\
2234
+ \ its metadata and all elements. This response aggregates page information\
2235
+ \ and all contained objects (paragraphs, images, etc.) into a single response,\
2236
+ \ reducing the number of API calls needed to retrieve page content."
1813
2237
  Paragraph:
1814
2238
  type: object
2239
+ description: Represents a paragraph or text block within a PDF document. This
2240
+ class encapsulates paragraph-level text content with unified formatting properties
2241
+ and access to individual character elements for detailed manipulation. Provides
2242
+ both block-level text operations and character-level granularity.
1815
2243
  allOf:
1816
2244
  - $ref: "#/components/schemas/PDFObject"
1817
2245
  - type: object
1818
2246
  properties:
1819
2247
  objectType:
1820
- $ref: "#/components/schemas/ObjectType"
2248
+ description: Returns the object type for this paragraph.
2249
+ allOf:
2250
+ - $ref: "#/components/schemas/ObjectType"
1821
2251
  lines:
1822
2252
  type: array
1823
2253
  items:
1824
2254
  $ref: "#/components/schemas/TextLine"
1825
2255
  lineSpacings:
1826
2256
  type: array
2257
+ description: Gets the line spacing factors between consecutive lines.
1827
2258
  items:
1828
2259
  type: number
1829
2260
  format: double
@@ -1833,31 +2264,71 @@ components:
1833
2264
  type: string
1834
2265
  Path:
1835
2266
  type: object
2267
+ description: "Represents a complex vector path consisting of multiple path segments.\
2268
+ \ This class encapsulates vector graphics data within PDF documents, composed\
2269
+ \ of various path elements like lines, curves, and shapes. Provides automatic\
2270
+ \ getPosition calculation based on constituent segments."
1836
2271
  allOf:
1837
2272
  - $ref: "#/components/schemas/PDFObject"
1838
2273
  - type: object
1839
2274
  properties:
1840
- position:
1841
- $ref: "#/components/schemas/Position"
1842
2275
  pathSegments:
1843
2276
  type: array
2277
+ description: Returns the list of path segments that compose this path.
1844
2278
  items:
1845
2279
  $ref: "#/components/schemas/PathSegment"
2280
+ evenOddFill:
2281
+ type: boolean
2282
+ description: Returns whether even-odd fill rule should be used (true)
2283
+ or nonzero (false). Null means default (nonzero).
1846
2284
  objectType:
1847
- $ref: "#/components/schemas/ObjectType"
2285
+ description: Returns the object type for this path.
2286
+ allOf:
2287
+ - $ref: "#/components/schemas/ObjectType"
1848
2288
  PathSegment:
1849
2289
  type: object
1850
- allOf:
1851
- - $ref: "#/components/schemas/PDFObject"
1852
- - type: object
1853
- properties:
1854
- strokeColor:
1855
- $ref: "#/components/schemas/Color"
1856
- fillColor:
1857
- $ref: "#/components/schemas/Color"
1858
- strokeWidth:
2290
+ properties:
2291
+ strokeColor:
2292
+ description: Color used for drawing the segment's outline or stroke.
2293
+ allOf:
2294
+ - $ref: "#/components/schemas/Color"
2295
+ fillColor:
2296
+ description: Color used for filling the segment's interior area (if applicable).
2297
+ allOf:
2298
+ - $ref: "#/components/schemas/Color"
2299
+ dashArray:
2300
+ type: array
2301
+ description: Dash pattern for stroking the path segment. Interpreted as
2302
+ alternating on/off lengths. Null or empty means solid line. Values are
2303
+ in user space units.
2304
+ items:
1859
2305
  type: number
1860
2306
  format: double
2307
+ dashPhase:
2308
+ type: number
2309
+ description: Dash phase (offset) into the dash pattern in user space units.
2310
+ Null or zero means no offset.
2311
+ format: double
2312
+ strokeWidth:
2313
+ type: number
2314
+ description: Width of the stroke line in PDF coordinate units.
2315
+ format: double
2316
+ description: "Abstract base class for individual path segments within vector\
2317
+ \ paths. This class provides common properties for path elements including\
2318
+ \ stroke and fill colors, line width, and positioning. Concrete subclasses\
2319
+ \ implement specific geometric shapes like lines, curves, and bezier segments."
2320
+ discriminator:
2321
+ propertyName: segmentType
2322
+ mapping:
2323
+ line: "#/components/schemas/Line"
2324
+ LINE: "#/components/schemas/Line"
2325
+ BEZIER: "#/components/schemas/Bezier"
2326
+ bezier: "#/components/schemas/Bezier"
2327
+ allOf:
2328
+ - $ref: "#/components/schemas/PDFObject"
2329
+ oneOf:
2330
+ - $ref: "#/components/schemas/Line"
2331
+ - $ref: "#/components/schemas/Bezier"
1861
2332
  Point:
1862
2333
  required:
1863
2334
  - x
@@ -1870,6 +2341,10 @@ components:
1870
2341
  "y":
1871
2342
  type: number
1872
2343
  format: double
2344
+ description: "Immutable point record representing 2D coordinates. This record\
2345
+ \ provides a simple and efficient way to represent coordinate pairs within\
2346
+ \ PDF documents, with conversion utilities for interoperability with Java's\
2347
+ \ standard geometry classes."
1873
2348
  Position:
1874
2349
  type: object
1875
2350
  properties:
@@ -1881,26 +2356,54 @@ components:
1881
2356
  type: string
1882
2357
  x:
1883
2358
  type: number
2359
+ description: "Returns the X coordinate of this getPosition. If no bounding\
2360
+ \ rectangle is defined, returns -1 as a sentinel value."
1884
2361
  format: double
1885
2362
  "y":
1886
2363
  type: number
2364
+ description: "Returns the Y coordinate of this getPosition. If no bounding\
2365
+ \ rectangle is defined, returns -1 as a sentinel value."
1887
2366
  format: double
1888
2367
  pageIndex:
1889
2368
  type: integer
2369
+ description: Returns the page number where this getPosition is located.
1890
2370
  format: int32
1891
2371
  shape:
1892
- $ref: "#/components/schemas/Position.ShapeType"
2372
+ description: Returns the geometric shape type of this getPosition.
2373
+ allOf:
2374
+ - $ref: "#/components/schemas/Position.ShapeType"
1893
2375
  mode:
1894
- $ref: "#/components/schemas/Position.PositionMode"
2376
+ description: Returns the getPosition matching mode.
2377
+ allOf:
2378
+ - $ref: "#/components/schemas/Position.PositionMode"
1895
2379
  boundingRect:
1896
- $ref: "#/components/schemas/BoundingRect"
2380
+ description: Returns the bounding rectangle defining the spatial extent
2381
+ of this getPosition.
2382
+ allOf:
2383
+ - $ref: "#/components/schemas/BoundingRect"
2384
+ description: "Represents spatial positioning and location information for PDF\
2385
+ \ objects. This class encapsulates various ways to specify object locations\
2386
+ \ within PDF documents, including page-based coordinates, bounding rectangles,\
2387
+ \ and different positioning modes. It supports both precise coordinate positioning\
2388
+ \ and area-based location specifications."
1897
2389
  Position.PositionMode:
1898
2390
  type: string
2391
+ description: Defines how getPosition matching should be performed when searching
2392
+ for objects.
2393
+ x-enum-descriptions:
2394
+ - Objects that intersect with the specified getPosition area
2395
+ - Objects completely contained within the specified getPosition area
1899
2396
  enum:
1900
2397
  - INTERSECT
1901
2398
  - CONTAINS
1902
2399
  Position.ShapeType:
1903
2400
  type: string
2401
+ description: Defines the geometric shape type used for getPosition specification.
2402
+ x-enum-descriptions:
2403
+ - Single point coordinate
2404
+ - Linear shape between two points
2405
+ - Circular area with radius
2406
+ - Rectangular area with width and height
1904
2407
  enum:
1905
2408
  - POINT
1906
2409
  - LINE
@@ -1960,13 +2463,21 @@ components:
1960
2463
  properties:
1961
2464
  width:
1962
2465
  type: number
2466
+ description: Returns the width dimension.
1963
2467
  format: double
1964
2468
  height:
1965
2469
  type: number
2470
+ description: Returns the height dimension.
1966
2471
  format: double
1967
2472
  area:
1968
2473
  type: number
2474
+ description: "Calculates and returns the total area. This method computes\
2475
+ \ the area by multiplying width and height, useful for size comparisons\
2476
+ \ and layout calculations."
1969
2477
  format: double
2478
+ description: "Represents dimensional measurements with width and height properties.\
2479
+ \ This class encapsulates size information for PDF objects (images, forms,\
2480
+ \ etc.), providing both individual dimension access and calculated area methods."
1970
2481
  Subscription:
1971
2482
  required:
1972
2483
  - end
@@ -1984,22 +2495,38 @@ components:
1984
2495
  $ref: "#/components/schemas/Product"
1985
2496
  TextElement:
1986
2497
  type: object
2498
+ description: "Represents a single character or glyph within a PDF document.\
2499
+ \ This class encapsulates individual character properties including the character\
2500
+ \ content, font styling, color, and getPosition for fine-grained text manipulation\
2501
+ \ and character-level formatting operations."
1987
2502
  allOf:
1988
2503
  - $ref: "#/components/schemas/PDFObject"
1989
2504
  - type: object
1990
2505
  properties:
1991
2506
  text:
1992
2507
  type: string
2508
+ description: The character or glyph content (typically a single character
2509
+ string).
1993
2510
  font:
1994
- $ref: "#/components/schemas/Font"
2511
+ description: Font properties for rendering this character.
2512
+ allOf:
2513
+ - $ref: "#/components/schemas/Font"
1995
2514
  color:
1996
- $ref: "#/components/schemas/Color"
2515
+ description: Color properties for rendering this character.
2516
+ allOf:
2517
+ - $ref: "#/components/schemas/Color"
1997
2518
  objectType:
1998
- $ref: "#/components/schemas/ObjectType"
2519
+ description: Returns the object type for this character.
2520
+ allOf:
2521
+ - $ref: "#/components/schemas/ObjectType"
1999
2522
  status:
2000
2523
  $ref: "#/components/schemas/TextStatus"
2001
2524
  TextLine:
2002
2525
  type: object
2526
+ description: Represents a paragraph or text block within a PDF document. This
2527
+ class encapsulates paragraph-level text content with unified formatting properties
2528
+ and access to individual character elements for detailed manipulation. Provides
2529
+ both block-level text operations and character-level granularity.
2003
2530
  allOf:
2004
2531
  - $ref: "#/components/schemas/PDFObject"
2005
2532
  - type: object
@@ -2010,7 +2537,9 @@ components:
2010
2537
  fontName:
2011
2538
  type: string
2012
2539
  objectType:
2013
- $ref: "#/components/schemas/ObjectType"
2540
+ description: Returns the object type for this paragraph.
2541
+ allOf:
2542
+ - $ref: "#/components/schemas/ObjectType"
2014
2543
  textElements:
2015
2544
  type: array
2016
2545
  items:
@@ -2021,7 +2550,6 @@ components:
2021
2550
  type: string
2022
2551
  TextStatus:
2023
2552
  required:
2024
- - fontRecommendation
2025
2553
  - fontType
2026
2554
  type: object
2027
2555
  properties:
@@ -2031,10 +2559,45 @@ components:
2031
2559
  type: boolean
2032
2560
  fontType:
2033
2561
  $ref: "#/components/schemas/FontType"
2034
- fontRecommendation:
2035
- $ref: "#/components/schemas/FontRecommendationDto"
2562
+ fontInfoDto:
2563
+ $ref: "#/components/schemas/DocumentFontInfoDto"
2036
2564
  warning:
2037
2565
  type: string
2566
+ TextTypeObjectRef:
2567
+ required:
2568
+ - children
2569
+ - color
2570
+ - fontName
2571
+ - fontSize
2572
+ - lineSpacings
2573
+ - status
2574
+ - text
2575
+ type: object
2576
+ allOf:
2577
+ - $ref: "#/components/schemas/ObjectRef"
2578
+ - type: object
2579
+ properties:
2580
+ text:
2581
+ type: string
2582
+ fontName:
2583
+ type: string
2584
+ fontSize:
2585
+ type: number
2586
+ format: double
2587
+ lineSpacings:
2588
+ type: array
2589
+ description: Gets the line spacing factors between consecutive lines.
2590
+ items:
2591
+ type: number
2592
+ format: double
2593
+ children:
2594
+ type: array
2595
+ items:
2596
+ $ref: "#/components/schemas/TextTypeObjectRef"
2597
+ color:
2598
+ $ref: "#/components/schemas/Color"
2599
+ status:
2600
+ $ref: "#/components/schemas/TextStatus"
2038
2601
  TimeInterval:
2039
2602
  type: string
2040
2603
  enum:
@@ -2064,6 +2627,7 @@ components:
2064
2627
  type: string
2065
2628
  status:
2066
2629
  type: string
2630
+ description: Response containing user's tenant information with their role.
2067
2631
  VersionResponse:
2068
2632
  required:
2069
2633
  - color