@ampeco/public-api-mcp 3.255.2 → 3.256.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/build-stats.json +9 -9
- package/dist/generated/endpoints.json +96 -24
- package/dist/generated/response-schemas.json +547 -24
- package/dist/generated/schemas.d.ts +34 -21
- package/dist/generated/schemas.d.ts.map +1 -1
- package/dist/generated/schemas.js +13 -7
- package/dist/generated/schemas.js.map +1 -1
- package/dist/generated/schemas.ts +14 -7
- package/package.json +1 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
|
-
"totalEndpoints":
|
|
3
|
-
"originalSize":
|
|
4
|
-
"optimizedSize":
|
|
5
|
-
"reductionPercent": 72.
|
|
6
|
-
"buildDuration":
|
|
2
|
+
"totalEndpoints": 658,
|
|
3
|
+
"originalSize": 6198282,
|
|
4
|
+
"optimizedSize": 1729692,
|
|
5
|
+
"reductionPercent": 72.09,
|
|
6
|
+
"buildDuration": 1572,
|
|
7
7
|
"responseSchemas": {
|
|
8
|
-
"total":
|
|
9
|
-
"withSchemas":
|
|
10
|
-
"totalSchemaSize":
|
|
11
|
-
"averageSchemaSize":
|
|
8
|
+
"total": 658,
|
|
9
|
+
"withSchemas": 658,
|
|
10
|
+
"totalSchemaSize": 3551045,
|
|
11
|
+
"averageSchemaSize": 5397
|
|
12
12
|
}
|
|
13
13
|
}
|
|
@@ -3674,6 +3674,7 @@
|
|
|
3674
3674
|
"SessionUpdateNotification",
|
|
3675
3675
|
"session.chargingPeriod.changed",
|
|
3676
3676
|
"UserChangedNotification",
|
|
3677
|
+
"user.UserGroup.changed",
|
|
3677
3678
|
"SubOperatorChangedNotification",
|
|
3678
3679
|
"TariffChangedNotification",
|
|
3679
3680
|
"tariffGroup.changed",
|
|
@@ -5749,6 +5750,57 @@
|
|
|
5749
5750
|
}
|
|
5750
5751
|
}
|
|
5751
5752
|
},
|
|
5753
|
+
{
|
|
5754
|
+
"path": "/public-api/actions/transaction/v1.0/{transaction}/set-custom-fields",
|
|
5755
|
+
"method": "POST",
|
|
5756
|
+
"operationId": "transactionSetCustomFields",
|
|
5757
|
+
"summary": "Transaction / set custom fields",
|
|
5758
|
+
"description": "⚠️ Experimental endpoint — not yet a stable contract. This action ships as experimental / beta. While experimental, its schema and behaviour may change without a version bump — including breaking changes within v1.0 itself. Anyone consuming it does so for evaluation only, or by coordinating adoption with their account manager so changes can be sequenced with them. It graduates to a stable, version-locked contract (where the normal breaking-change rules apply) only when this experimental notice is removed. Set applicable transaction custom field values without changing the transaction's status, financial amounts, references or timestamps. This action requires permission to view the transaction and the `Transactions.update-custom-fields` permission. It works for finalized transactions even when ordinary transaction updates are unavailable. Send a JSON object containing only the required `customFields` object; other body properties and any query parameters return `422` validation errors. Omitted identifiers remain unchanged, while `null` clears the corresponding value. When custom fields are enabled for transactions, an empty object succeeds as a no-op. Invalid or unavailable identifiers, invalid values, and disabled custom fields return `422` validation errors, and no submitted values are changed. A `404` response means the transaction was not found or is inaccessible. The response is the bare transaction read object, without a `data` wrapper.",
|
|
5759
|
+
"tags": [
|
|
5760
|
+
"action / transaction"
|
|
5761
|
+
],
|
|
5762
|
+
"requestBody": {
|
|
5763
|
+
"required": true,
|
|
5764
|
+
"content": {
|
|
5765
|
+
"application/json": {
|
|
5766
|
+
"schema": {
|
|
5767
|
+
"type": "object",
|
|
5768
|
+
"properties": {
|
|
5769
|
+
"customFields": {
|
|
5770
|
+
"type": "object",
|
|
5771
|
+
"additionalProperties": true,
|
|
5772
|
+
"description": "Custom field values keyed by their administrator-defined identifiers. The accepted type for each identifier is defined by the tenant's custom field configuration. Boolean values are JSON booleans; text and long text values are strings; email values are email-formatted strings; URL values are HTTP or HTTPS URL strings; number values use canonical base-10 decimal strings from `-99999999999999.999999` through `99999999999999.999999` with up to six fractional digits and no insignificant trailing fractional zeroes; date values are ISO 8601 `YYYY-MM-DD` strings; date-time values are ISO 8601 timestamps with a UTC offset; and JSON values may use any JSON-serializable value. Decimal strings are the precision-safe number request representation. JSON numeric inputs remain accepted for compatibility, but their precision may depend on the client's number handling."
|
|
5773
|
+
}
|
|
5774
|
+
},
|
|
5775
|
+
"required": [
|
|
5776
|
+
"customFields"
|
|
5777
|
+
],
|
|
5778
|
+
"additionalProperties": false
|
|
5779
|
+
}
|
|
5780
|
+
}
|
|
5781
|
+
}
|
|
5782
|
+
},
|
|
5783
|
+
"responses": {
|
|
5784
|
+
"202": {
|
|
5785
|
+
"description": "Accepted - the response body contains the transaction's read representation after applying the submitted values"
|
|
5786
|
+
},
|
|
5787
|
+
"401": {
|
|
5788
|
+
"description": "Access token is missing or invalid"
|
|
5789
|
+
},
|
|
5790
|
+
"403": {
|
|
5791
|
+
"description": "You do not have permission to perform the action"
|
|
5792
|
+
},
|
|
5793
|
+
"404": {
|
|
5794
|
+
"description": "The record is not found"
|
|
5795
|
+
},
|
|
5796
|
+
"422": {
|
|
5797
|
+
"description": "The payload you provided is invalid"
|
|
5798
|
+
},
|
|
5799
|
+
"429": {
|
|
5800
|
+
"description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
|
|
5801
|
+
}
|
|
5802
|
+
}
|
|
5803
|
+
},
|
|
5752
5804
|
{
|
|
5753
5805
|
"path": "/public-api/actions/transactions/v1.0/{transaction}/issue-invoice",
|
|
5754
5806
|
"method": "POST",
|
|
@@ -7241,6 +7293,7 @@
|
|
|
7241
7293
|
"SessionUpdateNotification",
|
|
7242
7294
|
"session.chargingPeriod.changed",
|
|
7243
7295
|
"UserChangedNotification",
|
|
7296
|
+
"user.UserGroup.changed",
|
|
7244
7297
|
"SubOperatorChangedNotification",
|
|
7245
7298
|
"TariffChangedNotification",
|
|
7246
7299
|
"tariffGroup.changed",
|
|
@@ -7375,6 +7428,7 @@
|
|
|
7375
7428
|
"SessionUpdateNotification",
|
|
7376
7429
|
"session.chargingPeriod.changed",
|
|
7377
7430
|
"UserChangedNotification",
|
|
7431
|
+
"user.UserGroup.changed",
|
|
7378
7432
|
"SubOperatorChangedNotification",
|
|
7379
7433
|
"TariffChangedNotification",
|
|
7380
7434
|
"tariffGroup.changed",
|
|
@@ -7555,6 +7609,7 @@
|
|
|
7555
7609
|
"SessionUpdateNotification",
|
|
7556
7610
|
"session.chargingPeriod.changed",
|
|
7557
7611
|
"UserChangedNotification",
|
|
7612
|
+
"user.UserGroup.changed",
|
|
7558
7613
|
"SubOperatorChangedNotification",
|
|
7559
7614
|
"TariffChangedNotification",
|
|
7560
7615
|
"tariffGroup.changed",
|
|
@@ -7781,6 +7836,7 @@
|
|
|
7781
7836
|
"SessionUpdateNotification",
|
|
7782
7837
|
"session.chargingPeriod.changed",
|
|
7783
7838
|
"UserChangedNotification",
|
|
7839
|
+
"user.UserGroup.changed",
|
|
7784
7840
|
"SubOperatorChangedNotification",
|
|
7785
7841
|
"TariffChangedNotification",
|
|
7786
7842
|
"tariffGroup.changed",
|
|
@@ -46932,7 +46988,7 @@
|
|
|
46932
46988
|
"method": "GET",
|
|
46933
46989
|
"operationId": "getPaymentTerminalsV1_1",
|
|
46934
46990
|
"summary": "Payment Terminals / Listing",
|
|
46935
|
-
"description": "Get all payment terminals",
|
|
46991
|
+
"description": "Get all payment terminals. Nonempty custom-field filter criteria for unknown, inaccessible, disabled, deleted or non-filterable fields return `400`. Malformed values for usable custom-field filters return `422`.",
|
|
46936
46992
|
"tags": [
|
|
46937
46993
|
"resource / payment terminals"
|
|
46938
46994
|
],
|
|
@@ -46982,7 +47038,7 @@
|
|
|
46982
47038
|
"customFields": {
|
|
46983
47039
|
"type": "object",
|
|
46984
47040
|
"additionalProperties": true,
|
|
46985
|
-
"description": "
|
|
47041
|
+
"description": "Filter a resource listing by administrator-defined custom fields using literal dotted keys such as `filter[customFields.reference]=INV-42`, not nested `filter[customFields][reference]` keys. Text, email and URL fields accept a single string and use case- and accent-insensitive substring matching; `%`, `_` and backslashes are matched literally. Boolean fields accept `true`, `false`, `1` or `0` as strings, or boolean and integer equivalents. Number, date and date-time fields accept inclusive `filter[customFields.<identifier>][from]` and/or `filter[customFields.<identifier>][to]` bounds, including one-sided ranges. Number bounds are decimal strings from `-99999999999999.999999` to `99999999999999.999999` with at most six fractional places, compared without rounding. Dates use `YYYY-MM-DD` calendar dates; date-times use ISO 8601, with offsets normalized to UTC and no offset interpreted as UTC. Long text and JSON fields are not filterable. Custom-field criteria combine with each other and the resource's other filters using AND. Empty criteria have no effect. Malformed values for usable fields return a property-bound `422` validation error. See each listing operation for how it handles unsupported nonempty criteria."
|
|
46986
47042
|
}
|
|
46987
47043
|
}
|
|
46988
47044
|
}
|
|
@@ -49899,7 +49955,7 @@
|
|
|
49899
49955
|
"charge_point",
|
|
49900
49956
|
"integration"
|
|
49901
49957
|
],
|
|
49902
|
-
"description": "Origin of the per-kWh rate used to reimburse a home-charging session: - **policy**: The electricity rate linked to the policy provides the rate. `electricityRateId` is required and must belong to the same operator as the policy. - **charge_point**: The electricity rate assigned to the personal charge point provides the rate, whichever surface assigned it. `electricityRateId`
|
|
49958
|
+
"description": "Origin of the per-kWh rate used to reimburse a home-charging session: - **policy**: The electricity rate linked to the policy provides the rate. `electricityRateId` is required and must belong to the same operator as the policy; `integrationId` must not be set on the policy. - **charge_point**: The electricity rate assigned to the personal charge point provides the rate, whichever surface assigned it. Neither `electricityRateId` nor `integrationId` is set on the policy. - **integration**: An integration resolves the electricity rate — for example by the charge point's region. `integrationId` is required and must reference a regional electricity rates integration of the same operator; `electricityRateId` must not be set on the policy. The integration's region-to-rate bindings are configured in the admin panel."
|
|
49903
49959
|
}
|
|
49904
49960
|
}
|
|
49905
49961
|
}
|
|
@@ -49962,7 +50018,11 @@
|
|
|
49962
50018
|
},
|
|
49963
50019
|
"electricityRateId": {
|
|
49964
50020
|
"type": "integer",
|
|
49965
|
-
"description": "Linked electricity rate providing the reimbursement rate.
|
|
50021
|
+
"description": "Linked electricity rate providing the reimbursement rate. Required when `electricityRateSource` is `policy`, and must belong to the same operator as the policy; submitting it with any other rate source is rejected with 422."
|
|
50022
|
+
},
|
|
50023
|
+
"integrationId": {
|
|
50024
|
+
"type": "integer",
|
|
50025
|
+
"description": "Regional electricity rates integration that resolves the reimbursement rate. Required when `electricityRateSource` is `integration`, and must belong to the same operator as the policy; submitting it with any other rate source is rejected with 422. The integration is created and configured in the admin panel; use the id shown on its detail page."
|
|
49966
50026
|
},
|
|
49967
50027
|
"validityEndsOn": {
|
|
49968
50028
|
"type": "string",
|
|
@@ -49973,9 +50033,10 @@
|
|
|
49973
50033
|
"type": "string",
|
|
49974
50034
|
"enum": [
|
|
49975
50035
|
"policy",
|
|
49976
|
-
"charge_point"
|
|
50036
|
+
"charge_point",
|
|
50037
|
+
"integration"
|
|
49977
50038
|
],
|
|
49978
|
-
"description": "Origin of the per-kWh rate used to reimburse a home-charging session: - **policy**: The electricity rate linked to the policy provides the rate. `electricityRateId` is required and must belong to the same operator as the policy. - **charge_point**: The electricity rate assigned to the personal charge point provides the rate, whichever surface assigned it. `electricityRateId`
|
|
50039
|
+
"description": "Origin of the per-kWh rate used to reimburse a home-charging session: - **policy**: The electricity rate linked to the policy provides the rate. `electricityRateId` is required and must belong to the same operator as the policy; `integrationId` must not be set on the policy. - **charge_point**: The electricity rate assigned to the personal charge point provides the rate, whichever surface assigned it. Neither `electricityRateId` nor `integrationId` is set on the policy. - **integration**: An integration resolves the electricity rate — for example by the charge point's region. `integrationId` is required and must reference a regional electricity rates integration of the same operator; `electricityRateId` must not be set on the policy. The integration's region-to-rate bindings are configured in the admin panel."
|
|
49979
50040
|
},
|
|
49980
50041
|
"operatorId": {
|
|
49981
50042
|
"type": "integer",
|
|
@@ -50043,7 +50104,7 @@
|
|
|
50043
50104
|
"method": "DELETE",
|
|
50044
50105
|
"operationId": "reimbursementPolicyDelete",
|
|
50045
50106
|
"summary": "Reimbursement policy / Delete",
|
|
50046
|
-
"description": "⚠️ Experimental endpoint — not yet a stable contract. This resource ships as experimental / beta. While experimental, its schema and behaviour may change without a version bump — including breaking changes within v1.0 itself. Anyone consuming it does so for evaluation only, or by coordinating adoption with their account manager so changes can be sequenced with them. It graduates to a stable, version-locked contract (where the normal breaking-change rules apply) only when this experimental notice is removed. Delete a reimbursement policy. Deletion is rejected only while the policy is attached to partner invites. A policy is deletable whatever its `electricityRateSource` is, `integration` included
|
|
50107
|
+
"description": "⚠️ Experimental endpoint — not yet a stable contract. This resource ships as experimental / beta. While experimental, its schema and behaviour may change without a version bump — including breaking changes within v1.0 itself. Anyone consuming it does so for evaluation only, or by coordinating adoption with their account manager so changes can be sequenced with them. It graduates to a stable, version-locked contract (where the normal breaking-change rules apply) only when this experimental notice is removed. Delete a reimbursement policy. Deletion is rejected only while the policy is attached to partner invites. A policy is deletable whatever its `electricityRateSource` is, `integration` included.",
|
|
50047
50108
|
"tags": [
|
|
50048
50109
|
"resource / reimbursement policies"
|
|
50049
50110
|
],
|
|
@@ -50076,7 +50137,7 @@
|
|
|
50076
50137
|
"method": "PATCH",
|
|
50077
50138
|
"operationId": "reimbursementPolicyUpdate",
|
|
50078
50139
|
"summary": "Reimbursement policy / Update",
|
|
50079
|
-
"description": "⚠️ Experimental endpoint — not yet a stable contract. This resource ships as experimental / beta. While experimental, its schema and behaviour may change without a version bump — including breaking changes within v1.0 itself. Anyone consuming it does so for evaluation only, or by coordinating adoption with their account manager so changes can be sequenced with them. It graduates to a stable, version-locked contract (where the normal breaking-change rules apply) only when this experimental notice is removed. Update a reimbursement policy. The update is rejected with 409 while the requested change conflicts with the rate the policy resolves — selecting the `charge_point` rate source while an attached charge point has no electricity rate. That conflict clears only when the configuration changes: give the charge point a rate, or detach it from the policy.
|
|
50140
|
+
"description": "⚠️ Experimental endpoint — not yet a stable contract. This resource ships as experimental / beta. While experimental, its schema and behaviour may change without a version bump — including breaking changes within v1.0 itself. Anyone consuming it does so for evaluation only, or by coordinating adoption with their account manager so changes can be sequenced with them. It graduates to a stable, version-locked contract (where the normal breaking-change rules apply) only when this experimental notice is removed. Update a reimbursement policy. The update is rejected with 409 while the requested change conflicts with the rate the policy resolves — selecting the `charge_point` rate source while an attached charge point has no electricity rate. That conflict clears only when the configuration changes: give the charge point a rate, or detach it from the policy. Each rate source has its own reference: `policy` uses `electricityRateId` and `integration` uses `integrationId`. Changing `electricityRateSource` clears the reference the previous source used, whether or not the request sends that reference as `null`; sending it as `null` explicitly is accepted and produces the same result. Sending a non-null reference the selected rate source does not use is rejected with 422 keyed by that field. A policy whose rate source does not change keeps its stored reference when the reference is omitted, so an `integration` policy can be repointed by sending `integrationId` alone. Every other rejection of the request body is reported as 422, keyed by the offending field — malformed or invalid field values, and changing `partnerId` on a policy that is already assigned to partner invites or has active charge point attachments, which returns a `partnerId` validation error rather than a 409. Deactivated attachments do not block the change.",
|
|
50080
50141
|
"tags": [
|
|
50081
50142
|
"resource / reimbursement policies"
|
|
50082
50143
|
],
|
|
@@ -50100,9 +50161,10 @@
|
|
|
50100
50161
|
"type": "string",
|
|
50101
50162
|
"enum": [
|
|
50102
50163
|
"policy",
|
|
50103
|
-
"charge_point"
|
|
50164
|
+
"charge_point",
|
|
50165
|
+
"integration"
|
|
50104
50166
|
],
|
|
50105
|
-
"description": "Origin of the per-kWh rate used to reimburse a home-charging session: - **policy**: The electricity rate linked to the policy provides the rate. `electricityRateId` is required and must belong to the same operator as the policy. - **charge_point**: The electricity rate assigned to the personal charge point provides the rate, whichever surface assigned it. `electricityRateId`
|
|
50167
|
+
"description": "Origin of the per-kWh rate used to reimburse a home-charging session: - **policy**: The electricity rate linked to the policy provides the rate. `electricityRateId` is required and must belong to the same operator as the policy; `integrationId` must not be set on the policy. - **charge_point**: The electricity rate assigned to the personal charge point provides the rate, whichever surface assigned it. Neither `electricityRateId` nor `integrationId` is set on the policy. - **integration**: An integration resolves the electricity rate — for example by the charge point's region. `integrationId` is required and must reference a regional electricity rates integration of the same operator; `electricityRateId` must not be set on the policy. The integration's region-to-rate bindings are configured in the admin panel."
|
|
50106
50168
|
},
|
|
50107
50169
|
"partnerId": {
|
|
50108
50170
|
"type": "integer",
|
|
@@ -50117,7 +50179,12 @@
|
|
|
50117
50179
|
"electricityRateId": {
|
|
50118
50180
|
"type": "integer",
|
|
50119
50181
|
"nullable": true,
|
|
50120
|
-
"description": "Linked electricity rate providing the reimbursement rate. Required when `electricityRateSource` is `policy
|
|
50182
|
+
"description": "Linked electricity rate providing the reimbursement rate. Required when `electricityRateSource` is `policy`, and must belong to the same operator as the policy. Not used by any other rate source — see the operation description for how references are cleared when the rate source changes."
|
|
50183
|
+
},
|
|
50184
|
+
"integrationId": {
|
|
50185
|
+
"type": "integer",
|
|
50186
|
+
"nullable": true,
|
|
50187
|
+
"description": "Regional electricity rates integration that resolves the reimbursement rate. Required when `electricityRateSource` is `integration`, and must belong to the same operator as the policy. Not used by any other rate source — see the operation description for how references are cleared when the rate source changes. The integration is created and configured in the admin panel; use the id shown on its detail page."
|
|
50121
50188
|
},
|
|
50122
50189
|
"validityEndsOn": {
|
|
50123
50190
|
"type": "string",
|
|
@@ -50335,7 +50402,7 @@
|
|
|
50335
50402
|
"customFields": {
|
|
50336
50403
|
"type": "object",
|
|
50337
50404
|
"additionalProperties": true,
|
|
50338
|
-
"description": "
|
|
50405
|
+
"description": "Filter a resource listing by administrator-defined custom fields using literal dotted keys such as `filter[customFields.reference]=INV-42`, not nested `filter[customFields][reference]` keys. Text, email and URL fields accept a single string and use case- and accent-insensitive substring matching; `%`, `_` and backslashes are matched literally. Boolean fields accept `true`, `false`, `1` or `0` as strings, or boolean and integer equivalents. Number, date and date-time fields accept inclusive `filter[customFields.<identifier>][from]` and/or `filter[customFields.<identifier>][to]` bounds, including one-sided ranges. Number bounds are decimal strings from `-99999999999999.999999` to `99999999999999.999999` with at most six fractional places, compared without rounding. Dates use `YYYY-MM-DD` calendar dates; date-times use ISO 8601, with offsets normalized to UTC and no offset interpreted as UTC. Long text and JSON fields are not filterable. Custom-field criteria combine with each other and the resource's other filters using AND. Empty criteria have no effect. Malformed values for usable fields return a property-bound `422` validation error. See each listing operation for how it handles unsupported nonempty criteria."
|
|
50339
50406
|
}
|
|
50340
50407
|
}
|
|
50341
50408
|
}
|
|
@@ -64027,7 +64094,7 @@
|
|
|
64027
64094
|
"method": "GET",
|
|
64028
64095
|
"operationId": "transactionsListing",
|
|
64029
64096
|
"summary": "Transactions / Listing",
|
|
64030
|
-
"description": "Get all transactions",
|
|
64097
|
+
"description": "Get all transactions. Nonempty custom-field filter criteria for unknown, inaccessible, disabled, deleted or non-filterable fields have no effect on this listing.",
|
|
64031
64098
|
"tags": [
|
|
64032
64099
|
"resource / transactions"
|
|
64033
64100
|
],
|
|
@@ -64281,6 +64348,11 @@
|
|
|
64281
64348
|
"type": "string",
|
|
64282
64349
|
"format": "integer",
|
|
64283
64350
|
"description": "Only list transactions that were settled by this specific transaction. Given a settlement transaction ID, returns all obligation transactions (sessions, base fee, charger fees) that were settled by that payment."
|
|
64351
|
+
},
|
|
64352
|
+
"customFields": {
|
|
64353
|
+
"type": "object",
|
|
64354
|
+
"additionalProperties": true,
|
|
64355
|
+
"description": "Filter a resource listing by administrator-defined custom fields using literal dotted keys such as `filter[customFields.reference]=INV-42`, not nested `filter[customFields][reference]` keys. Text, email and URL fields accept a single string and use case- and accent-insensitive substring matching; `%`, `_` and backslashes are matched literally. Boolean fields accept `true`, `false`, `1` or `0` as strings, or boolean and integer equivalents. Number, date and date-time fields accept inclusive `filter[customFields.<identifier>][from]` and/or `filter[customFields.<identifier>][to]` bounds, including one-sided ranges. Number bounds are decimal strings from `-99999999999999.999999` to `99999999999999.999999` with at most six fractional places, compared without rounding. Dates use `YYYY-MM-DD` calendar dates; date-times use ISO 8601, with offsets normalized to UTC and no offset interpreted as UTC. Long text and JSON fields are not filterable. Custom-field criteria combine with each other and the resource's other filters using AND. Empty criteria have no effect. Malformed values for usable fields return a property-bound `422` validation error. See each listing operation for how it handles unsupported nonempty criteria."
|
|
64284
64356
|
}
|
|
64285
64357
|
}
|
|
64286
64358
|
}
|
|
@@ -73363,7 +73435,7 @@
|
|
|
73363
73435
|
],
|
|
73364
73436
|
"info": {
|
|
73365
73437
|
"title": "Public API",
|
|
73366
|
-
"version": "3.
|
|
73438
|
+
"version": "3.256.0",
|
|
73367
73439
|
"description": "The Public API provides server-to-server integration capabilities for your EV charging platform.\n\n**Authentication.** Existing integrations continue to work unchanged — long-lived UUID admin tokens are sent in `Authorization: Bearer ...` with no exchange required. Two security schemes are documented for OpenAPI client tooling, both resulting in the same Bearer header at the wire level:\n - `bearerAuth` — the token in the `Authorization: Bearer ...` header is either a long-lived UUID admin token (issued via the admin UI, used directly) or a short-lived access token previously obtained via OAuth.\n - `oauth2ClientCredentials` - a `client_id` / `client_secret` pair should be exchanged for a short-lived access token at `/public-api/oauth/token` per RFC 6749 Section 4.4 (Client Credentials Grant), and the short-lived token should be used in the `Authorization: Bearer ...` header. The OAuth `client_secret` itself cannot be sent directly as a bearer token — it must be exchanged first.\n"
|
|
73368
73440
|
},
|
|
73369
73441
|
"servers": [
|
|
@@ -73377,18 +73449,18 @@
|
|
|
73377
73449
|
}
|
|
73378
73450
|
}
|
|
73379
73451
|
],
|
|
73380
|
-
"buildTimestamp": "2026-09-
|
|
73452
|
+
"buildTimestamp": "2026-09-30T11:40:50.788Z",
|
|
73381
73453
|
"stats": {
|
|
73382
|
-
"totalEndpoints":
|
|
73383
|
-
"originalSize":
|
|
73384
|
-
"optimizedSize":
|
|
73385
|
-
"reductionPercent": 72.
|
|
73386
|
-
"buildDuration":
|
|
73454
|
+
"totalEndpoints": 658,
|
|
73455
|
+
"originalSize": 6198282,
|
|
73456
|
+
"optimizedSize": 1729692,
|
|
73457
|
+
"reductionPercent": 72.09,
|
|
73458
|
+
"buildDuration": 1572,
|
|
73387
73459
|
"responseSchemas": {
|
|
73388
|
-
"total":
|
|
73389
|
-
"withSchemas":
|
|
73390
|
-
"totalSchemaSize":
|
|
73391
|
-
"averageSchemaSize":
|
|
73460
|
+
"total": 658,
|
|
73461
|
+
"withSchemas": 658,
|
|
73462
|
+
"totalSchemaSize": 3551045,
|
|
73463
|
+
"averageSchemaSize": 5397
|
|
73392
73464
|
}
|
|
73393
73465
|
}
|
|
73394
73466
|
}
|