API Specification Revision History

Files changed (1) hide show
  1. old.yml 2025-08-08 16:13:29 → 21_インターフェース/1_1_API仕様書.yml 2026-02-25 09:41:03 +878 -124
old.yml 2025-08-08 16:13:29 → 21_インターフェース/1_1_API仕様書.yml 2026-02-25 09:41:03 RENAMED
@@ -1,958 +1,1712 @@
1
  openapi: 3.0.0
2
  servers:
3
  - url: https://crednex.jpx.co.jp/api/v1
4
  description: Production server
5
  - url: https://stg.crednex.jpx.co.jp/api/v1
6
  description: Staging server
7
  info:
8
  title: ETF Creation Redemption Platform (CredNex) API Specification
9
- version: 1.1.1
10
  description: |
11
  ## Outline
12
 
13
  #### Production Environment
14
 
15
  URL: https://crednex.jpx.co.jp/api/v1
16
 
17
  Available Time: Weekdays 7:00 a.m-10:00 p.m (JST)
18
 
19
  #### Demo Environment
20
 
21
  URL: https://stg.crednex.jpx.co.jp/api/v1
22
 
23
  Available Time: Weekdays 7:00 a.m-10:00 p.m (JST)
24
 
25
 
26
  #### Network
27
 
28
  - The access route is provided only via the Internet.
29
  - Global IP for each environment of this system is not fixed.
30
 
31
  ## Preparations
32
 
33
 
34
  #### API Key
35
 
36
  Getting an API key is required.
37
  An API key is an unique key for each API user.
38
  It is used for this service to identify API users.
39
  Any API users who wish to use the APIs on this service must request TSE to issue API keys in advance.
40
  The API key should be set in the X-API-KEY in header every time you send an API call.
41
 
42
 
43
  #### IP Address Whitelisting
44
 
45
  You must submit the global IP address of the system making API calls to TSE.
46
  All API keys are linked to global IP addresses, and API calls from IP addresses not submitted in advance will not be accepted.
47
 
48
 
49
  #### Rate Limits
50
 
51
- The maximum frequency of API calls is limited to approximately once every second per API key. This value is subject to change in the future.
52
- When the limit is reached, the user will receive an error response.
53
- Overly frequent access is prohibited as stated in the Terms and Conditions. If such behavior is detected, TSE may issue a warning to the user.
 
54
 
 
 
 
 
 
 
55
  ## Authorization
56
 
57
- |Method|Endpoint|MM|AP (Agency)|AP (Prop)|
58
- |:----|:----|:----|:----|:----|
59
- |GET|ANY|Available|Available|Available|
60
- |POST|/applications|Available|Available|Available|
61
- |PUT|/applications/{applicationId}/approve|N/A|Available|Available|
62
- |PUT|/applications/{applicationId}/deny|N/A|Available|Available|
63
- |PUT|/applications/{applicationId}/approveCancellationRequest|N/A|Available|Available|
64
- |PUT|/applications/{applicationId}/denyCancellationRequest|N/A|Available|Available|
65
- |PUT|/applications/{applicationId}/cancellationRequest|Available|N/A|Available|
66
-
 
67
 
 
68
  paths:
69
  /applications:
70
  get:
71
  summary: Get applicationId of creation and redemption application
72
  description: Get applicationId for which the user has permissions to view
73
  operationId: getApplicationIds
74
  tags:
75
  - applications
76
  parameters:
77
  - name: applicationDate
78
  in: query
79
  schema:
80
  type: string
81
  format: date
82
- description: Application date
83
  - name: statementFixingDate
84
  in: query
85
  schema:
86
  type: string
87
  format: date
88
- description: Statement fixing date
89
  - name: status
90
  in: query
91
  schema:
92
  type: string
93
  description: Specify the status of the creation and redemption applications
 
 
 
 
 
 
 
 
 
 
94
  responses:
95
  '200':
96
  description: Success operation
97
  content:
98
  application/json:
99
  schema:
100
  type: object
101
  properties:
102
  applications:
103
  type: array
104
  items:
105
  type: object
106
  properties:
107
  id:
108
  type: string
109
  example: '2024123100010001'
110
  description: Application ID
111
  status:
112
  type: string
113
  enum:
114
  - "ApplicationInProcessAP"
115
  - "ApplicationInProcessAM"
116
  - "Accepted"
117
  - "StatementInProcessTB"
118
  - "StatementReturnedForRevisionAM"
119
  - "StatementFixed"
120
  - "CancelRequestInProcessAP"
121
  - "CancelRequestInProcessAM"
122
- - "Canceled"
 
 
 
 
123
  hasMore:
124
  type: boolean
125
  example: false
126
  description: Whether there are more than 1,000 application IDs. If true, please send a request again by narrowing down the conditions such as application date, statement fixing date, and status.
127
  post:
128
  summary: Register for your creation/redemption application
129
  description: |
130
  Fill in the information required to apply for creation/redemption and register your application.
131
 
132
  If `isClearing` is not specified, the CredNex system will automatically complete the value of `isClearing` for the application.
133
  The value set depends on `clearingType` of the issue being applied for.
134
  If the `clearingType` in each issue's basic information is Clearing or Selectable, `isClearing` will be set to true and the application will be registered as cleared by JSCC.
135
  If the `clearingType` is Non-Clearing, `isClearing` will be set to false and the application will be registered as non-cleared by JSCC.
136
  operationId: registerApplication
137
  tags:
138
  - applications
139
  requestBody:
140
  required: true
141
  content:
142
  application/json:
143
  schema:
144
  $ref: '#/components/schemas/Application'
145
  responses:
146
  '201':
147
  description: Created
148
  content:
149
  application/json:
150
  schema:
151
  type: object
152
  properties:
153
  applicationId:
154
  type: string
155
  example: '2024123100010001'
156
  '400':
157
  description: "Bad Request"
158
  content:
159
  application/json:
160
  schema:
161
  type: object
162
  properties:
163
  message:
164
  type: string
165
  enum:
166
  - ETF code or AP code is incorrect.
167
  - Application date is incorrect.
168
  - Cut-off time for this ETF fund has already elapsed.
169
  - Number of shares is incorrect.
170
  - The number of digits in 'numberOfShares' is exceeded.
171
  - Number of shares must be an integer multiple of the order unit.
172
  - Number of shares must be exceeded the minimum.
173
  - Number of shares must be an integer multiple of the trading unit. The trading unit is {trading unit}.
174
  - This issue can only be applied with clearing.
175
  - This issue can only be applied with non-clearing.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
176
  example: 'ETF code or AP code is incorrect.'
177
  '403':
178
  description: 'Forbidden'
179
  content:
180
  application/json:
181
  schema:
182
  type: object
183
  properties:
184
  message:
185
  type: string
186
- example: 'You are not allowed to register an application.'
 
 
187
  /applications/{applicationId}:
188
  get:
189
  summary: Get detailed application information
190
  description: 'Specify the applicationId to get details of the applications that the user has permission to view.'
191
  parameters:
192
  - $ref: '#/components/parameters/applicationId'
193
  operationId: getApplicationDetails
194
  tags:
195
  - applications
196
  responses:
197
  '200':
198
  description: Success operation
199
  content:
200
  application/json:
201
  schema:
202
  $ref: '#/components/schemas/ApplicationInfo'
203
  '403':
204
  description: 'Forbidden'
205
  content:
206
  application/json:
207
  schema:
208
  type: object
209
  properties:
210
  message:
211
  type: string
212
- example: 'You are not allowed to access this application.'
213
  /applications/{applicationId}/approve:
214
  put:
215
  summary: Approve a creation/redemption application
216
  parameters:
217
  - $ref: '#/components/parameters/applicationId'
218
- description: 'Approve an application from market makers.'
 
 
 
219
  operationId: approveApplication
220
  tags:
221
  - applications
222
  responses:
223
  '200':
224
  description: Success operation
225
  '400':
226
  description: 'Bad Request'
227
  content:
228
  application/json:
229
  schema:
230
  type: object
231
  properties:
232
  message:
233
  type: string
234
  enum:
235
  - This approval is not available for this application ID.
236
  - This application cannot be approved because it has exceeded the cut-off.
237
- example: 'This approval is not available for this application ID.'
238
  '403':
239
  description: 'Forbidden'
240
  content:
241
  application/json:
242
  schema:
243
  type: object
244
  properties:
245
  message:
246
  type: string
247
- example: 'You are not allowed to access this application.'
 
 
 
248
  /applications/{applicationId}/deny:
249
  put:
250
  summary: Deny a creation/redemption application
251
  parameters:
252
  - $ref: '#/components/parameters/applicationId'
253
- description: 'Deny an application from market makers.'
 
 
 
254
  operationId: denyApplication
255
  tags:
256
  - applications
257
  responses:
258
  '200':
259
  description: Success operation
260
  '400':
261
  description: 'Bad Request'
262
  content:
263
  application/json:
264
  schema:
265
  type: object
266
  properties:
267
  message:
268
  type: string
269
- example: 'This denial is not available for this application ID.'
270
  '403':
271
  description: 'Forbidden'
272
  content:
273
  application/json:
274
  schema:
275
  type: object
276
  properties:
277
  message:
278
  type: string
279
- example: 'You are not allowed to access this application.'
 
 
 
280
  /applications/{applicationId}/approveCancellationRequest:
281
  put:
282
  summary: Approve a cancellation request
283
  parameters:
284
  - $ref: '#/components/parameters/applicationId'
285
- description: 'Approve a cancellation request from market makers.'
 
 
 
286
  operationId: approveCancellationRequest
287
  tags:
288
  - applications
289
  responses:
290
  '200':
291
  description: Success operation
292
  '400':
293
  description: 'Bad Request'
294
  content:
295
  application/json:
296
  schema:
297
  type: object
298
  properties:
299
  message:
300
  type: string
301
- example: 'This approval is not available for this application ID.'
302
  '403':
303
  description: 'Forbidden'
304
  content:
305
  application/json:
306
  schema:
307
  type: object
308
  properties:
309
  message:
310
  type: string
311
- example: 'You are not allowed to access this application.'
 
 
 
312
  /applications/{applicationId}/denyCancellationRequest:
313
  put:
314
  summary: Deny a cancellation request
315
  parameters:
316
  - $ref: '#/components/parameters/applicationId'
317
- description: 'Deny a cancellation request from market makers.'
 
 
 
318
  operationId: denyCancellationRequest
319
  tags:
320
  - applications
321
  responses:
322
  '200':
323
  description: Success operation
324
  '400':
325
  description: 'Bad Request'
326
  content:
327
  application/json:
328
  schema:
329
  type: object
330
  properties:
331
  message:
332
  type: string
333
- example: 'This denial is not available for this application ID.'
334
  '403':
335
  description: 'Forbidden'
336
  content:
337
  application/json:
338
  schema:
339
  type: object
340
  properties:
341
  message:
342
  type: string
343
- example: 'You are not allowed to access this application.'
 
 
 
344
  /applications/{applicationId}/cancellationRequest:
345
  put:
346
  summary: Request APs to cancel an application
347
  parameters:
348
  - $ref: '#/components/parameters/applicationId'
