@checkcourt/sdk 0.4.0 → 0.5.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.
@@ -1447,6 +1447,213 @@ export interface paths {
1447
1447
  patch?: never;
1448
1448
  trace?: never;
1449
1449
  };
1450
+ "/bookings/{id}/metadata": {
1451
+ parameters: {
1452
+ query?: never;
1453
+ header?: never;
1454
+ path?: never;
1455
+ cookie?: never;
1456
+ };
1457
+ /**
1458
+ * Read app metadata attached to a booking
1459
+ * @description **Required scope:** `bookings:read`
1460
+ *
1461
+ * Returns the calling app's own keys on this booking and the keys of other apps that the caller declares under `reads.metadata` in its manifest, the producer declares under `shares.metadata`, and the club approved. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1462
+ */
1463
+ get: operations["getBookingMetadata"];
1464
+ put?: never;
1465
+ post?: never;
1466
+ delete?: never;
1467
+ options?: never;
1468
+ head?: never;
1469
+ patch?: never;
1470
+ trace?: never;
1471
+ };
1472
+ "/bookings/{id}/metadata/{key}": {
1473
+ parameters: {
1474
+ query?: never;
1475
+ header?: never;
1476
+ path?: never;
1477
+ cookie?: never;
1478
+ };
1479
+ get?: never;
1480
+ /**
1481
+ * Attach or replace a metadata value on a booking
1482
+ * @description **Required scope:** `bookings:read`
1483
+ *
1484
+ * Writes one of the app's own keys. The key must be declared under `shares.metadata` with `object: "booking"`. A changed value sends `app.metadata_changed` to the apps the club connected to yours for this key. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1485
+ */
1486
+ put: operations["putBookingMetadata"];
1487
+ post?: never;
1488
+ /**
1489
+ * Remove one of the app's metadata values from a booking
1490
+ * @description **Required scope:** `bookings:read`
1491
+ *
1492
+ * Removes the app's own value. Works for keys a newer manifest no longer declares, so an app can clean up. `deleted: false` when there was nothing to remove. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1493
+ */
1494
+ delete: operations["deleteBookingMetadata"];
1495
+ options?: never;
1496
+ head?: never;
1497
+ patch?: never;
1498
+ trace?: never;
1499
+ };
1500
+ "/courts/{id}/metadata": {
1501
+ parameters: {
1502
+ query?: never;
1503
+ header?: never;
1504
+ path?: never;
1505
+ cookie?: never;
1506
+ };
1507
+ /**
1508
+ * Read app metadata attached to a court
1509
+ * @description **Required scope:** `courts:read`
1510
+ *
1511
+ * Returns the calling app's own keys on this court and the keys of other apps that the caller declares under `reads.metadata` in its manifest, the producer declares under `shares.metadata`, and the club approved. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1512
+ */
1513
+ get: operations["getCourtMetadata"];
1514
+ put?: never;
1515
+ post?: never;
1516
+ delete?: never;
1517
+ options?: never;
1518
+ head?: never;
1519
+ patch?: never;
1520
+ trace?: never;
1521
+ };
1522
+ "/courts/{id}/metadata/{key}": {
1523
+ parameters: {
1524
+ query?: never;
1525
+ header?: never;
1526
+ path?: never;
1527
+ cookie?: never;
1528
+ };
1529
+ get?: never;
1530
+ /**
1531
+ * Attach or replace a metadata value on a court
1532
+ * @description **Required scope:** `courts:read`
1533
+ *
1534
+ * Writes one of the app's own keys. The key must be declared under `shares.metadata` with `object: "court"`. A changed value sends `app.metadata_changed` to the apps the club connected to yours for this key. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1535
+ */
1536
+ put: operations["putCourtMetadata"];
1537
+ post?: never;
1538
+ /**
1539
+ * Remove one of the app's metadata values from a court
1540
+ * @description **Required scope:** `courts:read`
1541
+ *
1542
+ * Removes the app's own value. Works for keys a newer manifest no longer declares, so an app can clean up. `deleted: false` when there was nothing to remove. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1543
+ */
1544
+ delete: operations["deleteCourtMetadata"];
1545
+ options?: never;
1546
+ head?: never;
1547
+ patch?: never;
1548
+ trace?: never;
1549
+ };
1550
+ "/members/{id}/metadata": {
1551
+ parameters: {
1552
+ query?: never;
1553
+ header?: never;
1554
+ path?: never;
1555
+ cookie?: never;
1556
+ };
1557
+ /**
1558
+ * Read app metadata attached to a member
1559
+ * @description **Required scope:** `members:read`
1560
+ *
1561
+ * Returns the calling app's own keys on this member and the keys of other apps that the caller declares under `reads.metadata` in its manifest, the producer declares under `shares.metadata`, and the club approved. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1562
+ */
1563
+ get: operations["getMemberMetadata"];
1564
+ put?: never;
1565
+ post?: never;
1566
+ delete?: never;
1567
+ options?: never;
1568
+ head?: never;
1569
+ patch?: never;
1570
+ trace?: never;
1571
+ };
1572
+ "/members/{id}/metadata/{key}": {
1573
+ parameters: {
1574
+ query?: never;
1575
+ header?: never;
1576
+ path?: never;
1577
+ cookie?: never;
1578
+ };
1579
+ get?: never;
1580
+ /**
1581
+ * Attach or replace a metadata value on a member
1582
+ * @description **Required scope:** `members:read`
1583
+ *
1584
+ * Writes one of the app's own keys. The key must be declared under `shares.metadata` with `object: "member"`. A changed value sends `app.metadata_changed` to the apps the club connected to yours for this key. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1585
+ */
1586
+ put: operations["putMemberMetadata"];
1587
+ post?: never;
1588
+ /**
1589
+ * Remove one of the app's metadata values from a member
1590
+ * @description **Required scope:** `members:read`
1591
+ *
1592
+ * Removes the app's own value. Works for keys a newer manifest no longer declares, so an app can clean up. `deleted: false` when there was nothing to remove. Only for club app installation tokens (`cca_`); member app tokens and API keys receive `403`. Data between apps flows only along connections the club approved under Admin, Apps, Verbindungen.
1593
+ */
1594
+ delete: operations["deleteMemberMetadata"];
1595
+ options?: never;
1596
+ head?: never;
1597
+ patch?: never;
1598
+ trace?: never;
1599
+ };
1600
+ "/app/events": {
1601
+ parameters: {
1602
+ query?: never;
1603
+ header?: never;
1604
+ path?: never;
1605
+ cookie?: never;
1606
+ };
1607
+ get?: never;
1608
+ put?: never;
1609
+ /**
1610
+ * Publish an event to connected apps
1611
+ * @description **Scopes:** none for the event itself; a `subject` needs the read scope of its object type.
1612
+ *
1613
+ * Only for club app installation tokens (`cca_`). The name must be declared under `emits` in the manifest. CheckCourt delivers the event as `app.<your app slug>.<name>` through the regular signed webhooks, only to club installations that declare it under `subscribes` and that the club connected to yours. At most 60 events per minute per installation (`429` with `Retry-After` beyond).
1614
+ */
1615
+ post: operations["publishAppEvent"];
1616
+ delete?: never;
1617
+ options?: never;
1618
+ head?: never;
1619
+ patch?: never;
1620
+ trace?: never;
1621
+ };
1622
+ "/app/notifications": {
1623
+ parameters: {
1624
+ query?: never;
1625
+ header?: never;
1626
+ path?: never;
1627
+ cookie?: never;
1628
+ };
1629
+ get?: never;
1630
+ put?: never;
1631
+ /**
1632
+ * Notify a member through CheckCourt
1633
+ * @description **Required scope:** `notifications:send` (club app installation tokens `cca_` and member app tokens `ccu_`; API keys receive `403`).
1634
+ *
1635
+ * CheckCourt delivers a short message to one member: in their CheckCourt inbox and, if they allow it, by email. Your app never learns the member's contact data.
1636
+ *
1637
+ * `recipient` accepts only ids your app legitimately received:
1638
+ * - the CheckCourt user id, if the installation holds `members:read`;
1639
+ * - the per-installation pseudonym (`psn_...`) from an extension context token;
1640
+ * - the pairwise id (`usr_...`) from `GET /api/v1/me` of a member who connected your app.
1641
+ *
1642
+ * A member app token may only notify its own member. Unknown ids, ids of other clubs, pending or removed members and ids your app may not use all return the same `404`.
1643
+ *
1644
+ * `url` is either a path inside CheckCourt (`/booking?date=2026-05-01`, not `/api/...`) or an `https` link on an origin your app registered (a redirect URI or the listing's connect URL).
1645
+ *
1646
+ * Limits: 60 per minute and 1,000 per day per installation, 10 per day per member and app (`429` with `Retry-After`). CheckCourt sends at most 3 emails per member and app per day; further messages only reach the inbox. With the same `idempotency_key` within 24 hours, the first notification's id comes back and nothing is sent again.
1647
+ *
1648
+ * The response never reveals whether the member muted your app. If the club paused your app's notifications, the request fails with `422 BUSINESS_RULE`.
1649
+ */
1650
+ post: operations["sendAppNotification"];
1651
+ delete?: never;
1652
+ options?: never;
1653
+ head?: never;
1654
+ patch?: never;
1655
+ trace?: never;
1656
+ };
1450
1657
  }
