@vepler/sdk 1.9.11 → 1.10.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.
Files changed (220) hide show
  1. package/README.md +23 -1
  2. package/dist/commonjs/funcs/schoolMetricsGetMetrics.d.ts +17 -0
  3. package/dist/commonjs/funcs/schoolMetricsGetMetrics.d.ts.map +1 -0
  4. package/dist/commonjs/funcs/schoolMetricsGetMetrics.js +130 -0
  5. package/dist/commonjs/funcs/schoolMetricsGetMetrics.js.map +1 -0
  6. package/dist/commonjs/funcs/schoolMetricsListProfiles.d.ts +17 -0
  7. package/dist/commonjs/funcs/schoolMetricsListProfiles.d.ts.map +1 -0
  8. package/dist/commonjs/funcs/schoolMetricsListProfiles.js +104 -0
  9. package/dist/commonjs/funcs/schoolMetricsListProfiles.js.map +1 -0
  10. package/dist/commonjs/funcs/schoolsGet.d.ts +17 -0
  11. package/dist/commonjs/funcs/schoolsGet.d.ts.map +1 -0
  12. package/dist/commonjs/funcs/schoolsGet.js +124 -0
  13. package/dist/commonjs/funcs/schoolsGet.js.map +1 -0
  14. package/dist/commonjs/funcs/schoolsGetBySlug.d.ts +17 -0
  15. package/dist/commonjs/funcs/schoolsGetBySlug.d.ts.map +1 -0
  16. package/dist/commonjs/funcs/schoolsGetBySlug.js +124 -0
  17. package/dist/commonjs/funcs/schoolsGetBySlug.js.map +1 -0
  18. package/dist/commonjs/funcs/schoolsGetByUrn.d.ts +17 -0
  19. package/dist/commonjs/funcs/schoolsGetByUrn.d.ts.map +1 -0
  20. package/dist/commonjs/funcs/schoolsGetByUrn.js +124 -0
  21. package/dist/commonjs/funcs/schoolsGetByUrn.js.map +1 -0
  22. package/dist/commonjs/funcs/schoolsList.d.ts +17 -0
  23. package/dist/commonjs/funcs/schoolsList.d.ts.map +1 -0
  24. package/dist/commonjs/funcs/schoolsList.js +126 -0
  25. package/dist/commonjs/funcs/schoolsList.js.map +1 -0
  26. package/dist/commonjs/funcs/schoolsSearchNearby.d.ts +17 -0
  27. package/dist/commonjs/funcs/schoolsSearchNearby.d.ts.map +1 -0
  28. package/dist/commonjs/funcs/schoolsSearchNearby.js +125 -0
  29. package/dist/commonjs/funcs/schoolsSearchNearby.js.map +1 -0
  30. package/dist/commonjs/funcs/schoolsSearchWithin.d.ts +17 -0
  31. package/dist/commonjs/funcs/schoolsSearchWithin.d.ts.map +1 -0
  32. package/dist/commonjs/funcs/schoolsSearchWithin.js +125 -0
  33. package/dist/commonjs/funcs/schoolsSearchWithin.js.map +1 -0
  34. package/dist/commonjs/lib/config.d.ts +3 -3
  35. package/dist/commonjs/lib/config.d.ts.map +1 -1
  36. package/dist/commonjs/lib/config.js +3 -3
  37. package/dist/commonjs/lib/config.js.map +1 -1
  38. package/dist/commonjs/sdk/models/operations/getmetricprofiles.d.ts +89 -0
  39. package/dist/commonjs/sdk/models/operations/getmetricprofiles.d.ts.map +1 -0
  40. package/dist/commonjs/sdk/models/operations/getmetricprofiles.js +122 -0
  41. package/dist/commonjs/sdk/models/operations/getmetricprofiles.js.map +1 -0
  42. package/dist/commonjs/sdk/models/operations/getschoolbyid.d.ts +245 -0
  43. package/dist/commonjs/sdk/models/operations/getschoolbyid.d.ts.map +1 -0
  44. package/dist/commonjs/sdk/models/operations/getschoolbyid.js +267 -0
  45. package/dist/commonjs/sdk/models/operations/getschoolbyid.js.map +1 -0
  46. package/dist/commonjs/sdk/models/operations/getschoolbyslug.d.ts +245 -0
  47. package/dist/commonjs/sdk/models/operations/getschoolbyslug.d.ts.map +1 -0
  48. package/dist/commonjs/sdk/models/operations/getschoolbyslug.js +267 -0
  49. package/dist/commonjs/sdk/models/operations/getschoolbyslug.js.map +1 -0
  50. package/dist/commonjs/sdk/models/operations/getschoolbyurn.d.ts +245 -0
  51. package/dist/commonjs/sdk/models/operations/getschoolbyurn.d.ts.map +1 -0
  52. package/dist/commonjs/sdk/models/operations/getschoolbyurn.js +267 -0
  53. package/dist/commonjs/sdk/models/operations/getschoolbyurn.js.map +1 -0
  54. package/dist/commonjs/sdk/models/operations/getschoolmetrics.d.ts +901 -0
  55. package/dist/commonjs/sdk/models/operations/getschoolmetrics.d.ts.map +1 -0
  56. package/dist/commonjs/sdk/models/operations/getschoolmetrics.js +844 -0
  57. package/dist/commonjs/sdk/models/operations/getschoolmetrics.js.map +1 -0
  58. package/dist/commonjs/sdk/models/operations/index.d.ts +8 -0
  59. package/dist/commonjs/sdk/models/operations/index.d.ts.map +1 -1
  60. package/dist/commonjs/sdk/models/operations/index.js +8 -0
  61. package/dist/commonjs/sdk/models/operations/index.js.map +1 -1
  62. package/dist/commonjs/sdk/models/operations/listschools.d.ts +248 -0
  63. package/dist/commonjs/sdk/models/operations/listschools.d.ts.map +1 -0
  64. package/dist/commonjs/sdk/models/operations/listschools.js +262 -0
  65. package/dist/commonjs/sdk/models/operations/listschools.js.map +1 -0
  66. package/dist/commonjs/sdk/models/operations/searchschoolsnearby.d.ts +274 -0
  67. package/dist/commonjs/sdk/models/operations/searchschoolsnearby.d.ts.map +1 -0
  68. package/dist/commonjs/sdk/models/operations/searchschoolsnearby.js +282 -0
  69. package/dist/commonjs/sdk/models/operations/searchschoolsnearby.js.map +1 -0
  70. package/dist/commonjs/sdk/models/operations/searchschoolswithin.d.ts +243 -0
  71. package/dist/commonjs/sdk/models/operations/searchschoolswithin.d.ts.map +1 -0
  72. package/dist/commonjs/sdk/models/operations/searchschoolswithin.js +260 -0
  73. package/dist/commonjs/sdk/models/operations/searchschoolswithin.js.map +1 -0
  74. package/dist/commonjs/sdk/models/shared/index.d.ts +1 -0
  75. package/dist/commonjs/sdk/models/shared/index.d.ts.map +1 -1
  76. package/dist/commonjs/sdk/models/shared/index.js +1 -0
  77. package/dist/commonjs/sdk/models/shared/index.js.map +1 -1
  78. package/dist/commonjs/sdk/models/shared/postcodeareafilter.d.ts +1 -1
  79. package/dist/commonjs/sdk/models/shared/propertyaddress.d.ts +1 -1
  80. package/dist/commonjs/sdk/models/shared/school.d.ts +441 -0
  81. package/dist/commonjs/sdk/models/shared/school.d.ts.map +1 -0
  82. package/dist/commonjs/sdk/models/shared/school.js +301 -0
  83. package/dist/commonjs/sdk/models/shared/school.js.map +1 -0
  84. package/dist/commonjs/sdk/models/shared/streetquerybycoordinates.d.ts +2 -2
  85. package/dist/commonjs/sdk/schoolmetrics.d.ts +19 -0
  86. package/dist/commonjs/sdk/schoolmetrics.d.ts.map +1 -0
  87. package/dist/commonjs/sdk/schoolmetrics.js +32 -0
  88. package/dist/commonjs/sdk/schoolmetrics.js.map +1 -0
  89. package/dist/commonjs/sdk/schools.d.ts +47 -0
  90. package/dist/commonjs/sdk/schools.d.ts.map +1 -0
  91. package/dist/commonjs/sdk/schools.js +72 -0
  92. package/dist/commonjs/sdk/schools.js.map +1 -0
  93. package/dist/commonjs/sdk/sdk.d.ts +6 -0
  94. package/dist/commonjs/sdk/sdk.d.ts.map +1 -1
  95. package/dist/commonjs/sdk/sdk.js +8 -0
  96. package/dist/commonjs/sdk/sdk.js.map +1 -1
  97. package/dist/esm/funcs/schoolMetricsGetMetrics.d.ts +17 -0
  98. package/dist/esm/funcs/schoolMetricsGetMetrics.d.ts.map +1 -0
  99. package/dist/esm/funcs/schoolMetricsGetMetrics.js +94 -0
  100. package/dist/esm/funcs/schoolMetricsGetMetrics.js.map +1 -0
  101. package/dist/esm/funcs/schoolMetricsListProfiles.d.ts +17 -0
  102. package/dist/esm/funcs/schoolMetricsListProfiles.d.ts.map +1 -0
  103. package/dist/esm/funcs/schoolMetricsListProfiles.js +68 -0
  104. package/dist/esm/funcs/schoolMetricsListProfiles.js.map +1 -0
  105. package/dist/esm/funcs/schoolsGet.d.ts +17 -0
  106. package/dist/esm/funcs/schoolsGet.d.ts.map +1 -0
  107. package/dist/esm/funcs/schoolsGet.js +88 -0
  108. package/dist/esm/funcs/schoolsGet.js.map +1 -0
  109. package/dist/esm/funcs/schoolsGetBySlug.d.ts +17 -0
  110. package/dist/esm/funcs/schoolsGetBySlug.d.ts.map +1 -0
  111. package/dist/esm/funcs/schoolsGetBySlug.js +88 -0
  112. package/dist/esm/funcs/schoolsGetBySlug.js.map +1 -0
  113. package/dist/esm/funcs/schoolsGetByUrn.d.ts +17 -0
  114. package/dist/esm/funcs/schoolsGetByUrn.d.ts.map +1 -0
  115. package/dist/esm/funcs/schoolsGetByUrn.js +88 -0
  116. package/dist/esm/funcs/schoolsGetByUrn.js.map +1 -0
  117. package/dist/esm/funcs/schoolsList.d.ts +17 -0
  118. package/dist/esm/funcs/schoolsList.d.ts.map +1 -0
  119. package/dist/esm/funcs/schoolsList.js +90 -0
  120. package/dist/esm/funcs/schoolsList.js.map +1 -0
  121. package/dist/esm/funcs/schoolsSearchNearby.d.ts +17 -0
  122. package/dist/esm/funcs/schoolsSearchNearby.d.ts.map +1 -0
  123. package/dist/esm/funcs/schoolsSearchNearby.js +89 -0
  124. package/dist/esm/funcs/schoolsSearchNearby.js.map +1 -0
  125. package/dist/esm/funcs/schoolsSearchWithin.d.ts +17 -0
  126. package/dist/esm/funcs/schoolsSearchWithin.d.ts.map +1 -0
  127. package/dist/esm/funcs/schoolsSearchWithin.js +89 -0
  128. package/dist/esm/funcs/schoolsSearchWithin.js.map +1 -0
  129. package/dist/esm/lib/config.d.ts +3 -3
  130. package/dist/esm/lib/config.d.ts.map +1 -1
  131. package/dist/esm/lib/config.js +3 -3
  132. package/dist/esm/lib/config.js.map +1 -1
  133. package/dist/esm/sdk/models/operations/getmetricprofiles.d.ts +89 -0
  134. package/dist/esm/sdk/models/operations/getmetricprofiles.d.ts.map +1 -0
  135. package/dist/esm/sdk/models/operations/getmetricprofiles.js +82 -0
  136. package/dist/esm/sdk/models/operations/getmetricprofiles.js.map +1 -0
  137. package/dist/esm/sdk/models/operations/getschoolbyid.d.ts +245 -0
  138. package/dist/esm/sdk/models/operations/getschoolbyid.d.ts.map +1 -0
  139. package/dist/esm/sdk/models/operations/getschoolbyid.js +219 -0
  140. package/dist/esm/sdk/models/operations/getschoolbyid.js.map +1 -0
  141. package/dist/esm/sdk/models/operations/getschoolbyslug.d.ts +245 -0
  142. package/dist/esm/sdk/models/operations/getschoolbyslug.d.ts.map +1 -0
  143. package/dist/esm/sdk/models/operations/getschoolbyslug.js +219 -0
  144. package/dist/esm/sdk/models/operations/getschoolbyslug.js.map +1 -0
  145. package/dist/esm/sdk/models/operations/getschoolbyurn.d.ts +245 -0
  146. package/dist/esm/sdk/models/operations/getschoolbyurn.d.ts.map +1 -0
  147. package/dist/esm/sdk/models/operations/getschoolbyurn.js +219 -0
  148. package/dist/esm/sdk/models/operations/getschoolbyurn.js.map +1 -0
  149. package/dist/esm/sdk/models/operations/getschoolmetrics.d.ts +901 -0
  150. package/dist/esm/sdk/models/operations/getschoolmetrics.d.ts.map +1 -0
  151. package/dist/esm/sdk/models/operations/getschoolmetrics.js +771 -0
  152. package/dist/esm/sdk/models/operations/getschoolmetrics.js.map +1 -0
  153. package/dist/esm/sdk/models/operations/index.d.ts +8 -0
  154. package/dist/esm/sdk/models/operations/index.d.ts.map +1 -1
  155. package/dist/esm/sdk/models/operations/index.js +8 -0
  156. package/dist/esm/sdk/models/operations/index.js.map +1 -1
  157. package/dist/esm/sdk/models/operations/listschools.d.ts +248 -0
  158. package/dist/esm/sdk/models/operations/listschools.d.ts.map +1 -0
  159. package/dist/esm/sdk/models/operations/listschools.js +216 -0
  160. package/dist/esm/sdk/models/operations/listschools.js.map +1 -0
  161. package/dist/esm/sdk/models/operations/searchschoolsnearby.d.ts +274 -0
  162. package/dist/esm/sdk/models/operations/searchschoolsnearby.d.ts.map +1 -0
  163. package/dist/esm/sdk/models/operations/searchschoolsnearby.js +236 -0
  164. package/dist/esm/sdk/models/operations/searchschoolsnearby.js.map +1 -0
  165. package/dist/esm/sdk/models/operations/searchschoolswithin.d.ts +243 -0
  166. package/dist/esm/sdk/models/operations/searchschoolswithin.d.ts.map +1 -0
  167. package/dist/esm/sdk/models/operations/searchschoolswithin.js +214 -0
  168. package/dist/esm/sdk/models/operations/searchschoolswithin.js.map +1 -0
  169. package/dist/esm/sdk/models/shared/index.d.ts +1 -0
  170. package/dist/esm/sdk/models/shared/index.d.ts.map +1 -1
  171. package/dist/esm/sdk/models/shared/index.js +1 -0
  172. package/dist/esm/sdk/models/shared/index.js.map +1 -1
  173. package/dist/esm/sdk/models/shared/postcodeareafilter.d.ts +1 -1
  174. package/dist/esm/sdk/models/shared/propertyaddress.d.ts +1 -1
  175. package/dist/esm/sdk/models/shared/school.d.ts +441 -0
  176. package/dist/esm/sdk/models/shared/school.d.ts.map +1 -0
  177. package/dist/esm/sdk/models/shared/school.js +259 -0
  178. package/dist/esm/sdk/models/shared/school.js.map +1 -0
  179. package/dist/esm/sdk/models/shared/streetquerybycoordinates.d.ts +2 -2
  180. package/dist/esm/sdk/schoolmetrics.d.ts +19 -0
  181. package/dist/esm/sdk/schoolmetrics.d.ts.map +1 -0
  182. package/dist/esm/sdk/schoolmetrics.js +28 -0
  183. package/dist/esm/sdk/schoolmetrics.js.map +1 -0
  184. package/dist/esm/sdk/schools.d.ts +47 -0
  185. package/dist/esm/sdk/schools.d.ts.map +1 -0
  186. package/dist/esm/sdk/schools.js +68 -0
  187. package/dist/esm/sdk/schools.js.map +1 -0
  188. package/dist/esm/sdk/sdk.d.ts +6 -0
  189. package/dist/esm/sdk/sdk.d.ts.map +1 -1
  190. package/dist/esm/sdk/sdk.js +8 -0
  191. package/dist/esm/sdk/sdk.js.map +1 -1
  192. package/openapi.json +908 -1
  193. package/package.json +1 -1
  194. package/src/funcs/schoolMetricsGetMetrics.ts +177 -0
  195. package/src/funcs/schoolMetricsListProfiles.ts +140 -0
  196. package/src/funcs/schoolsGet.ts +172 -0
  197. package/src/funcs/schoolsGetBySlug.ts +172 -0
  198. package/src/funcs/schoolsGetByUrn.ts +172 -0
  199. package/src/funcs/schoolsList.ts +173 -0
  200. package/src/funcs/schoolsSearchNearby.ts +172 -0
  201. package/src/funcs/schoolsSearchWithin.ts +172 -0
  202. package/src/lib/config.ts +3 -3
  203. package/src/sdk/models/operations/getmetricprofiles.ts +159 -0
  204. package/src/sdk/models/operations/getschoolbyid.ts +473 -0
  205. package/src/sdk/models/operations/getschoolbyslug.ts +479 -0
  206. package/src/sdk/models/operations/getschoolbyurn.ts +474 -0
  207. package/src/sdk/models/operations/getschoolmetrics.ts +1552 -0
  208. package/src/sdk/models/operations/index.ts +8 -0
  209. package/src/sdk/models/operations/listschools.ts +470 -0
  210. package/src/sdk/models/operations/searchschoolsnearby.ts +507 -0
  211. package/src/sdk/models/operations/searchschoolswithin.ts +475 -0
  212. package/src/sdk/models/shared/index.ts +1 -0
  213. package/src/sdk/models/shared/postcodeareafilter.ts +1 -1
  214. package/src/sdk/models/shared/propertyaddress.ts +1 -1
  215. package/src/sdk/models/shared/school.ts +588 -0
  216. package/src/sdk/models/shared/streetquerybycoordinates.ts +2 -2
  217. package/src/sdk/schoolmetrics.ts +43 -0
  218. package/src/sdk/schools.ts +117 -0
  219. package/src/sdk/sdk.ts +12 -0
  220. package/test-local.ts +4 -4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vepler/sdk",