349
  description: 'Request APs to cancel a registered application.'
350
  operationId: cancellationRequest
351
  tags:
352
  - applications
353
  responses:
354
  '200':
355
  description: Success operation
356
  '400':
357
  description: 'Bad Request'
358
  content:
359
  application/json:
360
  schema:
361
  type: object
362
  properties:
363
  message:
364
  type: string
 
 
 
365
  example: 'Cancellation is not available for this application ID.'
366
  '403':
367
  description: 'Forbidden'
368
  content:
369
  application/json:
370
  schema:
371
  type: object
372
  properties:
373
  message:
374
  type: string
375
- example: 'You are not allowed to access this application.'
 
 
 
376
  /statements/{applicationId}:
377
  get:
378
  summary: Get statement data
379
- description: Get statement data for each applicationId.
380
- operationId: getStatementjson
381
  parameters:
382
  - $ref: '#/components/parameters/applicationId'
383
  tags:
384
  - applications
385
  responses:
386
  '200':
387
  description: Success operation
388
  content:
389
  application/json:
390
  schema:
391
  $ref: '#/components/schemas/Statements'
392
  '400':
393
  description: 'Bad Request'
394
  content:
395
  application/json:
396
  schema:
397
  type: object
398
  properties:
399
  message:
400
  type: string
401
- example: 'This request is not available for this application ID.'
402
  '403':
403
  description: 'Forbidden'
404
  content:
405
  application/json:
406
  schema:
407
  type: object
408
  properties:
409
  message:
410
  type: string
411
- example: 'You are not allowed to access this application.'
412
  /issues:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
413
  get:
414
  summary: Get basic information of each issue
415
  description: Get basic information of each issue.
416
- operationId: getIssueInfojson
417
  tags:
418
- - information
419
- responses:
420
  '200':
421
  description: Success operation
422
  content:
423
  application/json:
424
  schema:
425
  $ref: '#/components/schemas/Issues'
426
  /issues/blackout:
427
  get:
428
  summary: Get blackout dates of each issue
429
  description: Get blackout dates of each issue.
430
- operationId: getBlackoutCalendarjson
431
  tags:
432
  - information
433
  responses:
434
  '200':
435
  description: Success operation
436
  content:
437
  application/json:
438
  schema:
439
  type: object
440
  properties:
441
  issues:
442
  type: array
443
  items:
444
  $ref: '#/components/schemas/Blackout'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
445
  security:
446
  - ApiKeyAuth: []
447
  components:
448
  securitySchemes:
449
  ApiKeyAuth:
450
  type: apiKey
451
  in: header
452
  name: X-API-KEY
453
  schemas:
454
  Application:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
455
  type: object
456
  properties:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
457
  applicationDate:
458
  type: string
459
  format: date
460
  description: Application date
461
  example: '2025-04-15'
 
 
 
 
 
 
 
 
462
  apCode:
463
  type: string
464
  description: AP code. 5-digit number.
465
  example: '12345'
466
  etfCode:
467
  type: string
468
- description: ETFfund code. 5-digit alphanumeric character.
469
  example: '12340'
 
 
 
 
 
 
 
470
  creationOrRedemption:
471
  type: string
472
- description: Specify Creation or Redemption. 'C':Creation 'R':Redemption
473
  example: 'C'
474
- numberOfShares:
475
- type: integer
476
- description: Number of shares.
477
- example: 10000
478
- format: int32
479
- pcfNumber:
480
- type: string
481
- description: PCF number. 16-digit alphanumeric character.
482
- example: '1234567890123456'
483
- notes:
484
- type: string
485
- description: Notes from market makers to APs.
486
- example: 'string'
487
  isClearing:
488
  type: boolean
489
  description: |
490
  Cleared by JSCC or non-cleared. false:non-cleared true:cleared.
491
-
492
- If `isClearing` is not specified, the CredNex system will automatically complete the value of `isClearing` for the application.
493
- The value set depends on `clearingType` of the issue being applied for.
494
- If the `clearingType` in each issue's basic information is Clearing or Selectable, `isClearing` will be set to true and the application will be registered as cleared by JSCC.
495
- If the `clearingType` is Non-Clearing, `isClearing` will be set to false and the application will be registered as non-cleared by JSCC.
496
- example: true
497
- required:
498
- - applicationDate
499
- - apCode
500
- - etfCode
501
- - creationOrRedemption
502
- - numberOfShares
503
- ApplicationInfo:
504
- allOf:
505
- - $ref: '#/components/schemas/Application'
506
- properties:
507
- status:
508
  type: string
509
- enum:
510
- - "ApplicationInProcessAP"
511
- - "ApplicationInProcessAM"
512
- - "Accepted"
513
- - "StatementInProcessTB"
514
- - "StatementReturnedForRevisionAM"
515
- - "StatementFixed"
516
- - "CancelRequestInProcessAP"
517
- - "CancelRequestInProcessAM"
518
- - "Canceled"
519
- example: "ApplicationInProcessAP"
520
- description: Application status at the time.
521
- # codesOfTreasuryStock:
522
- # type: array
523
- # items:
524
- # type: string
525
- # example: '12340'
526
- # description: 5-digit code of treasury stock.
527
  jasdecAccountInformation:
528
  type: string
529
  example: '1234567'
530
  description: JASDEC account information. 7-digit number.
531
  navPerShareCalculationDate:
532
  type: string
533
  format: date
534
  example: '2025-05-29'
535
  description: NAV per share calculation date.
536
  statementFixingDate:
537
  type: string
538
  format: date
539
  example: '2025-05-29'
540
  description: Statement fixing date.
541
  trustEstablishmentOrCancellationDate:
542
  type: string
543
  format: date
544
  example: '2025-05-30'
545
  description: Trust establishment or cancellation date.
546
  settlementDate:
547
  type: string
548
  format: date
549
  example: '2025-05-31'
550
  description: Settlement date.
551
  dvpClearingPrice:
552
  type: string
553
- example: '12345678901234.1234'
554
  description: |
555
  DVP clearing price. Used only if an application is in cash ETF and cleared.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
556
  Issues:
557
  type: object
558
  properties:
559
  issues:
560
  type: array
561
  items:
562
  type: object
563
  properties:
564
  etfCode:
565
  type: string
566
  description: ETF fund code. 5-digit alphanumeric character.
567
  example: '12340'
568
  inKindOrInCash:
569
  type: string
570
  description: Specify in-kind or in-cash.
571
  example: 'CashCreationCashRedemption'
572
  enum:
573
  - CashCreationCashRedemption
574
  - InKindCreationInKindRedemption
575
- - CashCreationInKindRedemption
576
  etfNameJa:
577
  type: string
578
  description: ETF fund name in Japanese.
579
  example: 'XXX ファンド'
580
  etfNameEn:
581
  type: string
582
  description: ETF fund name in English.
583
  example: 'XXX fund'
 
 
 
 
584
  cutoffTimeExcludingTreasuryStock:
585
  type: string
586
  description: Cut-off time (JST) for cases where the treasury stock of AP is not included in the basket. All cut-off time for in cash ETF funds are placed in this field.
587
  example: '15:30'
588
  creation:
589
  type: object
590
  properties:
591
  clearingType:
592
  type: string
593
  enum:
594
  - Clearing
595
  - Non-Clearing
596
  - Selectable
597
  description: It means whether this issue can be cleared by JSCC or not. For issues that are selectable, applicants can choose whether or not to cleared by JSCC when registering their application.
598
  example: 'Clearing'
599
  schedule:
600
  type: object
601
  properties:
602
  clearing:
603
  $ref: "#/components/schemas/CreationSchedule"
604
  nonClearing:
605
  $ref: "#/components/schemas/CreationSchedule"
606
  example:
607
  clearing:
608
  navPerShareCalculationDate: 0
609
  statementFixingDate: 1
610
  trustEstablishmentDate: 2
611
  settlementDate: 2
612
  nonClearing: null
613
  orderUnit:
614
  type: integer
615
  description: Order unit in case of creation. If it is 10000, applicants can only request for an integer multiple of 10,000 as number of shares.
616
  example: 10000
617
  minimumNumberOfShares:
618
  type: integer
619
  description: Minimum number of shares in case of creation. If it is 30000, applicants can request in quantities of 30,000 or more.
620
  example: 30000
621
  redemption:
622
  type: object
623
  properties:
624
  clearingType:
625
  type: string
626
  enum:
627
  - Clearing
628
  - Non-Clearing
629
  - Selectable
630
  description: It means whether this issue can be cleared by JSCC or not. For issues that are selectable, applicants can choose whether or not to cleared by JSCC when registering their application.
631
  example: 'Selectable'
632
  schedule:
633
  type: object
634
  properties:
635
  clearing:
636
  $ref: "#/components/schemas/RedemptionSchedule"
637
  nonClearing:
638
  $ref: "#/components/schemas/RedemptionSchedule"
639
  example:
640
  clearing:
641
  navPerShareCalculationDate: 0
642
  statementFixingDate: 1
643
  trustCancellationDate: 2
644
  settlementDate: 2
645
  nonClearing:
646
  navPerShareCalculationDate: 0
647
  statementFixingDate: 1
648
  trustCancellationDate: 2
649
  settlementDate: 2
650
  orderUnit:
651
  type: integer
652
  description: Order unit in case of redemption. If it is 10000, applicants can only request for an integer multiple of 10,000 as number of shares.
653
  example: 10000
654
  minimumNumberOfShares:
655
  type: integer
656
  description: Minimum number of shares in case of redemption. If it is 30000, applicants can request in quantities of 30,000 or more.
657
  example: 30000
 
 
 
 
 
 
658
  earlyRedemptionClause:
659
  type: integer
660
  description: The number of early redemption shares specified in the terms and conditions of an investment trust for each fund. This is an optional field.
661
  example: 100000
662
  issuersOptionalFundCode:
663
  type: string
664
  description: Fund code used by the issuer to identify the fund internally. This is an optional field.
665
- example: 'ABCD1234'
666
  isinCode:
667
  type: string
668
  description: ISIN code. 12-digit alphanumeric character.
669
  example: 'JP1234567890'
670
  amCode:
671
  type: string
672
  description: AM code. 5-digit number.
673
  example: '00123'
674
  amNameJa:
675
  type: string
676
  description: AM name in Japanese.
677
  example: 'XXX アセットマネジメント'
678
  amNameEn:
679
  type: string
680
  description: AM name in English.
681
  example: 'XXX Asset Management'
682
  tbCode:
683
  type: string
684
  description: TB code. 5-digit number.
685
  example: '00001'
686
  tbNameJa:
687
  type: string
688
  description: TB name in Japanese.
689
  example: 'XXX 信託銀行'
690
  tbNameEn:
691
  type: string
692
  description: TB name in English.
693
  example: 'XXX Trust Bank Co., Ltd.'
694
  handlingPeriodFrom:
695
  type: string
696
  description: Start date of available period for handling.
697
  example: '2024-12-03'
698
  handlingPeriodTo:
699
  type: string
700
  description: End date of available period for handling. If it is null, the end date is undecided.
701
  example: '2025-09-21'
702
  DateList:
703
  type: array
704
  items:
705
  type: string
706
  format: date