1451
1658
  export type webhooks = Record<string, never>;
1452
1659
  export interface components {
@@ -2494,6 +2701,134 @@ export interface components {
2494
2701
  name: string;
2495
2702
  }[];
2496
2703
  };
2704
+ ObjectMetadataEntry: {
2705
+ /** @description Any JSON value except null, at most 4096 bytes serialized */
2706
+ value: unknown;
2707
+ /** Format: date-time */
2708
+ updated_at: string;
2709
+ };
2710
+ /**
2711
+ * @example {
2712
+ * "object": {
2713
+ * "type": "booking",
2714
+ * "id": "bk_123"
2715
+ * },
2716
+ * "metadata": {
2717
+ * "wingfield": {
2718
+ * "video_url": {
2719
+ * "value": "https://video.example/abc",
2720
+ * "updated_at": "2026-10-06T18:02:11.000Z"
2721
+ * }
2722
+ * }
2723
+ * }
2724
+ * }
2725
+ */
2726
+ ObjectMetadata: {
2727
+ object: {
2728
+ /** @enum {string} */
2729
+ type: "booking" | "court" | "member";
2730
+ id: string;
2731
+ };
2732
+ /** @description Grouped by app slug, then by key. Contains the calling app's own keys and the keys of other apps that the caller declares under `reads.metadata` and the club approved. */
2733
+ metadata: {
2734
+ [key: string]: {
2735
+ [key: string]: components["schemas"]["ObjectMetadataEntry"];
2736
+ };
2737
+ };
2738
+ };
2739
+ ObjectMetadataWritten: {
2740
+ object: {
2741
+ /** @enum {string} */
2742
+ type: "booking" | "court" | "member";
2743
+ id: string;
2744
+ };
2745
+ key: string;
2746
+ value: unknown;
2747
+ /** Format: date-time */
2748
+ updated_at: string;
2749
+ };
2750
+ /**
2751
+ * @example {
2752
+ * "name": "door_opened",
2753
+ * "data": {
2754
+ * "court_id": 3
2755
+ * },
2756
+ * "subject": {
2757
+ * "type": "court",
2758
+ * "id": "3"
2759
+ * }
2760
+ * }
2761
+ */
2762
+ PublishAppEventRequest: {
2763
+ /** @description An event the app declares under `emits` in its manifest */
2764
+ name: string;
2765
+ /** @description At most 4096 bytes serialized. Validated against the event's `schema` if the manifest declares one. Defaults to `{}`. */
2766
+ data?: {
2767
+ [key: string]: unknown;
2768
+ };
2769
+ /** @description Optional club object the event is about; becomes `object` in the delivery. Needs the read scope of that object type. Without it, `object` is the sending installation. */
2770
+ subject?: {
2771
+ /** @enum {string} */
2772
+ type: "booking" | "court" | "member";
2773
+ id: string;
2774
+ };
2775
+ };
2776
+ PublishedAppEvent: {
2777
+ /** @description `evt_…`, equal to `CheckCourt-Event-Id` of every delivery */
2778
+ id: string;
2779
+ /**
2780
+ * @description `app.<your app slug>.<name>`
2781
+ * @example app.door-co.door_opened
2782
+ */
2783
+ type: string;
2784
+ };
2785
+ /**
2786
+ * @example {
2787
+ * "value": "https://video.example/abc"
2788
+ * }
2789
+ */
2790
+ ObjectMetadataWrite: {
2791
+ /** @description Any JSON value except null, at most 4096 bytes serialized */
2792
+ value: unknown;
2793
+ };
2794
+ SendNotificationRequest: {
2795
+ /**
2796
+ * @description CheckCourt user id (needs `members:read`), extension pseudonym `psn_...` or pairwise id `usr_...`
2797
+ * @example psn_4hQ2v0bD1xZk8yWm3nT7aLc9eRf
2798
+ */
2799
+ recipient: string;
2800
+ /**
2801
+ * @description One line of plain text
2802
+ * @example Deine Ballmaschine ist bereit
2803
+ */
2804
+ title: string;
2805
+ /**
2806
+ * @description Plain text; line breaks are kept, HTML is shown as text
2807
+ * @example Ab 17:30 Uhr auf Platz 3.
2808
+ */
2809
+ body: string;
2810
+ /**
2811
+ * @description Path inside CheckCourt or https link on an origin your app registered
2812
+ * @example /booking?date=2026-05-01
2813
+ */
2814
+ url?: string;
2815
+ /**
2816
+ * @description Your own label for the kind of message, stored for later filtering
2817
+ * @example reminder
2818
+ */
2819
+ category?: string;
2820
+ /**
2821
+ * @description Repeat a request safely: the same key within 24 hours returns the first notification
2822
+ * @example reservation-8812-reminder
2823
+ */
2824
+ idempotency_key?: string;
2825
+ };
2826
+ SendNotificationResponse: {
2827
+ /** @example ntf_k3x9... */
2828
+ id: string;
2829
+ /** @description Always true; whether and how the member sees it stays private */
2830
+ accepted: boolean;
2831
+ };
2497
2832
  };