3
- "version": "1.9.11",
3
+ "version": "1.10.0",
4
4
  "author": "Vepler Limited",
5
5
  "type": "module",
6
6
  "tshy": {
@@ -0,0 +1,177 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { SDKCore } from "../core.js";
6
+ import { encodeFormQuery } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import {
14
+ ConnectionError,
15
+ InvalidRequestError,
16
+ RequestAbortedError,
17
+ RequestTimeoutError,
18
+ UnexpectedClientError,
19
+ } from "../sdk/models/errors/httpclienterrors.js";
20
+ import { ResponseValidationError } from "../sdk/models/errors/responsevalidationerror.js";
21
+ import { SDKBaseError } from "../sdk/models/errors/sdkbaseerror.js";
22
+ import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js";
23
+ import * as operations from "../sdk/models/operations/index.js";
24
+ import { APICall, APIPromise } from "../sdk/types/async.js";
25
+ import { Result } from "../sdk/types/fp.js";
26
+
27
+ /**
28
+ * Get school metrics
29
+ *
30
+ * @remarks
31
+ * Retrieve metrics for specified schools using metric codes or predefined profiles. Supports both point-in-time and time series queries.
32
+ */
33
+ export function schoolMetricsGetMetrics(
34
+ client: SDKCore,
35
+ request: operations.GetSchoolMetricsRequest,
36
+ options?: RequestOptions,
37
+ ): APIPromise<
38
+ Result<
39
+ operations.GetSchoolMetricsResponse,
40
+ | SDKBaseError
41
+ | ResponseValidationError
42
+ | ConnectionError
43
+ | RequestAbortedError
44
+ | RequestTimeoutError
45
+ | InvalidRequestError
46
+ | UnexpectedClientError
47
+ | SDKValidationError
48
+ >
49
+ > {
50
+ return new APIPromise($do(
51
+ client,
52
+ request,
53
+ options,
54
+ ));
55
+ }
56
+
57
+ async function $do(
58
+ client: SDKCore,
59
+ request: operations.GetSchoolMetricsRequest,
60
+ options?: RequestOptions,
61
+ ): Promise<
62
+ [
63
+ Result<
64
+ operations.GetSchoolMetricsResponse,
65
+ | SDKBaseError
66
+ | ResponseValidationError
67
+ | ConnectionError
68
+ | RequestAbortedError
69
+ | RequestTimeoutError
70
+ | InvalidRequestError
71
+ | UnexpectedClientError
72
+ | SDKValidationError
73
+ >,
74
+ APICall,
75
+ ]
76
+ > {
77
+ const parsed = safeParse(
78
+ request,
79
+ (value) => operations.GetSchoolMetricsRequest$outboundSchema.parse(value),
80
+ "Input validation failed",
81
+ );
82
+ if (!parsed.ok) {
83
+ return [parsed, { status: "invalid" }];
84
+ }
85
+ const payload = parsed.value;
86
+ const body = null;
87
+
88
+ const path = pathToFunc("/v1/schools/metrics")();
89
+
90
+ const query = encodeFormQuery({
91
+ "academicYear": payload.academicYear,
92
+ "category": payload.category,
93
+ "cohortType": payload.cohortType,
94
+ "endYear": payload.endYear,
95
+ "includeComparisons": payload.includeComparisons,
96
+ "includeDefinitions": payload.includeDefinitions,
97
+ "limit": payload.limit,
98
+ "metricCodes": payload.metricCodes,
99
+ "offset": payload.offset,
100
+ "period": payload.period,
101
+ "profile": payload.profile,
102
+ "schoolIds": payload.schoolIds,
103
+ "startYear": payload.startYear,
104
+ "timeseries": payload.timeseries,
105
+ });
106
+
107
+ const headers = new Headers(compactMap({
108
+ Accept: "application/json",
109
+ }));
110
+
111
+ const secConfig = await extractSecurity(client._options.apiKeyAuth);
112
+ const securityInput = secConfig == null ? {} : { apiKeyAuth: secConfig };
113
+ const requestSecurity = resolveGlobalSecurity(securityInput);
114
+
115
+ const context = {
116
+ options: client._options,
117
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
118
+ operationID: "getSchoolMetrics",
119
+ oAuth2Scopes: [],
120
+
121
+ resolvedSecurity: requestSecurity,
122
+
123
+ securitySource: client._options.apiKeyAuth,
124
+ retryConfig: options?.retries
125
+ || client._options.retryConfig
126
+ || { strategy: "none" },
127
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
128
+ };
129
+
130
+ const requestRes = client._createRequest(context, {
131
+ security: requestSecurity,
132
+ method: "GET",
133
+ baseURL: options?.serverURL,
134
+ path: path,
135
+ headers: headers,
136
+ query: query,
137
+ body: body,
138
+ userAgent: client._options.userAgent,
139
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
140
+ }, options);
141
+ if (!requestRes.ok) {
142
+ return [requestRes, { status: "invalid" }];
143
+ }
144
+ const req = requestRes.value;
145
+
146
+ const doResult = await client._do(req, {
147
+ context,
148
+ errorCodes: [],
149
+ retryConfig: context.retryConfig,
150
+ retryCodes: context.retryCodes,
151
+ });
152
+ if (!doResult.ok) {
153
+ return [doResult, { status: "request-error", request: req }];
154
+ }
155
+ const response = doResult.value;
156
+
157
+ const [result] = await M.match<
158
+ operations.GetSchoolMetricsResponse,
159
+ | SDKBaseError
160
+ | ResponseValidationError
161
+ | ConnectionError
162
+ | RequestAbortedError
163
+ | RequestTimeoutError
164
+ | InvalidRequestError
165
+ | UnexpectedClientError
166
+ | SDKValidationError
167
+ >(
168
+ M.json(200, operations.GetSchoolMetricsResponse$inboundSchema),
169
+ M.json(400, operations.GetSchoolMetricsResponse$inboundSchema),
170
+ M.json(500, operations.GetSchoolMetricsResponse$inboundSchema),
171
+ )(response, req);
172
+ if (!result.ok) {
173
+ return [result, { status: "complete", request: req, response }];
174
+ }
175
+
176
+ return [result, { status: "complete", request: req, response }];
177
+ }
@@ -0,0 +1,140 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { SDKCore } from "../core.js";
6
+ import * as M from "../lib/matchers.js";
7
+ import { compactMap } from "../lib/primitives.js";
8
+ import { RequestOptions } from "../lib/sdks.js";
9
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
10
+ import { pathToFunc } from "../lib/url.js";
11
+ import {
12
+ ConnectionError,
13
+ InvalidRequestError,
14
+ RequestAbortedError,
15
+ RequestTimeoutError,
16
+ UnexpectedClientError,
17
+ } from "../sdk/models/errors/httpclienterrors.js";
18
+ import { ResponseValidationError } from "../sdk/models/errors/responsevalidationerror.js";
19
+ import { SDKBaseError } from "../sdk/models/errors/sdkbaseerror.js";
20
+ import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js";
21
+ import * as operations from "../sdk/models/operations/index.js";
22
+ import { APICall, APIPromise } from "../sdk/types/async.js";
23
+ import { Result } from "../sdk/types/fp.js";
24
+
25
+ /**
26
+ * List metric profiles
27
+ *
28
+ * @remarks
29
+ * Get a list of all available metric profiles with their descriptions and metric counts
30
+ */
31
+ export function schoolMetricsListProfiles(
32
+ client: SDKCore,
33
+ options?: RequestOptions,
34
+ ): APIPromise<
35
+ Result<
36
+ operations.GetMetricProfilesResponseBody,
37
+ | SDKBaseError
38
+ | ResponseValidationError
39
+ | ConnectionError
40
+ | RequestAbortedError
41
+ | RequestTimeoutError
42
+ | InvalidRequestError
43
+ | UnexpectedClientError
44
+ | SDKValidationError
45
+ >
46
+ > {
47
+ return new APIPromise($do(
48
+ client,
49
+ options,
50
+ ));
51
+ }
52
+
53
+ async function $do(
54
+ client: SDKCore,
55
+ options?: RequestOptions,
56
+ ): Promise<
57
+ [
58
+ Result<
59
+ operations.GetMetricProfilesResponseBody,
60
+ | SDKBaseError
61
+ | ResponseValidationError
62
+ | ConnectionError
63
+ | RequestAbortedError
64
+ | RequestTimeoutError
65
+ | InvalidRequestError
66
+ | UnexpectedClientError
67
+ | SDKValidationError
68
+ >,
69
+ APICall,
70
+ ]
71
+ > {
72
+ const path = pathToFunc("/v1/schools/metrics/profiles")();
73
+
74
+ const headers = new Headers(compactMap({
75
+ Accept: "application/json",
76
+ }));
77
+
78
+ const secConfig = await extractSecurity(client._options.apiKeyAuth);
79
+ const securityInput = secConfig == null ? {} : { apiKeyAuth: secConfig };
80
+ const requestSecurity = resolveGlobalSecurity(securityInput);
81
+
82
+ const context = {
83
+ options: client._options,
84
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
85
+ operationID: "getMetricProfiles",
86
+ oAuth2Scopes: [],
87
+
88
+ resolvedSecurity: requestSecurity,
89
+
90
+ securitySource: client._options.apiKeyAuth,
91
+ retryConfig: options?.retries
92
+ || client._options.retryConfig
93
+ || { strategy: "none" },
94
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
95
+ };
96
+
97
+ const requestRes = client._createRequest(context, {
98
+ security: requestSecurity,
99
+ method: "GET",
100
+ baseURL: options?.serverURL,
101
+ path: path,
102
+ headers: headers,
103
+ userAgent: client._options.userAgent,
104
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
105
+ }, options);
106
+ if (!requestRes.ok) {
107
+ return [requestRes, { status: "invalid" }];
108
+ }
109
+ const req = requestRes.value;
110
+
111
+ const doResult = await client._do(req, {
112
+ context,
113
+ errorCodes: [],
114
+ retryConfig: context.retryConfig,
115
+ retryCodes: context.retryCodes,
116
+ });
117
+ if (!doResult.ok) {
118
+ return [doResult, { status: "request-error", request: req }];
119
+ }
120
+ const response = doResult.value;
121
+
122
+ const [result] = await M.match<
123
+ operations.GetMetricProfilesResponseBody,
124
+ | SDKBaseError
125
+ | ResponseValidationError
126
+ | ConnectionError
127
+ | RequestAbortedError
128
+ | RequestTimeoutError
129
+ | InvalidRequestError
130
+ | UnexpectedClientError
131
+ | SDKValidationError
132
+ >(
133
+ M.json(200, operations.GetMetricProfilesResponseBody$inboundSchema),
134
+ )(response, req);
135
+ if (!result.ok) {
136
+ return [result, { status: "complete", request: req, response }];
137
+ }
138
+
139
+ return [result, { status: "complete", request: req, response }];
140
+ }
@@ -0,0 +1,172 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { SDKCore } from "../core.js";
6
+ import { encodeFormQuery, encodeSimple } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import {
14
+ ConnectionError,
15
+ InvalidRequestError,
16
+ RequestAbortedError,
17
+ RequestTimeoutError,
18
+ UnexpectedClientError,
19
+ } from "../sdk/models/errors/httpclienterrors.js";
20
+ import { ResponseValidationError } from "../sdk/models/errors/responsevalidationerror.js";
21
+ import { SDKBaseError } from "../sdk/models/errors/sdkbaseerror.js";
22
+ import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js";
23
+ import * as operations from "../sdk/models/operations/index.js";
24
+ import { APICall, APIPromise } from "../sdk/types/async.js";
25
+ import { Result } from "../sdk/types/fp.js";
26
+
27
+ /**
28
+ * Get school by ID
29
+ *
30
+ * @remarks
31
+ * Retrieve a single school by its internal ID
32
+ */
33
+ export function schoolsGet(
34
+ client: SDKCore,
35
+ request: operations.GetSchoolByIdRequest,
36
+ options?: RequestOptions,
37
+ ): APIPromise<
38
+ Result<
39
+ operations.GetSchoolByIdResponse,
40
+ | SDKBaseError
41
+ | ResponseValidationError
42
+ | ConnectionError
43
+ | RequestAbortedError
44
+ | RequestTimeoutError
45
+ | InvalidRequestError
46
+ | UnexpectedClientError
47
+ | SDKValidationError
48
+ >
49
+ > {
50
+ return new APIPromise($do(
51
+ client,
52
+ request,
53
+ options,
54
+ ));
55
+ }
56
+
57
+ async function $do(
58
+ client: SDKCore,
59
+ request: operations.GetSchoolByIdRequest,
60
+ options?: RequestOptions,
61
+ ): Promise<
62
+ [
63
+ Result<
64
+ operations.GetSchoolByIdResponse,
65
+ | SDKBaseError
66
+ | ResponseValidationError
67
+ | ConnectionError
68
+ | RequestAbortedError
69
+ | RequestTimeoutError
70
+ | InvalidRequestError
71
+ | UnexpectedClientError
72
+ | SDKValidationError
73
+ >,
74
+ APICall,
75
+ ]
76
+ > {
77
+ const parsed = safeParse(
78
+ request,
79
+ (value) => operations.GetSchoolByIdRequest$outboundSchema.parse(value),
80
+ "Input validation failed",
81
+ );
82
+ if (!parsed.ok) {
83
+ return [parsed, { status: "invalid" }];
84
+ }
85
+ const payload = parsed.value;
86
+ const body = null;
87
+
88
+ const pathParams = {
89
+ id: encodeSimple("id", payload.id, {
90
+ explode: false,
91
+ charEncoding: "percent",
92
+ }),
93
+ };
94
+
95
+ const path = pathToFunc("/v1/schools/{id}")(pathParams);
96
+
97
+ const query = encodeFormQuery({
98
+ "expand": payload.expand,
99
+ "fields": payload.fields,
100
+ });
101
+
102
+ const headers = new Headers(compactMap({
103
+ Accept: "application/json",
104
+ }));
105
+
106
+ const secConfig = await extractSecurity(client._options.apiKeyAuth);
107
+ const securityInput = secConfig == null ? {} : { apiKeyAuth: secConfig };
108
+ const requestSecurity = resolveGlobalSecurity(securityInput);
109
+
110
+ const context = {
111
+ options: client._options,
112
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
113
+ operationID: "getSchoolById",
114
+ oAuth2Scopes: [],
115
+
116
+ resolvedSecurity: requestSecurity,
117
+
118
+ securitySource: client._options.apiKeyAuth,
119
+ retryConfig: options?.retries
120
+ || client._options.retryConfig
121
+ || { strategy: "none" },
122
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
123
+ };
124
+
125
+ const requestRes = client._createRequest(context, {
126
+ security: requestSecurity,
127
+ method: "GET",
128
+ baseURL: options?.serverURL,
129
+ path: path,
130
+ headers: headers,
131
+ query: query,
132
+ body: body,
133
+ userAgent: client._options.userAgent,
134
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
135
+ }, options);
136
+ if (!requestRes.ok) {
137
+ return [requestRes, { status: "invalid" }];
138
+ }
139
+ const req = requestRes.value;
140
+
141
+ const doResult = await client._do(req, {
142
+ context,
143
+ errorCodes: [],
144
+ retryConfig: context.retryConfig,
145
+ retryCodes: context.retryCodes,
146
+ });
147
+ if (!doResult.ok) {
148
+ return [doResult, { status: "request-error", request: req }];
149
+ }
150
+ const response = doResult.value;
151
+
152
+ const [result] = await M.match<
153
+ operations.GetSchoolByIdResponse,
154
+ | SDKBaseError
155
+ | ResponseValidationError
156
+ | ConnectionError
157
+ | RequestAbortedError
158
+ | RequestTimeoutError
159
+ | InvalidRequestError
160
+ | UnexpectedClientError
161
+ | SDKValidationError
162
+ >(
163
+ M.json(200, operations.GetSchoolByIdResponse$inboundSchema),
164
+ M.json(404, operations.GetSchoolByIdResponse$inboundSchema),
165
+ M.json(500, operations.GetSchoolByIdResponse$inboundSchema),
166
+ )(response, req);
167
+ if (!result.ok) {
168
+ return [result, { status: "complete", request: req, response }];
169
+ }
170
+
171
+ return [result, { status: "complete", request: req, response }];
172
+ }
@@ -0,0 +1,172 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { SDKCore } from "../core.js";
6
+ import { encodeFormQuery, encodeSimple } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import {
14
+ ConnectionError,
15
+ InvalidRequestError,
16
+ RequestAbortedError,
17
+ RequestTimeoutError,
18
+ UnexpectedClientError,
19
+ } from "../sdk/models/errors/httpclienterrors.js";
20
+ import { ResponseValidationError } from "../sdk/models/errors/responsevalidationerror.js";
21
+ import { SDKBaseError } from "../sdk/models/errors/sdkbaseerror.js";
22
+ import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js";
23
+ import * as operations from "../sdk/models/operations/index.js";
24
+ import { APICall, APIPromise } from "../sdk/types/async.js";
25
+ import { Result } from "../sdk/types/fp.js";
26
+
27
+ /**
28
+ * Get school by slug
29
+ *
30
+ * @remarks
31
+ * Retrieve a single school by its URL slug
32
+ */
33
+ export function schoolsGetBySlug(
34
+ client: SDKCore,
35
+ request: operations.GetSchoolBySlugRequest,
36
+ options?: RequestOptions,
37
+ ): APIPromise<
38
+ Result<
39
+ operations.GetSchoolBySlugResponse,
40
+ | SDKBaseError
41
+ | ResponseValidationError
42
+ | ConnectionError
43
+ | RequestAbortedError
44
+ | RequestTimeoutError
45
+ | InvalidRequestError
46
+ | UnexpectedClientError
47
+ | SDKValidationError
48
+ >
49
+ > {
50
+ return new APIPromise($do(
51
+ client,
52
+ request,
53
+ options,
54
+ ));
55
+ }
56
+
57
+ async function $do(
58
+ client: SDKCore,
59
+ request: operations.GetSchoolBySlugRequest,
60
+ options?: RequestOptions,
61
+ ): Promise<
62
+ [
63
+ Result<
64
+ operations.GetSchoolBySlugResponse,
65
+ | SDKBaseError
66
+ | ResponseValidationError
67
+ | ConnectionError
68
+ | RequestAbortedError
69
+ | RequestTimeoutError
70
+ | InvalidRequestError
71
+ | UnexpectedClientError
72
+ | SDKValidationError
73
+ >,
74
+ APICall,
75
+ ]
76
+ > {
77
+ const parsed = safeParse(
78
+ request,
79
+ (value) => operations.GetSchoolBySlugRequest$outboundSchema.parse(value),
80
+ "Input validation failed",
81
+ );
82
+ if (!parsed.ok) {
83
+ return [parsed, { status: "invalid" }];
84
+ }
85
+ const payload = parsed.value;
86
+ const body = null;
87
+
88
+ const pathParams = {
89
+ slug: encodeSimple("slug", payload.slug, {
90
+ explode: false,
91
+ charEncoding: "percent",
92
+ }),
93
+ };
94
+
95
+ const path = pathToFunc("/v1/schools/by-slug/{slug}")(pathParams);
96
+
97
+ const query = encodeFormQuery({
98
+ "expand": payload.expand,
99
+ "fields": payload.fields,
100
+ });
101
+
102
+ const headers = new Headers(compactMap({
103
+ Accept: "application/json",
104
+ }));
105
+
106
+ const secConfig = await extractSecurity(client._options.apiKeyAuth);
107
+ const securityInput = secConfig == null ? {} : { apiKeyAuth: secConfig };
108
+ const requestSecurity = resolveGlobalSecurity(securityInput);
109
+
110
+ const context = {
111
+ options: client._options,
112
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
113
+ operationID: "getSchoolBySlug",
114
+ oAuth2Scopes: [],
115
+
116
+ resolvedSecurity: requestSecurity,
117
+
118
+ securitySource: client._options.apiKeyAuth,
119
+ retryConfig: options?.retries
120
+ || client._options.retryConfig
121
+ || { strategy: "none" },
122
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
123
+ };
124
+
125
+ const requestRes = client._createRequest(context, {
126
+ security: requestSecurity,
127
+ method: "GET",
128
+ baseURL: options?.serverURL,
129
+ path: path,
130
+ headers: headers,
131
+ query: query,
132
+ body: body,
133
+ userAgent: client._options.userAgent,
134
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
135
+ }, options);
136
+ if (!requestRes.ok) {
137
+ return [requestRes, { status: "invalid" }];
138
+ }
139
+ const req = requestRes.value;
140
+
141
+ const doResult = await client._do(req, {
142
+ context,
143
+ errorCodes: [],
144
+ retryConfig: context.retryConfig,
145
+ retryCodes: context.retryCodes,
146
+ });
147
+ if (!doResult.ok) {
148
+ return [doResult, { status: "request-error", request: req }];
149
+ }
150
+ const response = doResult.value;
151
+
152
+ const [result] = await M.match<
153
+ operations.GetSchoolBySlugResponse,
154
+ | SDKBaseError
155
+ | ResponseValidationError
156
+ | ConnectionError
157
+ | RequestAbortedError
158
+ | RequestTimeoutError
159
+ | InvalidRequestError
160
+ | UnexpectedClientError
161
+ | SDKValidationError
162
+ >(
163
+ M.json(200, operations.GetSchoolBySlugResponse$inboundSchema),
164
+ M.json(404, operations.GetSchoolBySlugResponse$inboundSchema),
165
+ M.json(500, operations.GetSchoolBySlugResponse$inboundSchema),
166
+ )(response, req);
167
+ if (!result.ok) {
168
+ return [result, { status: "complete", request: req, response }];
169
+ }
170
+
171
+ return [result, { status: "complete", request: req, response }];
172
+ }