707
  example: '1992-12-02'
708
  Blackout:
709
  type: object
710
  properties:
711
  etfCode:
712
  type: string
713
  example: '12340'
714
  creationBlackoutDates:
715
  type: array
716
  items:
717
  type: string
718
  format: date
719
  example: '1992-12-02'
720
  redemptionBlackoutDates:
721
  type: array
722
  items:
723
  type: string
724
  format: date
725
  example: '1992-12-02'
726
-
727
  Statements:
 
 
 
 
 
 
 
 
 
728
  type: object
729
  properties:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
730
  applicationId:
731
  type: string
732
  example: '2024123100010001'
733
  description: Application ID
734
  pcfNumber:
735
  type: string
736
  example: '1234567890123456'
737
  description: PCF number. 16-digit alphanumeric character.
738
  amCode:
739
  type: string
740
  example: '00123'
741
  description: AM code. 5-digit number.
742
  amNameJa:
743
  type: string
744
  example: 'XXX アセットマネジメント'
745
  description: AM name in Japanese.
746
  amNameEn:
747
  type: string
748
  example: 'XXX Asset Management'
749
  description: AM name in English.
750
  userId:
751
  type: string
752
  example: 'XXX@crednex.co.jp'
753
  default: User ID that registered this statement as AM
754
  apCode:
755
  type: string
756
  example: '00012'
757
  description: AP code. 5-digit number.
758
  apNameJa:
759
  type: string
760
  example: 'XXX 証券'
761
  description: AP Name in Japanese.
762
  apNameEn:
763
  type: string
764
  example: 'XXX Securities Co., Ltd.'
765
  description: AP Name in English.
766
  etfCode:
767
  type: string
768
  example: '12340'
769
  description: ETF fund code. 5-digit alphanumeric character.
770
  etfISINCode:
771
  type: string
772
  example: 'JP0000000000'
773
  description: ISIN code. 10-digit number.
774
  etfNameJa:
775
  type: string
776
  example: 'XXX ファンド'
777
  description: ETF fund name in Japanese.
778
  etfNameEn:
779
  type: string
780
  example: 'XXX fund'
781
  description: ETF fund name in English.
782
  creationOrRedemption:
783
  type: string
784
  example: 'C'
785
- description: Specify Creation or Redmption. 'C':Creation 'R':Redemption
786
  tbCode:
787
  type: string
788
  example: '00001'
789
  description: TB code. 5-digit number.
790
  tbNameJa:
791
  type: string
792
  example: 'XXX 信託銀行'
793
  description: TB name in Japanese.
794
  tbNameEn:
795
  type: string
796
  example: 'XXX Trust Bank Co., Ltd.'
797
  description: TB name in English.
798
  navPerShareCalculationDate:
799
  type: string
800
  format: date
801
  example: '2025-05-29'
802
  description: NAV per share calculation date.
803
  statementFixingDate:
804
  type: string
805
  format: date
806
  example: '2025-05-29'
807
  description: Statement fixing date.
808
  settlementDate:
809
  type: string
810
  format: date
811
  example: '2025-05-31'
812
  description: Settlement date.
813
  trustEstablishmentOrCancellationDate:
814
  type: string
815
  format: date
816
  example: '2025-05-30'
817
  description: Trust establishment or cancellation date.
818
  etfNavPerShare:
819
  type: string
820
  example: '12345678901234.1234'
821
- description: ETF nav per share.
822
- etfPurchaseOrCancellationPrice:
823
- type: string
824
- example: '12345678901234.1234'
825
- description: ETF purchase or cancellation price.
826
  numberOfShares:
827
  type: integer
828
  example: 10000
829
- format: int32
830
  description: Number of shares the client ordered.
831
  numberOfSharesOfNewRecordOrScheduledDeletion:
832
  type: integer
833
  example: 123456789012345
834
  format: int64
835
  description: The number of shares of new record or scheduled deletion.
836
  etfNetAssetValue:
837
  type: string
838
  example: '12345678901234.1234'
839
  description: ETF net asset value.
840
- executionCosts:
841
- type: string
842
- description: Execution cost of this creation/redemption for AP.
843
  optionalInputItemName1:
844
  type: string
845
  description: Name of optional item.
846
- totalPaymentAmount:
847
- type: string
848
- example: '123456789012345678'
849
- description: Total payment of this creation/redemption for AP.
850
  optionalInputItemName2:
851
  type: string
852
  optionalInputItemContent2:
853
  type: string
854
  description: Contents of optional item.
855
  optionalInputItemName3:
856
  type: string
857
  optionalInputItemContent3:
858
  type: string
859
  optionalInputItemName4:
860
  type: string
861
- statementType:
862
- type: string
863
- enum:
864
- - 'CreatedByAM'
865
- - 'CreatedByCredNex'
866
- description: |
867
- CreatedByAM: This statement is registered by AM, and transitions to 'StatementFixed' status by the deadline of the statement fixing date.
868
-
869
- CreatedByCredNex: This statement is automatically created by CredNex because the application for the statement transitions to 'Accepted', but does not transition to 'StatementFixed' status by the deadline of the statement fixing date.
870
-
871
- If the application is non-cleared, the return value for this item will be an empty string.
872
  optionalInputItemName5:
873
  type: string
874
- dvpSettlementPrice:
875
- type: string
876
- example: '12345678901234.1234'
877
- description: DVP settlement price calculated on the application date. If the application is non-cleared, the return value for this item will be an empty string.
878
  optionalInputItemName6:
879
  type: string
880
  optionalInputItemContent6:
881
  type: string
882
  optionalInputItemName7:
883
  type: string
884
  optionalInputItemContent7:
885
  type: string
886
  optionalInputItemName8:
887
  type: string
888
  optionalInputItemContent8:
889
  type: string
890
  optionalInputItemName9:
891
  type: string
892
  optionalInputItemContent9:
893
  type: string
894
  optionalInputItemName10:
895
  type: string
896
  optionalInputItemContent10:
897
- type: string
898
  notes:
899
  type: string
900
  description: Notices by AM for AP.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
901
  BaseSchedule:
902
  type: object
903
  description: Schedule configuration depends on clearingType. For "Clearing", only clearing.schedule is set and nonClearing.schedule is null. For "Non-Clearing", only nonClearing.schedule is set and clearing.schedule is null. For "Selectable", both clearing.schedule and nonClearing.schedule are set.
904
  nullable: true
905
  properties:
906
  navPerShareCalculationDate:
907
  type: integer
908
  description: NAV per share calculation date. It is counted from the trade date (dayT). If it is '0', T+0 is NAV per share calculation date.
909
  example: 0
910
  statementFixingDate:
911
  type: integer
912
  description: Statement fixing date. It is counted from the trade date (dayT).
913
  example: 1
914
  settlementDate:
915
  type: integer
916
  description: Settlement date. It is counted from the trade date (dayT).
917
  example: 2
918
  CreationSchedule:
919
  allOf:
920
  - $ref: "#/components/schemas/BaseSchedule"
921
  - type: object
922
  properties:
923
  trustEstablishmentDate:
924
  type: integer
925
  description: Trust establishment date in case of creation. It is counted from the trade date (dayT).
926
  example: 2
927
  RedemptionSchedule:
928
  allOf:
929
  - $ref: "#/components/schemas/BaseSchedule"
930
  - type: object
931
  properties:
932
  trustCancellationDate:
933
  type: integer
934
  description: Trust cancellation date in case of redemption. It is counted from the trade date (dayT).
935
  example: 2
936
  parameters:
937
  applicationId:
938
  name: applicationId
939
  in: path
940
  required: true
941
  description: Application ID
942
  schema:
943
  type: string
944
  example: '2024123100010001'
945
  statementFixingDate:
946
  name: statementFixingDate
947
  in: query
948
  required: false
949
  description: Statement fixing date. Default is today (JST).
950
  schema:
951
  type: string
952
  format: date
953
  example: '2025-05-29'
954
  tags:
955
  - name: applications
956
  description: Create/Approve creation/redemption applications
957
  - name: information
958
  description: Get information related to ETF creation/redemption operations
 
1
  openapi: 3.0.0
2
  servers:
3
  - url: https://crednex.jpx.co.jp/api/v1
4
  description: Production server
5
  - url: https://stg.crednex.jpx.co.jp/api/v1
6
  description: Staging server
7
  info:
8
  title: ETF Creation Redemption Platform (CredNex) API Specification
9
+ version: 1.2.2
10
  description: |
11
  ## Outline
12
 
13
  #### Production Environment
14
 
15
  URL: https://crednex.jpx.co.jp/api/v1
16
 
17
  Available Time: Weekdays 7:00 a.m-10:00 p.m (JST)
18
 
19
  #### Demo Environment
20
 
21
  URL: https://stg.crednex.jpx.co.jp/api/v1
22
 
23
  Available Time: Weekdays 7:00 a.m-10:00 p.m (JST)
24
 
25
 
26
  #### Network
27
 
28
  - The access route is provided only via the Internet.
29
  - Global IP for each environment of this system is not fixed.
30
 
31
  ## Preparations
32
 
33
 
34
  #### API Key
35
 
36
  Getting an API key is required.
37
  An API key is an unique key for each API user.
38
  It is used for this service to identify API users.
39
  Any API users who wish to use the APIs on this service must request TSE to issue API keys in advance.
40
  The API key should be set in the X-API-KEY in header every time you send an API call.
41
 
42
 
43
  #### IP Address Whitelisting
44
 
45
  You must submit the global IP address of the system making API calls to TSE.
46
  All API keys are linked to global IP addresses, and API calls from IP addresses not submitted in advance will not be accepted.
47
 
48
 
49
  #### Rate Limits
50
 
51
+ This API uses the token bucket algorithm for rate limiting.
52
+ If requests exceed the rate limit defined by the following settings, the bucket will be emptied and the user will receive an error response until tokens are replenished.
53
+ - Rate: 5 tokens per second
54
+ - Burst: 10 tokens
55
 
56
+ Rate: The speed at which tokens are added to the bucket.
57
+
58
+ Burst: The maximum number of tokens that can be stored in the bucket.
59
+
60
+ Overly frequent access is prohibited as stated in the Terms and Conditions. If such behavior is detected, TSE may issue a warning to the user.
61
+
62
  ## Authorization
63
 
64
+ |Method|Endpoint|MM|AP (Agency)|AP (Prop)|AM|
65
+ |:----|:----|:----|:----|:----|:----|
66
+ |GET|/applications<br>/applications/{applicationId}|Available|Available|Available|Available|
67
+ |GET|/statements/{applicationId}<br>/issues<br>/issues/blackout<br>/pcf<br>/pcf/{pcfNumber}|Available|Available|Available|Available|
68
+ |PATCH|/issues|N/A|N/A|N/A|Available|
69
+ |POST|/applications|Available|N/A|Available|N/A|
70
+ |PUT|/applications/{applicationId}/approve|N/A|Available|Available|Available|
71
+ |PUT|/applications/{applicationId}/deny|N/A|Available|Available|Available|
72
+ |PUT|/applications/{applicationId}/approveCancellationRequest|N/A|Available|Available|Available|
73
+ |PUT|/applications/{applicationId}/denyCancellationRequest|N/A|Available|Available|Available|
74
+ |PUT|/applications/{applicationId}/cancellationRequest|Available|N/A|Available|N/A|
75
 