2498
2833
  responses: {
2499
2834
  /** @description Not authenticated: header missing, key unknown/revoked/expired, or the API key feature is disabled for this club */
@@ -5892,4 +6227,339 @@ export interface operations {
5892
6227
  429: components["responses"]["RateLimited"];
5893
6228
  };
5894
6229
  };
6230
+ getBookingMetadata: {
6231
+ parameters: {
6232
+ query?: never;
6233
+ header?: never;
6234
+ path: {
6235
+ /** @description Booking id */
6236
+ id: string;
6237
+ };
6238
+ cookie?: never;
6239
+ };
6240
+ requestBody?: never;
6241
+ responses: {
6242
+ /** @description Success */
6243
+ 200: {
6244
+ headers: {
6245
+ [name: string]: unknown;
6246
+ };
6247
+ content: {
6248
+ "application/json": components["schemas"]["ObjectMetadata"];
6249
+ };
6250
+ };
6251
+ 401: components["responses"]["Unauthorized"];
6252
+ 403: components["responses"]["Forbidden"];
6253
+ 404: components["responses"]["NotFound"];
6254
+ 429: components["responses"]["RateLimited"];
6255
+ };
6256
+ };
6257
+ putBookingMetadata: {
6258
+ parameters: {
6259
+ query?: never;
6260
+ header?: never;
6261
+ path: {
6262
+ /** @description Booking id */
6263
+ id: string;
6264
+ /** @description A key your app declares under `shares.metadata` for this object type */
6265
+ key: string;
6266
+ };
6267
+ cookie?: never;
6268
+ };
6269
+ requestBody: {
6270
+ content: {
6271
+ "application/json": components["schemas"]["ObjectMetadataWrite"];
6272
+ };
6273
+ };
6274
+ responses: {
6275
+ /** @description Success */
6276
+ 200: {
6277
+ headers: {
6278
+ [name: string]: unknown;
6279
+ };
6280
+ content: {
6281
+ "application/json": components["schemas"]["ObjectMetadataWritten"];
6282
+ };
6283
+ };
6284
+ 400: components["responses"]["ValidationError"];
6285
+ 401: components["responses"]["Unauthorized"];
6286
+ 403: components["responses"]["Forbidden"];
6287
+ 404: components["responses"]["NotFound"];
6288
+ 429: components["responses"]["RateLimited"];
6289
+ };
6290
+ };
6291
+ deleteBookingMetadata: {
6292
+ parameters: {
6293
+ query?: never;
6294
+ header?: never;
6295
+ path: {
6296
+ /** @description Booking id */
6297
+ id: string;
6298
+ /** @description A key your app declares under `shares.metadata` for this object type */
6299
+ key: string;
6300
+ };
6301
+ cookie?: never;
6302
+ };
6303
+ requestBody?: never;
6304
+ responses: {
6305
+ /** @description Success */
6306
+ 200: {
6307
+ headers: {
6308
+ [name: string]: unknown;
6309
+ };
6310
+ content: {
6311
+ "application/json": {
6312
+ deleted: boolean;
6313
+ };
6314
+ };
6315
+ };
6316
+ 400: components["responses"]["ValidationError"];
6317
+ 401: components["responses"]["Unauthorized"];
6318
+ 403: components["responses"]["Forbidden"];
6319
+ 429: components["responses"]["RateLimited"];
6320
+ };
6321
+ };
6322
+ getCourtMetadata: {
6323
+ parameters: {
6324
+ query?: never;
6325
+ header?: never;
6326
+ path: {
6327
+ /** @description Numeric court id */
6328
+ id: number;
6329
+ };
6330
+ cookie?: never;
6331
+ };
6332
+ requestBody?: never;
6333
+ responses: {
6334
+ /** @description Success */
6335
+ 200: {
6336
+ headers: {
6337
+ [name: string]: unknown;
6338
+ };
6339
+ content: {
6340
+ "application/json": components["schemas"]["ObjectMetadata"];
6341
+ };
6342
+ };
6343
+ 401: components["responses"]["Unauthorized"];
6344
+ 403: components["responses"]["Forbidden"];
6345
+ 404: components["responses"]["NotFound"];
6346
+ 429: components["responses"]["RateLimited"];
6347
+ };
6348
+ };
6349
+ putCourtMetadata: {
6350
+ parameters: {
6351
+ query?: never;
6352
+ header?: never;
6353
+ path: {
6354
+ /** @description Numeric court id */
6355
+ id: number;
6356
+ /** @description A key your app declares under `shares.metadata` for this object type */
6357
+ key: string;
6358
+ };
6359
+ cookie?: never;
6360
+ };
6361
+ requestBody: {
6362
+ content: {
6363
+ "application/json": components["schemas"]["ObjectMetadataWrite"];
6364
+ };
6365
+ };
6366
+ responses: {
6367
+ /** @description Success */
6368
+ 200: {
6369
+ headers: {
6370
+ [name: string]: unknown;
6371
+ };
6372
+ content: {
6373
+ "application/json": components["schemas"]["ObjectMetadataWritten"];
6374
+ };
6375
+ };
6376
+ 400: components["responses"]["ValidationError"];
6377
+ 401: components["responses"]["Unauthorized"];
6378
+ 403: components["responses"]["Forbidden"];
6379
+ 404: components["responses"]["NotFound"];
6380
+ 429: components["responses"]["RateLimited"];
6381
+ };
6382
+ };
6383
+ deleteCourtMetadata: {
6384
+ parameters: {
6385
+ query?: never;
6386
+ header?: never;
6387
+ path: {
6388
+ /** @description Numeric court id */
6389
+ id: number;
6390
+ /** @description A key your app declares under `shares.metadata` for this object type */
6391
+ key: string;
6392
+ };
6393
+ cookie?: never;
6394
+ };
6395
+ requestBody?: never;
6396
+ responses: {
6397
+ /** @description Success */
6398
+ 200: {
6399
+ headers: {
6400
+ [name: string]: unknown;
6401
+ };
6402
+ content: {
6403
+ "application/json": {
6404
+ deleted: boolean;
6405
+ };
6406
+ };
6407
+ };
6408
+ 400: components["responses"]["ValidationError"];
6409
+ 401: components["responses"]["Unauthorized"];
6410
+ 403: components["responses"]["Forbidden"];
6411
+ 429: components["responses"]["RateLimited"];
6412
+ };
6413
+ };
6414
+ getMemberMetadata: {
6415
+ parameters: {
6416
+ query?: never;
6417
+ header?: never;
6418
+ path: {
6419
+ /** @description The member's user id */
6420
+ id: string;
6421
+ };
6422
+ cookie?: never;
6423
+ };
6424
+ requestBody?: never;
6425
+ responses: {
6426
+ /** @description Success */
6427
+ 200: {
6428
+ headers: {
6429
+ [name: string]: unknown;
6430
+ };
6431
+ content: {
6432
+ "application/json": components["schemas"]["ObjectMetadata"];
6433
+ };
6434
+ };
6435
+ 401: components["responses"]["Unauthorized"];
6436
+ 403: components["responses"]["Forbidden"];
6437
+ 404: components["responses"]["NotFound"];
6438
+ 429: components["responses"]["RateLimited"];
6439
+ };
6440
+ };
6441
+ putMemberMetadata: {
6442
+ parameters: {
6443
+ query?: never;
6444
+ header?: never;
6445
+ path: {
6446
+ /** @description The member's user id */
6447
+ id: string;
6448
+ /** @description A key your app declares under `shares.metadata` for this object type */
6449
+ key: string;
6450
+ };
6451
+ cookie?: never;
6452
+ };
6453
+ requestBody: {
6454
+ content: {
6455
+ "application/json": components["schemas"]["ObjectMetadataWrite"];
6456
+ };
6457
+ };
6458
+ responses: {
6459
+ /** @description Success */
6460
+ 200: {
6461
+ headers: {
6462
+ [name: string]: unknown;
6463
+ };
6464
+ content: {
6465
+ "application/json": components["schemas"]["ObjectMetadataWritten"];
6466
+ };
6467
+ };
6468
+ 400: components["responses"]["ValidationError"];
6469
+ 401: components["responses"]["Unauthorized"];
6470
+ 403: components["responses"]["Forbidden"];
6471
+ 404: components["responses"]["NotFound"];
6472
+ 429: components["responses"]["RateLimited"];
6473
+ };
6474
+ };
6475
+ deleteMemberMetadata: {
6476
+ parameters: {
6477
+ query?: never;
6478
+ header?: never;
6479
+ path: {
6480
+ /** @description The member's user id */
6481
+ id: string;
6482
+ /** @description A key your app declares under `shares.metadata` for this object type */
6483
+ key: string;
6484
+ };
6485
+ cookie?: never;
6486
+ };
6487
+ requestBody?: never;
6488
+ responses: {
6489
+ /** @description Success */
6490
+ 200: {
6491
+ headers: {
6492
+ [name: string]: unknown;
6493
+ };
6494
+ content: {
6495
+ "application/json": {
6496
+ deleted: boolean;
6497
+ };
6498
+ };
6499
+ };
6500
+ 400: components["responses"]["ValidationError"];
6501
+ 401: components["responses"]["Unauthorized"];
6502
+ 403: components["responses"]["Forbidden"];
6503
+ 429: components["responses"]["RateLimited"];
6504
+ };
6505
+ };
6506
+ publishAppEvent: {
6507
+ parameters: {
6508
+ query?: never;
6509
+ header?: never;
6510
+ path?: never;
6511
+ cookie?: never;
6512
+ };
6513
+ requestBody: {
6514
+ content: {
6515
+ "application/json": components["schemas"]["PublishAppEventRequest"];
6516
+ };
6517
+ };
6518
+ responses: {
6519
+ /** @description Accepted into the outbox */
6520
+ 200: {
6521
+ headers: {
6522
+ [name: string]: unknown;
6523
+ };
6524
+ content: {
6525
+ "application/json": components["schemas"]["PublishedAppEvent"];
6526
+ };
6527
+ };
6528
+ 400: components["responses"]["ValidationError"];
6529
+ 401: components["responses"]["Unauthorized"];
6530
+ 403: components["responses"]["Forbidden"];
6531
+ 404: components["responses"]["NotFound"];
6532
+ 429: components["responses"]["RateLimited"];
6533
+ };
6534
+ };
6535
+ sendAppNotification: {
6536
+ parameters: {
6537
+ query?: never;
6538
+ header?: never;
6539
+ path?: never;
6540
+ cookie?: never;
6541
+ };
6542
+ requestBody: {
6543
+ content: {
6544
+ "application/json": components["schemas"]["SendNotificationRequest"];
6545
+ };
6546
+ };
6547
+ responses: {
6548
+ /** @description Accepted for delivery */
6549
+ 200: {
6550
+ headers: {
6551
+ [name: string]: unknown;
6552
+ };
6553
+ content: {
6554
+ "application/json": components["schemas"]["SendNotificationResponse"];
6555
+ };
6556
+ };
6557
+ 400: components["responses"]["ValidationError"];
6558
+ 401: components["responses"]["Unauthorized"];
6559
+ 403: components["responses"]["Forbidden"];
6560
+ 404: components["responses"]["NotFound"];
6561
+ 422: components["responses"]["BusinessRuleError"];
6562
+ 429: components["responses"]["RateLimited"];
6563
+ };
6564
+ };
5895
6565
  }
@@ -1 +1 @@
1
- export declare const OPENAPI_SPEC_SHA256 = "19b06dbaaf58a088e75aa53fb54d4b9ab3b3f847371cb4a3dcd90125a34fe262";
1
+ export declare const OPENAPI_SPEC_SHA256 = "b01c1f9ed8ee89d62dc6daaf41f3f27f55fe06a524660f9790c4981785eed8da";
@@ -1,2 +1,2 @@
1
1
  // Generated by scripts/generate.mjs from the CheckCourt OpenAPI spec. Do not edit.
2
- export const OPENAPI_SPEC_SHA256 = "19b06dbaaf58a088e75aa53fb54d4b9ab3b3f847371cb4a3dcd90125a34fe262";
2
+ export const OPENAPI_SPEC_SHA256 = "b01c1f9ed8ee89d62dc6daaf41f3f27f55fe06a524660f9790c4981785eed8da";