76
+
77
  paths:
78
  /applications:
79
  get:
80
  summary: Get applicationId of creation and redemption application
81
  description: Get applicationId for which the user has permissions to view
82
  operationId: getApplicationIds
83
  tags:
84
  - applications
85
  parameters:
86
  - name: applicationDate
87
  in: query
88
  schema:
89
  type: string
90
  format: date
91
+ description: Application date.
92
  - name: statementFixingDate
93
  in: query
94
  schema:
95
  type: string
96
  format: date
97
+ description: Statement fixing date.
98
  - name: status
99
  in: query
100
  schema:
101
  type: string
102
  description: Specify the status of the creation and redemption applications
103
+ enum:
104
+ - "ApplicationInProcessAP"
105
+ - "ApplicationInProcessAM"
106
+ - "Accepted"
107
+ - "StatementInProcessTB"
108
+ - "StatementReturnedForRevisionAM"
109
+ - "StatementFixed"
110
+ - "CancelRequestInProcessAP"
111
+ - "CancelRequestInProcessAM"
112
+ - "Canceled"
113
  responses:
114
  '200':
115
  description: Success operation
116
  content:
117
  application/json:
118
  schema:
119
  type: object
120
  properties:
121
  applications:
122
  type: array
123
  items:
124
  type: object
125
  properties:
126
  id:
127
  type: string
128
  example: '2024123100010001'
129
  description: Application ID
130
  status:
131
  type: string
132
  enum:
133
  - "ApplicationInProcessAP"
134
  - "ApplicationInProcessAM"
135
  - "Accepted"
136
  - "StatementInProcessTB"
137
  - "StatementReturnedForRevisionAM"
138
  - "StatementFixed"
139
  - "CancelRequestInProcessAP"
140
  - "CancelRequestInProcessAM"
141
+ - "Canceled"
142
+ createdAt:
143
+ type: string
144
+ example: '2025-04-15T12:34:56+09:00'
145
+ description: The time when the applicant registered this application.
146
  hasMore:
147
  type: boolean
148
  example: false
149
  description: Whether there are more than 1,000 application IDs. If true, please send a request again by narrowing down the conditions such as application date, statement fixing date, and status.
150
  post:
151
  summary: Register for your creation/redemption application
152
  description: |
153
  Fill in the information required to apply for creation/redemption and register your application.
154
 
155
  If `isClearing` is not specified, the CredNex system will automatically complete the value of `isClearing` for the application.
156
  The value set depends on `clearingType` of the issue being applied for.
157
  If the `clearingType` in each issue's basic information is Clearing or Selectable, `isClearing` will be set to true and the application will be registered as cleared by JSCC.
158
  If the `clearingType` is Non-Clearing, `isClearing` will be set to false and the application will be registered as non-cleared by JSCC.
159
  operationId: registerApplication
160
  tags:
161
  - applications
162
  requestBody:
163
  required: true
164
  content:
165
  application/json:
166
  schema:
167
  $ref: '#/components/schemas/Application'
168
  responses:
169
  '201':
170
  description: Created
171
  content:
172
  application/json:
173
  schema:
174
  type: object
175
  properties:
176
  applicationId:
177
  type: string
178
  example: '2024123100010001'
179
  '400':
180
  description: "Bad Request"
181
  content:
182
  application/json:
183
  schema:
184
  type: object
185
  properties:
186
  message:
187
  type: string
188
  enum:
189
  - ETF code or AP code is incorrect.
190
  - Application date is incorrect.
191
  - Cut-off time for this ETF fund has already elapsed.
192
  - Number of shares is incorrect.
193
  - The number of digits in 'numberOfShares' is exceeded.
194
  - Number of shares must be an integer multiple of the order unit.
195
  - Number of shares must be exceeded the minimum.
196
  - Number of shares must be an integer multiple of the trading unit. The trading unit is {trading unit}.
197
  - This issue can only be applied with clearing.
198
  - This issue can only be applied with non-clearing.
199
+ - You cannot apply for cash ETFs by specifying 'codesOfTreasuryStock'.
200
+ - "'codesOfTreasuryStock' must be specified as a 5-character alphanumeric code."
201
+ - "'codesOfTreasuryStock' must be specified for up to 5 stocks."
202
+ - "'codesOfTreasuryStock' contains duplicate codes."
203
+ - The value for 'position' in the custom field must be a number up to 9.
204
+ - The value for 'position' in the custom field is incorrect.
205
+ - The 'value' in the custom field is incorrect.
206
+ - The 'value' in the custom field must not exceed 50 characters.
207
+ - "'position' in the custom field contains duplicate numbers."
208
+ - Please specify either 'true' or 'false' for 'excludeTreasuryStockIfNotInPcf'.
209
+ - "'applicationDate' is incorrect."
210
+ - "'creationOrRedemption' is incorrect."
211
+ - "'isClearing' is incorrect."
212
+ - "'numberOfUnits' and 'numberOfShares' must be specified as an integer."
213
+ - "Please specify 'numberOfUnits' as 1 or greater."
214
+ - "The number of digits in 'numberOfUnits' is exceeded."
215
+ - "Please specify 'numberOfShares' as 1 or greater."
216
+ - "The number of digits in 'notes' is exceeded."
217
+ - "The combination of 'numberOfShares', 'numberOfUnits', and 'pcfNumber' is invalid. Please specify either 'numberOfShares' only, or both 'numberOfUnits' and 'pcfNumber'."
218
+ - Required fields are not completely filled in.
219
+ - "'applicationDate' is outside the handling period for this etfCode."
220
+ - "'applicationDate' is a blackout date."
221
+ - Application date is a blackout date.
222
+ - This ETF fund is out of handling period.
223
+ - "For the specified 'etfCode', 'applicationDate', and 'creationOrRedemption', you cannot apply by specifying 'numberOfShares'. Please specify both 'numberOfUnits' and 'pcfNumber', or choose different options."
224
+ - "For the specified 'etfCode', 'applicationDate', and 'creationOrRedemption', you cannot apply by specifying either 'numberOfUnits' or 'pcfNumber'. Please specify only 'numberOfShares' or choose different options."
225
+ - "'pcfNumber' is incorrect."
226
+ - "Cash ETF must be applied with 'numberOfShares'."
227
+ - "The estimated number of units exceeds 15 digits. Please re-specify 'numberOfUnits'."
228
+ - "You cannot specify 'codesOfTreasuryStock' to an issue code that does not exist in the PCF basket."
229
+ - "The AM does not allow values to be set in the custom fields. Please remove all values from the custom fields and try registering again."
230
+ - This issue is not available for clearing by JSCC. Please contact the CredNex team.
231
+ - This issue can only be applied with clearing for creation/redemption.
232
+ - This issue can only be applied with non-clearing for creation/redemption.
233
  example: 'ETF code or AP code is incorrect.'
234
  '403':
235
  description: 'Forbidden'
236
  content:
237
  application/json:
238
  schema:
239
  type: object
240
  properties:
241
  message:
242
  type: string
243
+ enum:
244
+ - You are not allowed to access this endpoint.
245
+ example: 'You are not allowed to access this endpoint.'
246
  /applications/{applicationId}:
247
  get:
248
  summary: Get detailed application information
249
  description: 'Specify the applicationId to get details of the applications that the user has permission to view.'
250
  parameters:
251
  - $ref: '#/components/parameters/applicationId'
252
  operationId: getApplicationDetails
253
  tags:
254
  - applications
255
  responses:
256
  '200':
257
  description: Success operation
258
  content:
259
  application/json:
260
  schema:
261
  $ref: '#/components/schemas/ApplicationInfo'
262
  '403':
263
  description: 'Forbidden'
264
  content:
265
  application/json:
266
  schema:
267
  type: object
268
  properties:
269
  message:
270
  type: string
271
+ example: 'You are not allowed to access this application.'
272
  /applications/{applicationId}/approve:
273
  put:
274
  summary: Approve a creation/redemption application
275
  parameters:
276
  - $ref: '#/components/parameters/applicationId'
277
+ description: |
278
+ Approve an application from market maker or AP.
279
+ APs can only approve applications with the status 'ApplicationInProcessAP'.
280
+ AMs can only approve applications with the status 'ApplicationInProcessAM'.
281
  operationId: approveApplication
282
  tags:
283
  - applications
284
  responses:
285
  '200':
286
  description: Success operation
287
  '400':
288
  description: 'Bad Request'
289
  content:
290
  application/json:
291
  schema:
292
  type: object
293
  properties:
294
  message:
295
  type: string
296
  enum:
297
  - This approval is not available for this application ID.
298
  - This application cannot be approved because it has exceeded the cut-off.
299
+ example: 'This approval is not available for this application ID.'
300
  '403':
301
  description: 'Forbidden'
302
  content:
303
  application/json:
304
  schema:
305
  type: object
306
  properties:
307
  message:
308
  type: string
309
+ enum:
310
+ - You are not allowed to access this application.
311
+ - You are not allowed to access this endpoint.
312
+ example: 'You are not allowed to access this application.'
313
  /applications/{applicationId}/deny:
314
  put:
315
  summary: Deny a creation/redemption application
316
  parameters:
317
  - $ref: '#/components/parameters/applicationId'
318
+ description: |
319
+ Deny an application from market maker or AP.
320
+ APs can only deny applications with the status 'ApplicationInProcessAP'.
321
+ AMs can only deny applications with the status 'ApplicationInProcessAM'.
322
  operationId: denyApplication
323
  tags:
324
  - applications
325
  responses:
326
  '200':
327
  description: Success operation
328
  '400':
329
  description: 'Bad Request'
330
  content:
331
  application/json:
332
  schema:
333
  type: object
334
  properties:
335
  message:
336
  type: string
337
+ example: 'This denial is not available for this application ID.'
338
  '403':
339
  description: 'Forbidden'
340
  content:
341
  application/json:
342
  schema:
343
  type: object
344
  properties:
345
  message:
346
  type: string
347
+ enum:
348
+ - You are not allowed to access this application.
349
+ - You are not allowed to access this endpoint.
350
+ example: 'You are not allowed to access this application.'
351
  /applications/{applicationId}/approveCancellationRequest:
352
  put:
353
  summary: Approve a cancellation request
354
  parameters:
355
  - $ref: '#/components/parameters/applicationId'
356
+ description: |
357
+ Approve a cancellation request from market maker or AP.
358
+ APs can only approve applications with the status 'CancelRequestInProcessAP'.
359
+ AMs can only approve applications with the status 'CancelRequestInProcessAM'.
360
  operationId: approveCancellationRequest
361
  tags:
362
  - applications
363
  responses:
364
  '200':
365
  description: Success operation
366
  '400':
367
  description: 'Bad Request'
368
  content:
369
  application/json:
370
  schema:
371
  type: object
372
  properties:
373
  message:
374
  type: string
375
+ example: 'This approval is not available for this application ID.'
376
  '403':
377
  description: 'Forbidden'
378
  content:
379
  application/json:
380
  schema:
381
  type: object
382
  properties:
383
  message:
384
  type: string
385
+ enum:
386
+ - You are not allowed to access this application.
387
+ - You are not allowed to access this endpoint.
388
+ example: 'You are not allowed to access this application.'
389
  /applications/{applicationId}/denyCancellationRequest:
390
  put:
391
  summary: Deny a cancellation request
392
  parameters:
393
  - $ref: '#/components/parameters/applicationId'
394
+ description: |
395
+ Deny a cancellation request from market maker or AP.
396
+ APs can only deny applications with the status 'CancelRequestInProcessAP'.
397
+ AMs can only deny applications with the status 'CancelRequestInProcessAM'.
398
  operationId: denyCancellationRequest
399
  tags:
400
  - applications
401
  responses:
402
  '200':
403
  description: Success operation
404
  '400':
405
  description: 'Bad Request'
406
  content:
407
  application/json:
408
  schema:
409
  type: object
410
  properties:
411
  message:
412
  type: string
413
+ example: 'This denial is not available for this application ID.'
414
  '403':
415
  description: 'Forbidden'
416
  content:
417
  application/json:
418
  schema:
419
  type: object
420
  properties:
421
  message:
422
  type: string
423
+ enum:
424
+ - You are not allowed to access this application.
425
+ - You are not allowed to access this endpoint.
426
+ example: 'You are not allowed to access this application.'
427
  /applications/{applicationId}/cancellationRequest:
428
  put:
429
  summary: Request APs to cancel an application
430
  parameters:
431
  - $ref: '#/components/parameters/applicationId'
432
  description: 'Request APs to cancel a registered application.'
433
  operationId: cancellationRequest
434
  tags:
435
  - applications
436
  responses:
437
  '200':
438
  description: Success operation
439
  '400':
440
  description: 'Bad Request'
441
  content:
442
  application/json:
443
  schema:
444
  type: object
445
  properties:
446
  message:
447
  type: string
448
+ enum:
449
+ - Cancellation is not available for this application ID.
450
+ - Cut-off time for this ETF fund has already elapsed.
451
  example: 'Cancellation is not available for this application ID.'
452
  '403':
453
  description: 'Forbidden'
454
  content:
455
  application/json:
456
  schema:
457
  type: object
458
  properties:
459
  message:
460
  type: string
461
+ enum:
462
+ - You are not allowed to access this application.
463
+ - You are not allowed to access this endpoint.
464
+ example: 'You are not allowed to access this application.'
465
  /statements/{applicationId}:
466
  get:
467
  summary: Get statement data
468
+ description: Get statement data. The layout of the response body differs between cash statements and in-kind statements.
469
+ operationId: getStatement
470
  parameters:
471
  - $ref: '#/components/parameters/applicationId'
472
  tags:
473
  - applications
474
  responses:
475
  '200':
476
  description: Success operation
477
  content:
478
  application/json:
479
  schema:
480
  $ref: '#/components/schemas/Statements'
481
  '400':
482
  description: 'Bad Request'
483
  content:
484
  application/json:
485
  schema:
486
  type: object
487
  properties:
488
  message:
489
  type: string
490
+ example: 'This request is not available for this application ID.'
491
  '403':
492
  description: 'Forbidden'
493
  content:
494
  application/json:
495
  schema:
496
  type: object
497
  properties:
498
  message:
499
  type: string
500
+ example: 'You are not allowed to access this application.'
501
  /issues:
502
+ patch:
503
+ summary: Update issue details
504
+ description: |
505
+ Partially update issue details. AM can modify the order unit of its own issue.
506
+ Fields not included in the request body will remain unchanged.
507
+ operationId: UpdateIssueDetails
508
+ tags:
509
+ - information
510
+ requestBody:
511
+ required: true
512
+ content:
513
+ application/json:
514
+ schema:
515
+ type: object
516
+ properties:
517
+ issues:
518
+ type: array
519
+ items:
520
+ type: object
521
+ properties:
522
+ etfCode:
523
+ type: string
524
+ description: ETF fund code. 5-digit alphanumeric character.
525
+ example: '12340'
526
+ creation:
527
+ type: object
528
+ properties:
529
+ orderUnit:
530
+ type: integer
531
+ description: Order unit in case of creation. If it is 10000, applicants can only request for an integer multiple of 10,000 as number of shares.
532
+ example: 10000
533
+ redemption:
534
+ type: object
535
+ properties:
536
+ orderUnit:
537
+ type: integer
538
+ description: Order unit in case of redemption. If it is 10000, applicants can only request for an integer multiple of 10,000 as number of shares.
539
+ example: 10000
540
+ responses:
541
+ '200':
542
+ description: Success operation
543
+ content:
544
+ application/json:
545
+ schema:
546
+ $ref: '#/components/schemas/Issues'
547
+ '400':
548
+ description: 'Bad Request'
549
+ content:
550
+ application/json:
551
+ schema:
552
+ type: object
553
+ properties:
554
+ message:
555
+ type: string
556
+ enum:
557
+ - The request body does not match the required JSON schema.
558
+ - "'etfCode' must be 5 characters long and contain only uppercase letters (A–Z) and digits (0–9)."
559
+ - "'orderUnit' must be an integer greater than 0."
560
+ - "The 'orderUnit' exceeds 15 digits. Please re-specify 'orderUnit'."
561
+ example: 'The request body does not match the required JSON schema.'
562
+ '403':
563
+ description: 'Forbidden'
564
+ content:
565
+ application/json:
566
+ schema:
567
+ type: object
568
+ properties:
569
+ message:
570
+ type: string
571
+ example: 'You are not allowed to access this issue.'
572
  get:
573
  summary: Get basic information of each issue
574
  description: Get basic information of each issue.
575
+ operationId: getIssueInfo
576
  tags:
577
+ - information
578
+ responses:
579
  '200':
580
  description: Success operation
581
  content:
582
  application/json:
583
  schema:
584
  $ref: '#/components/schemas/Issues'
585
  /issues/blackout:
586
  get:
587
  summary: Get blackout dates of each issue
588
  description: Get blackout dates of each issue.
589
+ operationId: getBlackoutCalendar
590
  tags:
591
  - information
592
  responses:
593
  '200':
594
  description: Success operation
595
  content:
596
  application/json:
597
  schema:
598
  type: object
599
  properties:
600
  issues:
601
  type: array
602
  items:
603
  $ref: '#/components/schemas/Blackout'
604
+ /pcf:
605
+ get:
606
+ summary: Get PCF list
607
+ description: |
608
+ Get PCF list includes only those whose `expirationDate` is today or later.
609
+
610
+ If you want to retrieve the component stocks of a PCF, please request to `/pcf/{pcfNumber}`.
611
+
612
+ By setting query parameters `isToday` and `enabledStatus` to true,
613
+ you can retrieve all PCFs that are available for application today(based on JST).
614
+ operationId: getPcf
615
+ tags:
616
+ - information
617
+ parameters:
618
+ - name: isToday
619
+ in: query
620
+ description: Retrieve only PCFs for which the today date (based on JST) is between effectiveDate and expirationDate.
621
+ required: false
622
+ schema:
623
+ type: boolean
624
+ default: true
625
+ - name: enabledStatus
626
+ in: query
627
+ description: |
628
+ Retrieve PCFs filtered by their enabled status.
629
+ If `enabled`, only PCFs whose `isEnabled` value is true are retrieved.
630
+ If `disabled`, only PCFs whose `isEnabled` value is false are retrieved.
631
+ If `both` or not specified, PCFs with both true and false values for `isEnabled` are returned.
632
+ required: false
633
+ schema:
634
+ type: string
635
+ enum:
636
+ - enabled
637
+ - disabled
638
+ - both
639
+ default: both
640
+ - name: etfCode
641
+ in: query
642
+ description: Retrieve only PCFs linked to the specified ETF. If not specified, all ETFs are returned.
643
+ required: false
644
+ schema:
645
+ type: string
646
+ responses:
647
+ '200':
648
+ description: Success operation
649
+ content:
650
+ application/json:
651
+ schema:
652
+ type: object
653
+ properties:
654
+ pcf:
655
+ type: array
656
+ items:
657
+ $ref: '#/components/schemas/pcfHeader'
658
+ '400':
659
+ description: 'Bad Request'
660
+ content:
661
+ application/json:
662
+ schema:
663
+ type: object
664
+ properties:
665
+ message:
666
+ type: string
667
+ enum:
668
+ - This value of the query parameter is incorrect.
669
+ - "The query parameter 'etfCode' must be specified as a 5-digit value."
670
+ example: 'This value of the query parameter is incorrect.'
671
+ /pcf/{pcfNumber}:
672
+ get:
673
+ summary: Get PCF by specifying PCF number
674
+ description: Get PCF by specifying PCF number.
675
+ operationId: getPcfByPcfNumber
676
+ tags:
677
+ - information
678
+ parameters:
679
+ - name: pcfNumber
680
+ in: path
681
+ required: true
682
+ description: PCF number. 16-digit alphanumeric character.
683
+ schema:
684
+ type: string
685
+ example: 'P180125C13060001'
686
+ responses:
687
+ '200':
688
+ description: Success operation
689
+ content:
690
+ application/json:
691
+ schema:
692
+ $ref: '#/components/schemas/pcfIncludingComponentStocks'
693
+ '404':
694
+ description: Not Found
695
+ content:
696
+ application/json:
697
+ schema:
698
+ type: object
699
+ properties:
700
+ message:
701
+ type: string
702
+ example: "'pcfNumber' is incorrect."
703
  security:
704
  - ApiKeyAuth: []
705
  components:
706
  securitySchemes:
707
  ApiKeyAuth:
708
  type: apiKey
709
  in: header
710
  name: X-API-KEY
711
  schemas:
712
  Application:
713
+ allOf:
714
+ - type: object
715
+ required:
716
+ - applicationDate
717
+ - apCode
718
+ - etfCode
719
+ - creationOrRedemption
720
+ properties:
721
+ applicationDate:
722
+ type: string
723
+ format: date
724
+ description: Application date
725
+ example: '2025-04-15'
726
+ apCode:
727
+ type: string
728
+ description: AP code. 5-digit number.
729
+ example: '12345'
730
+ etfCode:
731
+ type: string
732
+ description: ETFfund code. 5-digit alphanumeric character.
733
+ example: '12340'
734
+ creationOrRedemption:
735
+ type: string
736
+ description: Specify Creation or Redemption. 'C':Creation 'R':Redemption
737
+ example: 'C'
738
+ codesOfTreasuryStock:
739
+ description: |
740
+ Array of Treasury Stock Codes.
741
+ type: array
742
+ minItems: 0
743
+ maxItems: 5
744
+ items:
745
+ type: string
746
+ example: '12340'
747
+ description: 5-digit code of treasury stock.
748
+ excludeTreasuryStockIfNotInPcf:
749
+ description: |
750
+ This parameter specifies the behavior when the specified treasury stock codes are not included in the PCF basket.
751
+ It specifies whether to exclude treasury stocks not included in the PCF basket before registering the application.
752
+
753
+ If the value is `false`, and any of the specified treasury stocks are not included in the PCF basket, the application registration will fail with an error.
754
+ If the value is `true`, the application registration will succeed after excluding from the specified treasury stocks those not included in the PCF.
755
+
756
+ For application requests for in-cash ETFs or in-kind ETFs without a specified PCF, no validation is performed to check whether the treasury stocks are included in the PCF basket.
757
+ In this case, the application registration will always succeed, regardless of the parameter value.
758
+ type: boolean
759
+ default: false
760
+
761
+ custom:
762
+ type: array
763
+ description: |
764
+ Custom fields for extensibility.
765
+ All values are visible to applicants, AP and AM.
766
+ minItems: 9
767
+ maxItems: 9
768
+ items:
769
+ type: object
770
+ properties:
771
+ position:
772
+ type: integer
773
+ description: Position is used to identify the field number
774
+ minimum: 1
775
+ maximum: 9
776
+ example: 1
777
+ value:
778
+ type: string
779
+ description: The value for this custom field
780
+ example: "CUSTOM_VALUE_001"
781
+ required:
782
+ - position
783
+ - value
784
+ example:
785
+ - position: 1
786
+ value: "Trading Account ABC"
787
+ - position: 2
788
+ value: "Reference-2025-001"
789
+ notes:
790
+ type: string
791
+ description: Notes from applicants to AP and AM.
792
+ example: 'string'
793
+ isClearing:
794
+ type: boolean
795
+ description: |
796
+ Cleared by JSCC or non-cleared. false:non-cleared true:cleared.
797
+
798
+ If `isClearing` is not specified, the CredNex system will automatically complete the value of `isClearing` for the application.
799
+ The value set depends on `clearingType` of the issue being applied for.
800
+ If the `clearingType` in each issue's basic information is Clearing or Selectable, `isClearing` will be set to true and the application will be registered as cleared by JSCC.
801
+ If the `clearingType` is Non-Clearing, `isClearing` will be set to false and the application will be registered as non-cleared by JSCC.
802
+ example: true
803
+ - oneOf:
804
+ - type: object
805
+ required:
806
+ - numberOfShares
807
+ properties:
808
+ numberOfShares:
809
+ type: integer
810
+ description: |
811
+ Number of shares.
812
+ Required when PCF number is NOT specified.
813
+ Cannot be used together with numberOfUnits.
814
+ example: 10000
815
+ format: int64
816
+ - type: object
817
+ required:
818
+ - pcfNumber
819
+ - numberOfUnits
820
+ properties:
821
+ pcfNumber:
822
+ type: string
823
+ description: PCF number. 16-digit alphanumeric character.
824
+ example: 'P180125C13060001'
825
+ numberOfUnits:
826
+ type: integer
827
+ description: |
828
+ Number of Units.
829
+ Required when PCF number is specified.
830
+ Cannot be used together with numberOfShares.
831
+ example: 10
832
+ format: int64
833
+ ApplicationInfo:
834
  type: object
835
  properties:
836
+ status:
837
+ type: string
838
+ enum:
839
+ - "ApplicationInProcessAP"
840
+ - "ApplicationInProcessAM"
841
+ - "Accepted"
842
+ - "StatementInProcessTB"
843
+ - "StatementReturnedForRevisionAM"
844
+ - "StatementFixed"
845
+ - "CancelRequestInProcessAP"
846
+ - "CancelRequestInProcessAM"
847
+ - "Canceled"
848
+ example: "ApplicationInProcessAP"
849
+ description: Application status at the time.
850
  applicationDate:
851
  type: string
852
  format: date
853
  description: Application date
854
  example: '2025-04-15'
855
+ mmCode:
856
+ type: string
857
+ example: '12345'
858
+ description: |
859
+ MM code.
860
+ 5-digit number.
861
+ This value is visible to MM and AP(Agency).
862
+ This value is always null in the case of a request from AP(Prop) or AM.
863
  apCode:
864
  type: string
865
  description: AP code. 5-digit number.
866
  example: '12345'
867
  etfCode:
868
  type: string
869
+ description: ETF fund code. 5-digit alphanumeric character.
870
  example: '12340'
871
+ inKindOrInCash:
872
+ type: string
873
+ description: Specify in-kind or in-cash.
874
+ example: 'InKindCreationInKindRedemption'
875
+ enum:
876
+ - CashCreationCashRedemption
877
+ - InKindCreationInKindRedemption
878
  creationOrRedemption:
879
  type: string
880
+ description: Creation or Redemption. 'C':Creation 'R':Redemption
881
  example: 'C'
 
 
 
 
 
 
 
 
 
 
 
 
 
882
  isClearing:
883
  type: boolean
884
  description: |
885
  Cleared by JSCC or non-cleared. false:non-cleared true:cleared.
886
+ example: false
887
+ numberOfShares:
888
+ type: integer
889
+ description: |
890
+ Number of shares.
891
+ If PCF number is specified, the estimated number of shares is set.
892
+ The estimated number of shares is calculated as the PCF’s `estimatedNumberOfSharesPerUnit` multiplied by `numberOfUnits`.
893
+ If no PCF number is specified, the number of shares specified by the applicant is set.
894
+ example: 123456
895
+ format: int64
896
+ pcfNumber:
 
 
 
 
 
 
897
  type: string
898
+ nullable: true
899
+ description: PCF number. 16-digit alphanumeric character. If PCF number is not specified, this field is null.
900
+ example: 'P180125C13060001'
901
+ numberOfUnits:
902
+ type: integer
903
+ nullable: true
904
+ description: |
905
+ Number of Units.
906
+ If PCF number is not specified, this field is null.
907
+ example: 10
908
+ format: int64
 
 
 
 
 
 
 
909
  jasdecAccountInformation:
910
  type: string
911
  example: '1234567'
912
  description: JASDEC account information. 7-digit number.
913
  navPerShareCalculationDate:
914
  type: string
915
  format: date
916
  example: '2025-05-29'
917
  description: NAV per share calculation date.
918
  statementFixingDate:
919
  type: string
920
  format: date
921
  example: '2025-05-29'
922
  description: Statement fixing date.
923
  trustEstablishmentOrCancellationDate:
924
  type: string
925
  format: date
926
  example: '2025-05-30'
927
  description: Trust establishment or cancellation date.
928
  settlementDate:
929
  type: string
930
  format: date
931
  example: '2025-05-31'
932
  description: Settlement date.
933
  dvpClearingPrice:
934
  type: string
935
+ example: ''
936
  description: |
937
  DVP clearing price. Used only if an application is in cash ETF and cleared.
938
+ codesOfTreasuryStock:
939
+ description: |
940
+ Array of Treasury Stock Codes.
941
+ type: array
942
+ minItems: 0
943
+ maxItems: 5
944
+ items:
945
+ type: string
946
+ example: '12340'
947
+ description: 5-digit code of treasury stock.
948
+ custom:
949
+ type: array
950
+ description: |
951
+ Custom fields for extensibility.
952
+ All values are visible to applicants, AP and AM.
953
+ minItems: 9
954
+ maxItems: 9
955
+ items:
956
+ type: object
957
+ properties:
958
+ position:
959
+ type: integer
960
+ description: Position is used to identify the field number
961
+ minimum: 1
962
+ maximum: 9
963
+ example: 1
964
+ value:
965
+ type: string
966
+ description: The value for this custom field
967
+ example: "CUSTOM_VALUE_001"
968
+ required:
969
+ - position
970
+ - value
971
+ example:
972
+ - position: 1
973
+ value: "Trading Account ABC"
974
+ - position: 2
975
+ value: "Reference-2025-001"
976
+ - position: 3
977
+ value: ""
978
+ - position: 4
979
+ value: ""
980
+ - position: 5
981
+ value: ""
982
+ - position: 6
983
+ value: ""
984
+ - position: 7
985
+ value: ""
986
+ - position: 8
987
+ value: ""
988
+ - position: 9
989
+ value: ""
990
+ notes:
991
+ type: string
992
+ description: Notes from applicants to AP and AM.
993
+ example: 'string'
994
+ createdAt:
995
+ type: string
996
+ example: '2025-04-15T12:34:56+09:00'
997
+ description: The time when the applicant registered this application.
998
  Issues:
999
  type: object
1000
  properties:
1001
  issues:
1002
  type: array
1003
  items:
1004
  type: object
1005
  properties:
1006
  etfCode:
1007
  type: string
1008
  description: ETF fund code. 5-digit alphanumeric character.
1009
  example: '12340'
1010
  inKindOrInCash:
1011
  type: string
1012
  description: Specify in-kind or in-cash.
1013
  example: 'CashCreationCashRedemption'
1014
  enum:
1015
  - CashCreationCashRedemption
1016
  - InKindCreationInKindRedemption
 
1017
  etfNameJa:
1018
  type: string
1019
  description: ETF fund name in Japanese.
1020
  example: 'XXX ファンド'
1021
  etfNameEn:
1022
  type: string
1023
  description: ETF fund name in English.
1024
  example: 'XXX fund'
1025
+ cutoffTimeIncludingTreasuryStock:
1026
+ type: string
1027
+ description: Cut-off time (JST) for cases where the treasury stock of AP is included in the basket. This item is omitted for cash ETF.
1028
+ example: '14:30'
1029
  cutoffTimeExcludingTreasuryStock:
1030
  type: string
1031
  description: Cut-off time (JST) for cases where the treasury stock of AP is not included in the basket. All cut-off time for in cash ETF funds are placed in this field.
1032
  example: '15:30'
1033
  creation:
1034
  type: object
1035
  properties:
1036
  clearingType:
1037
  type: string
1038
  enum:
1039
  - Clearing
1040
  - Non-Clearing
1041
  - Selectable
1042
  description: It means whether this issue can be cleared by JSCC or not. For issues that are selectable, applicants can choose whether or not to cleared by JSCC when registering their application.
1043
  example: 'Clearing'
1044
  schedule:
1045
  type: object
1046
  properties:
1047
  clearing:
1048
  $ref: "#/components/schemas/CreationSchedule"
1049
  nonClearing:
1050
  $ref: "#/components/schemas/CreationSchedule"
1051
  example:
1052
  clearing:
1053
  navPerShareCalculationDate: 0
1054
  statementFixingDate: 1
1055
  trustEstablishmentDate: 2
1056
  settlementDate: 2
1057
  nonClearing: null
1058
  orderUnit:
1059
  type: integer
1060
  description: Order unit in case of creation. If it is 10000, applicants can only request for an integer multiple of 10,000 as number of shares.
1061
  example: 10000
1062
  minimumNumberOfShares:
1063
  type: integer
1064
  description: Minimum number of shares in case of creation. If it is 30000, applicants can request in quantities of 30,000 or more.
1065
  example: 30000
1066
  redemption:
1067
  type: object
1068
  properties:
1069
  clearingType:
1070
  type: string
1071
  enum:
1072
  - Clearing
1073
  - Non-Clearing
1074
  - Selectable
1075
  description: It means whether this issue can be cleared by JSCC or not. For issues that are selectable, applicants can choose whether or not to cleared by JSCC when registering their application.
1076
  example: 'Selectable'
1077
  schedule:
1078
  type: object
1079
  properties:
1080
  clearing:
1081
  $ref: "#/components/schemas/RedemptionSchedule"
1082
  nonClearing:
1083
  $ref: "#/components/schemas/RedemptionSchedule"
1084
  example:
1085
  clearing:
1086
  navPerShareCalculationDate: 0
1087
  statementFixingDate: 1
1088
  trustCancellationDate: 2
1089
  settlementDate: 2
1090
  nonClearing:
1091
  navPerShareCalculationDate: 0
1092
  statementFixingDate: 1
1093
  trustCancellationDate: 2
1094
  settlementDate: 2
1095
  orderUnit:
1096
  type: integer
1097
  description: Order unit in case of redemption. If it is 10000, applicants can only request for an integer multiple of 10,000 as number of shares.
1098
  example: 10000
1099
  minimumNumberOfShares:
1100
  type: integer
1101
  description: Minimum number of shares in case of redemption. If it is 30000, applicants can request in quantities of 30,000 or more.
1102
  example: 30000
1103
+ customInputAllowed:
1104
+ type: boolean
1105
+ description: |
1106
+ If true, applicants can specify any value in the optional custom fields when registering an application.
1107
+ If false, applicants cannot use the optional custom fields, and all applications will have these fields left blank.
1108
+ example: true
1109
  earlyRedemptionClause:
1110
  type: integer
1111
  description: The number of early redemption shares specified in the terms and conditions of an investment trust for each fund. This is an optional field.
1112
  example: 100000
1113
  issuersOptionalFundCode:
1114
  type: string
1115
  description: Fund code used by the issuer to identify the fund internally. This is an optional field.
1116
+ example: 'ABCD1234'
1117
  isinCode:
1118
  type: string
1119
  description: ISIN code. 12-digit alphanumeric character.
1120
  example: 'JP1234567890'
1121
  amCode:
1122
  type: string
1123
  description: AM code. 5-digit number.
1124
  example: '00123'
1125
  amNameJa:
1126
  type: string
1127
  description: AM name in Japanese.
1128
  example: 'XXX アセットマネジメント'
1129
  amNameEn:
1130
  type: string
1131
  description: AM name in English.
1132
  example: 'XXX Asset Management'
1133
  tbCode:
1134
  type: string
1135
  description: TB code. 5-digit number.
1136
  example: '00001'
1137
  tbNameJa:
1138
  type: string
1139
  description: TB name in Japanese.
1140
  example: 'XXX 信託銀行'
1141
  tbNameEn:
1142
  type: string
1143
  description: TB name in English.
1144
  example: 'XXX Trust Bank Co., Ltd.'
1145
  handlingPeriodFrom:
1146
  type: string
1147
  description: Start date of available period for handling.
1148
  example: '2024-12-03'
1149
  handlingPeriodTo:
1150
  type: string
1151
  description: End date of available period for handling. If it is null, the end date is undecided.
1152
  example: '2025-09-21'
1153
  DateList:
1154
  type: array
1155
  items:
1156
  type: string
1157
  format: date
1158
  example: '1992-12-02'
1159
  Blackout:
1160
  type: object
1161
  properties:
1162
  etfCode:
1163
  type: string
1164
  example: '12340'
1165
  creationBlackoutDates:
1166
  type: array
1167
  items:
1168
  type: string
1169
  format: date
1170
  example: '1992-12-02'
1171
  redemptionBlackoutDates:
1172
  type: array
1173
  items:
1174
  type: string
1175
  format: date
1176
  example: '1992-12-02'
 
1177
  Statements:
1178
+ oneOf:
1179
+ - $ref: '#/components/schemas/InKindStatements'
1180
+ - $ref: '#/components/schemas/CashStatements'
1181
+ discriminator:
1182
+ propertyName: inKindOrInCash
1183
+ mapping:
1184
+ InKindCreationInKindRedemption: '#/components/schemas/InKindStatements'
1185
+ CashCreationCashRedemption: '#/components/schemas/CashStatements'
1186
+ pcfHeader:
1187
  type: object
1188
  properties:
1189
+ pcfNumber:
1190
+ type: string
1191
+ description: PCF number. 16-digit alphanumeric character.
1192
+ example: "1234567890123456"
1193
+ createdAt:
1194
+ type: string
1195
+ description: The date and time this PCF was registered by AM.
1196
+ example: "2025-11-14T14:33:00+09:00"
1197
+ am:
1198
+ type: object
1199
+ description: Asset Management information.
1200
+ properties:
1201
+ code:
1202
+ type: string
1203
+ description: AM code. 5-digit number.
1204
+ example: "00123"
1205
+ nameJa:
1206
+ type: string
1207
+ description: AM name in Japanese.
1208
+ example: "XXX アセットマネジメント"
1209
+ nameEn:
1210
+ type: string
1211
+ description: AM name in English.
1212
+ example: "XXX Asset Management"
1213
+ fileName:
1214
+ type: string
1215
+ description: The file name of this PCF registered by AM, including the file extension.
1216
+ example: "Basket1.csv"
1217
+ etf:
1218
+ type: object
1219
+ description: ETF fund information.
1220
+ properties:
1221
+ code:
1222
+ type: string
1223
+ description: ETF fund code. 5-digit alphanumeric character.
1224
+ example: "12340"
1225
+ isinCode:
1226
+ type: string
1227
+ description: ISIN code. 12-digit alphanumeric character.
1228
+ example: "JP1234567890"
1229
+ nameJa:
1230
+ type: string
1231
+ description: ETF fund name in Japanese.
1232
+ example: "XXX ファンド"
1233
+ nameEn:
1234
+ type: string
1235
+ description: ETF fund name in English.
1236
+ example: "XXX fund"
1237
+ creationOrRedemption:
1238
+ type: string
1239
+ description: Specify Creation or Redemption. 'C':Creation 'R':Redemption
1240
+ example: "C"
1241
+ estimatedNumberOfSharesPerUnit:
1242
+ type: integer
1243
+ description: Estimated number of ETF shares per 1 unit.
1244
+ example: 123456789012345
1245
+ basketName:
1246
+ type: string
1247
+ description: Basket name of this PCF registered by AM.
1248
+ isEnabled:
1249
+ type: boolean
1250
+ description: |
1251
+ This flag indicates whether this PCF can be specified at the time of application for creation or redemption.
1252
+ If true, applications specifying this PCF are allowed.
1253
+ If false, either the validity period has expired or this PCF has been invalidated by AM,
1254
+ and applications specifying this PCF are not allowed.
1255
+ example: true
1256
+ effectiveDate:
1257
+ type: string
1258
+ format: date
1259
+ description: Effective date of this PCF.
1260
+ example: "2025-11-12"
1261
+ expirationDate:
1262
+ type: string
1263
+ format: date
1264
+ description: Expiration date of this PCF.
1265
+ example: "2025-11-14"
1266
+ optionalInputItem:
1267
+ type: array
1268
+ minItems: 5
1269
+ maxItems: 5
1270
+ items:
1271
+ type: object
1272
+ properties:
1273
+ position:
1274
+ type: integer
1275
+ description: Position is used to identify the field number
1276
+ minimum: 1
1277
+ maximum: 5
1278
+ example: 1
1279
+ name:
1280
+ type: string
1281
+ content:
1282
+ type: string
1283
+ example:
1284
+ - position: 1
1285
+ name: "Name1"
1286
+ content: "Content1"
1287
+ - position: 2
1288
+ name: "Name2"
1289
+ content: "Content2"
1290
+ - position: 3
1291
+ name: ""
1292
+ content: ""
1293
+ - position: 4
1294
+ name: ""
1295
+ content: ""
1296
+ - position: 5
1297
+ name: ""
1298
+ content: ""
1299
+ notes:
1300
+ type: string
1301
+ description: Notes.
1302
+ example: "string"
1303
+ pcfIncludingComponentStocks:
1304
+ allOf:
1305
+ - $ref: '#/components/schemas/pcfHeader'
1306
+ - type: object
1307
+ properties:
1308
+ componentStocks:
1309
+ type: array
1310
+ description: Component Stocks.
1311
+ items:
1312
+ type: object
1313
+ properties:
1314
+ code:
1315
+ type: string
1316
+ description: Issue Code.
1317
+ example: "12340"
1318
+ isinCode:
1319
+ type: string
1320
+ description: ISIN Code.
1321
+ example: "JP1111111111"
1322
+ name:
1323
+ type: string
1324
+ description: Issue Name.
1325
+ example: "XXX 株式"
1326
+ cashSettledIssueType:
1327
+ type: string
1328
+ enum:
1329
+ - applicable
1330
+ - notApplicable
1331
+ - unspecified
1332
+ description: |
1333
+ The flag when an individual component stock is applicable for cash settlement.<br>
1334
+ notApplicable: Not applicable for cash settlement<br>
1335
+ applicable: Applicable for cash settlement<br>
1336
+ unspecified: Unspecified by AM
1337
+ example: applicable
1338
+ numberOfShares:
1339
+ type: integer
1340
+ nullable: true
1341
+ description: Number of Shares.
1342
+ example: 123456789012345
1343
+ notes:
1344
+ type: string
1345
+ description: Individual Issue Optional Input Item.
1346
+ example: "notes"
1347
+ StatementsBase:
1348
+ type: object
1349
+ properties:
1350
+ inKindOrInCash:
1351
+ type: string
1352
+ description: Specify in-kind or in-cash.
1353
+ example: 'InKindCreationInKindRedemption'
1354
  applicationId:
1355
  type: string
1356
  example: '2024123100010001'
1357
  description: Application ID
1358
  pcfNumber:
1359
  type: string
1360
  example: '1234567890123456'
1361
  description: PCF number. 16-digit alphanumeric character.
1362
  amCode:
1363
  type: string
1364
  example: '00123'
1365
  description: AM code. 5-digit number.
1366
  amNameJa:
1367
  type: string
1368
  example: 'XXX アセットマネジメント'
1369
  description: AM name in Japanese.
1370
  amNameEn:
1371
  type: string
1372
  example: 'XXX Asset Management'
1373
  description: AM name in English.
1374
  userId:
1375
  type: string
1376
  example: 'XXX@crednex.co.jp'
1377
  default: User ID that registered this statement as AM
1378
  apCode:
1379
  type: string
1380
  example: '00012'
1381
  description: AP code. 5-digit number.
1382
  apNameJa:
1383
  type: string
1384
  example: 'XXX 証券'
1385
  description: AP Name in Japanese.
1386
  apNameEn:
1387
  type: string
1388
  example: 'XXX Securities Co., Ltd.'
1389
  description: AP Name in English.
1390
  etfCode:
1391
  type: string
1392
  example: '12340'
1393
  description: ETF fund code. 5-digit alphanumeric character.
1394
  etfISINCode:
1395
  type: string
1396
  example: 'JP0000000000'
1397
  description: ISIN code. 10-digit number.
1398
  etfNameJa:
1399
  type: string
1400
  example: 'XXX ファンド'
1401
  description: ETF fund name in Japanese.
1402
  etfNameEn:
1403
  type: string
1404
  example: 'XXX fund'
1405
  description: ETF fund name in English.
1406
  creationOrRedemption:
1407
  type: string
1408
  example: 'C'
1409
+ description: Specify Creation or Redemption. 'C':Creation 'R':Redemption
1410
  tbCode:
1411
  type: string
1412
  example: '00001'
1413
  description: TB code. 5-digit number.
1414
  tbNameJa:
1415
  type: string
1416
  example: 'XXX 信託銀行'
1417
  description: TB name in Japanese.
1418
  tbNameEn:
1419
  type: string
1420
  example: 'XXX Trust Bank Co., Ltd.'
1421
  description: TB name in English.
1422
  navPerShareCalculationDate:
1423
  type: string
1424
  format: date
1425
  example: '2025-05-29'
1426
  description: NAV per share calculation date.
1427
  statementFixingDate:
1428
  type: string
1429
  format: date
1430
  example: '2025-05-29'
1431
  description: Statement fixing date.
1432
  settlementDate:
1433
  type: string
1434
  format: date
1435
  example: '2025-05-31'
1436
  description: Settlement date.
1437
  trustEstablishmentOrCancellationDate:
1438
  type: string
1439
  format: date
1440
  example: '2025-05-30'
1441
  description: Trust establishment or cancellation date.
1442
  etfNavPerShare:
1443
  type: string
1444
  example: '12345678901234.1234'
1445
+ description: |
1446
+ For an in-kind statement, this item is mandatory and represents the NAV per ETF share.
1447
+ In a cash statement, this item may not be registered from the AM and the value may be left blank.
1448
+ In that case, `etfPurchaseOrCancellationPrice` is a mandatory item from the AM and its value is stored.
1449
+ If you need to reference the price, use the value of `etfPurchaseOrCancellationPrice`.
1450
  numberOfShares:
1451
  type: integer
1452
  example: 10000
1453
+ format: int64
1454
  description: Number of shares the client ordered.
1455
  numberOfSharesOfNewRecordOrScheduledDeletion:
1456
  type: integer
1457
  example: 123456789012345
1458
  format: int64
1459
  description: The number of shares of new record or scheduled deletion.
1460
  etfNetAssetValue:
1461
  type: string
1462
  example: '12345678901234.1234'
1463
  description: ETF net asset value.
 
 
 
1464
  optionalInputItemName1:
1465
  type: string
1466
  description: Name of optional item.
 
 
 
 
1467
  optionalInputItemName2:
1468
  type: string
1469
  optionalInputItemContent2:
1470
  type: string
1471
  description: Contents of optional item.
1472
  optionalInputItemName3:
1473
  type: string
1474
  optionalInputItemContent3:
1475
  type: string
1476
  optionalInputItemName4:
1477
  type: string
 
 
 
 
 
 
 
 
 
 
 
1478
  optionalInputItemName5:
1479
  type: string
 
 
 
 
1480
  optionalInputItemName6:
1481
  type: string
1482
  optionalInputItemContent6:
1483
  type: string
1484
  optionalInputItemName7:
1485
  type: string
1486
  optionalInputItemContent7:
1487
  type: string
1488
  optionalInputItemName8:
1489
  type: string
1490
  optionalInputItemContent8:
1491
  type: string
1492
  optionalInputItemName9:
1493
  type: string
1494
  optionalInputItemContent9:
1495
  type: string
1496
  optionalInputItemName10:
1497
  type: string
1498
  optionalInputItemContent10:
1499
+ type: string
1500
  notes:
1501
  type: string
1502
  description: Notices by AM for AP.
1503
+ InKindStatements:
1504
+ allOf:
1505
+ - $ref: '#/components/schemas/StatementsBase'
1506
+ - type: object
1507
+ properties:
1508
+ inKindOrInCash:
1509
+ type: string
1510
+ description: Specify in-kind or in-cash.
1511
+ example: 'InKindCreationInKindRedemption'
1512
+ enum:
1513
+ - InKindCreationInKindRedemption
1514
+ residualNumberOfEtfSharesToBeReturned:
1515
+ type: integer
1516
+ example: 10000
1517
+ format: int64
1518
+ description: Residual Number of ETF Shares to be Returned.
1519
+ totalPaymentAmountInCreation:
1520
+ type: integer
1521
+ example: 10000
1522
+ format: int64
1523
+ description: Total Payment Amount in Creation.
1524
+ basketValuation:
1525
+ type: string
1526
+ example: '12345678901234.1234'
1527
+ description: Basket Valuation.
1528
+ cashSettledIssues:
1529
+ type: array
1530
+ description: Cash-settled Issues.
1531
+ minItems: 10
1532
+ maxItems: 10
1533
+ items:
1534
+ type: object
1535
+ properties:
1536
+ position:
1537
+ type: integer
1538
+ description: Position is used to identify the field number
1539
+ minimum: 1
1540
+ maximum: 10
1541
+ example: 1
1542
+ code:
1543
+ type: string
1544
+ description: Cash-settled Issue Code.
1545
+ example: "12340"
1546
+ name:
1547
+ type: string
1548
+ description: Cash-settled Issue Name.
1549
+ example: "XXX 株式"
1550
+ numberOfShares:
1551
+ type: integer
1552
+ nullable: true
1553
+ format: int64
1554
+ description: Cash-settled Issue Quantity.
1555
+ example: 123456789012345
1556
+ valuationPrice:
1557
+ type: string
1558
+ description: Cash-settled Issue Valuation Price.
1559
+ example: "12345678901234.1234"
1560
+ totalAmount:
1561
+ type: string
1562
+ description: Cash-settled Issue Total Amount.
1563
+ example: "12345678901234.1234"
1564
+ required:
1565
+ - position
1566
+ example:
1567
+ - position: 1
1568
+ code: "12340"
1569
+ name: "XXX 株式"
1570
+ numberOfShares: 100000
1571
+ valuationPrice: "12345678901234.1234"
1572
+ totalAmount: "12345678901234.1234"
1573
+ optionalInputItemContent1:
1574
+ type: string
1575
+ optionalInputItemContent4:
1576
+ type: string
1577
+ optionalInputItemContent5:
1578
+ type: string
1579
+ componentStocks:
1580
+ type: array
1581
+ description: Component Stocks.
1582
+ items:
1583
+ type: object
1584
+ properties:
1585
+ code:
1586
+ type: string
1587
+ description: Issue Code.
1588
+ example: "12340"
1589
+ isinCode:
1590
+ type: string
1591
+ description: ISIN Code.
1592
+ example: "JP1111111111"
1593
+ name:
1594
+ type: string
1595
+ description: Issue Name.
1596
+ example: "XXX 株式"
1597
+ numberOfShares:
1598
+ type: integer
1599
+ format: int64
1600
+ description: Number of Shares.
1601
+ example: 123456789012345
1602
+ stockPrice:
1603
+ type: string
1604
+ description: Stock Price.
1605
+ example: "12345678901234.1234"
1606
+ individualIssueTotalMarketValue:
1607
+ type: string
1608
+ description: Individual Issue Total Market Value.
1609
+ example: "12345678901234.1234"
1610
+ notes:
1611
+ type: string
1612
+ description: Individual Issue Optional Input Item.
1613
+ example: "string"
1614
+ CashStatements:
1615
+ allOf:
1616
+ - $ref: '#/components/schemas/StatementsBase'
1617
+ - type: object
1618
+ properties:
1619
+ inKindOrInCash:
1620
+ type: string
1621
+ description: Specify in-kind or in-cash.
1622
+ example: 'CashCreationCashRedemption'
1623
+ enum:
1624
+ - CashCreationCashRedemption
1625
+ etfPurchaseOrCancellationPrice:
1626
+ type: string
1627
+ example: '12345678901234.1234'
1628
+ description: |
1629
+ The price per ETF unit obtained by adding or subtracting execution costs (spreads) and other fees to or from the NAV per ETF unit is set.
1630
+ In a cash statement, this is a mandatory item that must always be registered by the AM, and its value is stored.
1631
+ When you need to reference the NAV in a cash statement, use this item.
1632
+ executionCosts:
1633
+ type: string
1634
+ description: Execution cost of this creation/redemption for AP.
1635
+ totalPaymentAmount:
1636
+ type: string
1637
+ example: '123456789012345678'
1638
+ description: Total payment of this creation/redemption for AP.
1639
+ statementType:
1640
+ type: string
1641
+ enum:
1642
+ - 'CreatedByAM'
1643
+ - 'CreatedByCredNex'
1644
+ description: |
1645
+ CreatedByAM: This statement is registered by AM, and transitions to 'StatementFixed' status by the deadline of the statement fixing date.
1646
+
1647
+ CreatedByCredNex: This statement is automatically created by CredNex because the application for the statement transitions to 'Accepted', but does not transition to 'StatementFixed' status by the deadline of the statement fixing date.
1648
+
1649
+ If the application is non-cleared, the return value for this item will be an empty string.
1650
+ dvpSettlementPrice:
1651
+ type: string
1652
+ example: '12345678901234.1234'
1653
+ description: DVP settlement price calculated on the application date. If the application is non-cleared, the return value for this item will be an empty string.
1654
+
1655
  BaseSchedule:
1656
  type: object
1657
  description: Schedule configuration depends on clearingType. For "Clearing", only clearing.schedule is set and nonClearing.schedule is null. For "Non-Clearing", only nonClearing.schedule is set and clearing.schedule is null. For "Selectable", both clearing.schedule and nonClearing.schedule are set.
1658
  nullable: true
1659
  properties:
1660
  navPerShareCalculationDate:
1661
  type: integer
1662
  description: NAV per share calculation date. It is counted from the trade date (dayT). If it is '0', T+0 is NAV per share calculation date.
1663
  example: 0
1664
  statementFixingDate:
1665
  type: integer
1666
  description: Statement fixing date. It is counted from the trade date (dayT).
1667
  example: 1
1668
  settlementDate:
1669
  type: integer
1670
  description: Settlement date. It is counted from the trade date (dayT).
1671
  example: 2
1672
  CreationSchedule:
1673
  allOf:
1674
  - $ref: "#/components/schemas/BaseSchedule"
1675
  - type: object
1676
  properties:
1677
  trustEstablishmentDate:
1678
  type: integer
1679
  description: Trust establishment date in case of creation. It is counted from the trade date (dayT).
1680
  example: 2
1681
  RedemptionSchedule:
1682
  allOf:
1683
  - $ref: "#/components/schemas/BaseSchedule"
1684
  - type: object
1685
  properties:
1686
  trustCancellationDate:
1687
  type: integer
1688
  description: Trust cancellation date in case of redemption. It is counted from the trade date (dayT).
1689
  example: 2
1690
  parameters:
1691
  applicationId:
1692
  name: applicationId
1693
  in: path
1694
  required: true
1695
  description: Application ID
1696
  schema:
1697
  type: string
1698
  example: '2024123100010001'
1699
  statementFixingDate:
1700
  name: statementFixingDate
1701
  in: query
1702
  required: false
1703
  description: Statement fixing date. Default is today (JST).
1704
  schema:
1705
  type: string
1706
  format: date
1707
  example: '2025-05-29'
1708
  tags:
1709
  - name: applications
1710
  description: Create/Approve creation/redemption applications
1711
  - name: information
1712
  description: Get information related to ETF creation/redemption operations