@spec0/sdk-public-platform 1.1.0 → 1.2.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/core/ApiError.js +5 -1
- package/dist/generated/core/ApiError.js.map +1 -1
- package/dist/generated/core/ApiRequestOptions.js +2 -1
- package/dist/generated/core/ApiResult.js +2 -1
- package/dist/generated/core/CancelablePromise.js +7 -2
- package/dist/generated/core/CancelablePromise.js.map +1 -1
- package/dist/generated/core/OpenAPI.js +4 -1
- package/dist/generated/core/OpenAPI.js.map +1 -1
- package/dist/generated/core/request.js +65 -46
- package/dist/generated/core/request.js.map +1 -1
- package/dist/generated/index.d.ts +10 -0
- package/dist/generated/index.d.ts.map +1 -1
- package/dist/generated/index.js +26 -8
- package/dist/generated/index.js.map +1 -1
- package/dist/generated/models/AiSearchRequestV1.js +2 -1
- package/dist/generated/models/AiSearchResponseV1.js +2 -1
- package/dist/generated/models/ApiNamePath.js +2 -1
- package/dist/generated/models/ApiTeamListItemV1.d.ts +24 -0
- package/dist/generated/models/ApiTeamListItemV1.d.ts.map +1 -0
- package/dist/generated/models/ApiTeamListItemV1.js +3 -0
- package/dist/generated/models/ApiTeamListItemV1.js.map +1 -0
- package/dist/generated/models/AuthError.js +2 -1
- package/dist/generated/models/CiConfigResponseV1.d.ts +11 -0
- package/dist/generated/models/CiConfigResponseV1.d.ts.map +1 -0
- package/dist/generated/models/CiConfigResponseV1.js +3 -0
- package/dist/generated/models/CiConfigResponseV1.js.map +1 -0
- package/dist/generated/models/CreateMockRequestV1.js +2 -1
- package/dist/generated/models/CreateMockResponseV1.js +2 -1
- package/dist/generated/models/MockItemV1.js +2 -1
- package/dist/generated/models/OrgSlugPath.js +2 -1
- package/dist/generated/models/OrgSummaryResponseV1.d.ts +13 -0
- package/dist/generated/models/OrgSummaryResponseV1.d.ts.map +1 -0
- package/dist/generated/models/OrgSummaryResponseV1.js +3 -0
- package/dist/generated/models/OrgSummaryResponseV1.js.map +1 -0
- package/dist/generated/models/Problem.js +2 -1
- package/dist/generated/models/PublicApiIdPath.js +2 -1
- package/dist/generated/models/PublicApiListItem.js +2 -1
- package/dist/generated/models/PublicApiMetaV1.js +2 -1
- package/dist/generated/models/PublicPublishRequestV1.js +2 -1
- package/dist/generated/models/PublicPublishResponseV1.js +2 -1
- package/dist/generated/models/PutSpectralRulesetRequestV1.js +2 -1
- package/dist/generated/models/SpecDiffResponseV1.js +2 -1
- package/dist/generated/models/SpecVersionListItemV1.js +2 -1
- package/dist/generated/models/SpectralRulesetResponseV1.js +2 -1
- package/dist/generated/models/StatusResponseV1.js +2 -1
- package/dist/generated/models/SyncStatusResponseV1.js +2 -1
- package/dist/generated/models/TeamCreateRequestV1.d.ts +8 -0
- package/dist/generated/models/TeamCreateRequestV1.d.ts.map +1 -0
- package/dist/generated/models/TeamCreateRequestV1.js +3 -0
- package/dist/generated/models/TeamCreateRequestV1.js.map +1 -0
- package/dist/generated/models/TeamPublishRequestV1.d.ts +53 -0
- package/dist/generated/models/TeamPublishRequestV1.d.ts.map +1 -0
- package/dist/generated/models/TeamPublishRequestV1.js +3 -0
- package/dist/generated/models/TeamPublishRequestV1.js.map +1 -0
- package/dist/generated/models/TeamPublishResponseV1.d.ts +30 -0
- package/dist/generated/models/TeamPublishResponseV1.d.ts.map +1 -0
- package/dist/generated/models/TeamPublishResponseV1.js +3 -0
- package/dist/generated/models/TeamPublishResponseV1.js.map +1 -0
- package/dist/generated/models/TeamV1.d.ts +10 -0
- package/dist/generated/models/TeamV1.d.ts.map +1 -0
- package/dist/generated/models/TeamV1.js +3 -0
- package/dist/generated/models/TeamV1.js.map +1 -0
- package/dist/generated/models/VersionDiffResponseV1.js +2 -1
- package/dist/generated/models/Visibility.js +2 -1
- package/dist/generated/models/VisibilityUpdateRequestV1.js +2 -1
- package/dist/generated/services/PublicApisService.d.ts +47 -0
- package/dist/generated/services/PublicApisService.d.ts.map +1 -1
- package/dist/generated/services/PublicApisService.js +88 -7
- package/dist/generated/services/PublicApisService.js.map +1 -1
- package/dist/generated/services/PublicCiService.d.ts +21 -0
- package/dist/generated/services/PublicCiService.d.ts.map +1 -0
- package/dist/generated/services/PublicCiService.js +33 -0
- package/dist/generated/services/PublicCiService.js.map +1 -0
- package/dist/generated/services/PublicMocksService.d.ts +12 -0
- package/dist/generated/services/PublicMocksService.d.ts.map +1 -1
- package/dist/generated/services/PublicMocksService.js +32 -5
- package/dist/generated/services/PublicMocksService.js.map +1 -1
- package/dist/generated/services/PublicOrgsService.d.ts +14 -0
- package/dist/generated/services/PublicOrgsService.d.ts.map +1 -0
- package/dist/generated/services/PublicOrgsService.js +27 -0
- package/dist/generated/services/PublicOrgsService.js.map +1 -0
- package/dist/generated/services/PublicRegistryService.js +11 -7
- package/dist/generated/services/PublicRegistryService.js.map +1 -1
- package/dist/generated/services/PublicSpecsService.js +10 -6
- package/dist/generated/services/PublicSpecsService.js.map +1 -1
- package/dist/generated/services/PublicSpectralService.js +9 -5
- package/dist/generated/services/PublicSpectralService.js.map +1 -1
- package/dist/generated/services/PublicTeamsService.d.ts +35 -0
- package/dist/generated/services/PublicTeamsService.d.ts.map +1 -0
- package/dist/generated/services/PublicTeamsService.js +69 -0
- package/dist/generated/services/PublicTeamsService.js.map +1 -0
- package/dist/index.js +17 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -4
- package/src/generated/index.ts +10 -0
- package/src/generated/models/ApiTeamListItemV1.ts +28 -0
- package/src/generated/models/CiConfigResponseV1.ts +15 -0
- package/src/generated/models/OrgSummaryResponseV1.ts +17 -0
- package/src/generated/models/TeamCreateRequestV1.ts +12 -0
- package/src/generated/models/TeamPublishRequestV1.ts +57 -0
- package/src/generated/models/TeamPublishResponseV1.ts +34 -0
- package/src/generated/models/TeamV1.ts +14 -0
- package/src/generated/services/PublicApisService.ts +88 -0
- package/src/generated/services/PublicCiService.ts +45 -0
- package/src/generated/services/PublicMocksService.ts +27 -0
- package/src/generated/services/PublicOrgsService.ts +28 -0
- package/src/generated/services/PublicTeamsService.ts +79 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/* generated using openapi-typescript-codegen -- do not edit */
|
|
2
|
+
/* istanbul ignore file */
|
|
3
|
+
/* tslint:disable */
|
|
4
|
+
/* eslint-disable */
|
|
5
|
+
/**
|
|
6
|
+
* A team in the calling org.
|
|
7
|
+
*/
|
|
8
|
+
export type TeamV1 = {
|
|
9
|
+
id?: string;
|
|
10
|
+
name?: string;
|
|
11
|
+
description?: string | null;
|
|
12
|
+
orgId?: string;
|
|
13
|
+
};
|
|
14
|
+
|
|
@@ -2,10 +2,13 @@
|
|
|
2
2
|
/* istanbul ignore file */
|
|
3
3
|
/* tslint:disable */
|
|
4
4
|
/* eslint-disable */
|
|
5
|
+
import type { ApiTeamListItemV1 } from '../models/ApiTeamListItemV1';
|
|
5
6
|
import type { PublicApiListItem } from '../models/PublicApiListItem';
|
|
6
7
|
import type { PublicApiMetaV1 } from '../models/PublicApiMetaV1';
|
|
7
8
|
import type { PublicPublishRequestV1 } from '../models/PublicPublishRequestV1';
|
|
8
9
|
import type { PublicPublishResponseV1 } from '../models/PublicPublishResponseV1';
|
|
10
|
+
import type { TeamPublishRequestV1 } from '../models/TeamPublishRequestV1';
|
|
11
|
+
import type { TeamPublishResponseV1 } from '../models/TeamPublishResponseV1';
|
|
9
12
|
import type { VisibilityUpdateRequestV1 } from '../models/VisibilityUpdateRequestV1';
|
|
10
13
|
import type { CancelablePromise } from '../core/CancelablePromise';
|
|
11
14
|
import { OpenAPI } from '../core/OpenAPI';
|
|
@@ -55,6 +58,91 @@ export class PublicApisService {
|
|
|
55
58
|
},
|
|
56
59
|
});
|
|
57
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* List team-scoped private APIs for the calling org
|
|
63
|
+
* Returns every non-deleted team-scoped API in the calling token's org, regardless
|
|
64
|
+
* of which team owns it. This is what the `spec0 api list` CLI command targets.
|
|
65
|
+
*
|
|
66
|
+
* Distinct from `GET /api/v1/public/apis`, which lists records in the customer-facing
|
|
67
|
+
* public registry — different table, different lifecycle.
|
|
68
|
+
*
|
|
69
|
+
* @returns ApiTeamListItemV1 Team APIs the calling org owns
|
|
70
|
+
* @throws ApiError
|
|
71
|
+
*/
|
|
72
|
+
public static listTeamApis(): CancelablePromise<Array<ApiTeamListItemV1>> {
|
|
73
|
+
return __request(OpenAPI, {
|
|
74
|
+
method: 'GET',
|
|
75
|
+
url: '/api/v1/public/apis/team',
|
|
76
|
+
errors: {
|
|
77
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
78
|
+
403: `Token does not carry the required scope`,
|
|
79
|
+
},
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Publish or update a team-scoped private API
|
|
84
|
+
* Publishes a design-time OpenAPI spec to a team-scoped private API. Distinct from
|
|
85
|
+
* `POST /api/v1/public/apis`, which writes to the org-level customer-facing public
|
|
86
|
+
* registry. This endpoint is what the `spec0 push` CLI command targets.
|
|
87
|
+
*
|
|
88
|
+
* - If `apiId` is provided: update that API's metadata/spec and publish a new version.
|
|
89
|
+
* - If `apiId` is omitted: upsert by (org, `name`); create a new API when none exists.
|
|
90
|
+
* - `team` accepts a UUID or slug; when omitted the API lands in the org's
|
|
91
|
+
* "Unassigned APIs" team.
|
|
92
|
+
*
|
|
93
|
+
* @returns TeamPublishResponseV1 Publish result
|
|
94
|
+
* @throws ApiError
|
|
95
|
+
*/
|
|
96
|
+
public static publishTeamApi({
|
|
97
|
+
requestBody,
|
|
98
|
+
}: {
|
|
99
|
+
requestBody: TeamPublishRequestV1,
|
|
100
|
+
}): CancelablePromise<TeamPublishResponseV1> {
|
|
101
|
+
return __request(OpenAPI, {
|
|
102
|
+
method: 'POST',
|
|
103
|
+
url: '/api/v1/public/apis/team',
|
|
104
|
+
body: requestBody,
|
|
105
|
+
mediaType: 'application/json',
|
|
106
|
+
errors: {
|
|
107
|
+
400: `Bad request`,
|
|
108
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
109
|
+
403: `Token does not carry the required scope`,
|
|
110
|
+
404: `Resource not found (or not visible to the calling org)`,
|
|
111
|
+
409: `Breaking change detected in same major version (when oasdiff is enabled and \`semver\` is not set)`,
|
|
112
|
+
422: `Validation error (bad semver or API name format)`,
|
|
113
|
+
},
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Soft-delete a team-scoped private API
|
|
118
|
+
* Marks the team-scoped API as deleted (`deleted_at` is set). The row is retained for
|
|
119
|
+
* audit; subsequent CLI lookups by name or id treat the API as non-existent. This is
|
|
120
|
+
* what the `spec0 api delete` lifecycle command targets.
|
|
121
|
+
*
|
|
122
|
+
* Distinct from `DELETE /api/v1/public/apis/{publicApiId}`, which soft-deletes a record
|
|
123
|
+
* in the customer-facing public registry — different table, different lifecycle.
|
|
124
|
+
*
|
|
125
|
+
* @returns void
|
|
126
|
+
* @throws ApiError
|
|
127
|
+
*/
|
|
128
|
+
public static deleteTeamApi({
|
|
129
|
+
apiId,
|
|
130
|
+
}: {
|
|
131
|
+
apiId: string,
|
|
132
|
+
}): CancelablePromise<void> {
|
|
133
|
+
return __request(OpenAPI, {
|
|
134
|
+
method: 'DELETE',
|
|
135
|
+
url: '/api/v1/public/apis/team/{apiId}',
|
|
136
|
+
path: {
|
|
137
|
+
'apiId': apiId,
|
|
138
|
+
},
|
|
139
|
+
errors: {
|
|
140
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
141
|
+
403: `Token does not carry the required scope`,
|
|
142
|
+
404: `Resource not found (or not visible to the calling org)`,
|
|
143
|
+
},
|
|
144
|
+
});
|
|
145
|
+
}
|
|
58
146
|
/**
|
|
59
147
|
* Update visibility for a public API
|
|
60
148
|
* @returns PublicApiMetaV1 Updated visibility
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/* generated using openapi-typescript-codegen -- do not edit */
|
|
2
|
+
/* istanbul ignore file */
|
|
3
|
+
/* tslint:disable */
|
|
4
|
+
/* eslint-disable */
|
|
5
|
+
import type { CiConfigResponseV1 } from '../models/CiConfigResponseV1';
|
|
6
|
+
import type { CancelablePromise } from '../core/CancelablePromise';
|
|
7
|
+
import { OpenAPI } from '../core/OpenAPI';
|
|
8
|
+
import { request as __request } from '../core/request';
|
|
9
|
+
export class PublicCiService {
|
|
10
|
+
/**
|
|
11
|
+
* Generate a GitHub Actions workflow for `spec0 publish`
|
|
12
|
+
* Returns a ready-to-use GitHub Actions workflow YAML that runs `spec0 publish`
|
|
13
|
+
* only when the specified spec file changes.
|
|
14
|
+
*
|
|
15
|
+
* @returns CiConfigResponseV1 CI config
|
|
16
|
+
* @throws ApiError
|
|
17
|
+
*/
|
|
18
|
+
public static generateCiConfig({
|
|
19
|
+
specFilePath,
|
|
20
|
+
apiName,
|
|
21
|
+
branch = 'main',
|
|
22
|
+
}: {
|
|
23
|
+
specFilePath: string,
|
|
24
|
+
/**
|
|
25
|
+
* API name to embed in the generated workflow. Falls back to spec filename basename if omitted.
|
|
26
|
+
*/
|
|
27
|
+
apiName?: string,
|
|
28
|
+
branch?: string,
|
|
29
|
+
}): CancelablePromise<CiConfigResponseV1> {
|
|
30
|
+
return __request(OpenAPI, {
|
|
31
|
+
method: 'GET',
|
|
32
|
+
url: '/api/v1/public/ci/config',
|
|
33
|
+
query: {
|
|
34
|
+
'specFilePath': specFilePath,
|
|
35
|
+
'apiName': apiName,
|
|
36
|
+
'branch': branch,
|
|
37
|
+
},
|
|
38
|
+
errors: {
|
|
39
|
+
400: `Bad request`,
|
|
40
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
41
|
+
403: `Token does not carry the required scope`,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -50,4 +50,31 @@ export class PublicMocksService {
|
|
|
50
50
|
},
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Delete a mock server owned by the calling org
|
|
55
|
+
* Hard-deletes the mock server and removes its association with the parent API.
|
|
56
|
+
* Cross-org deletes return 404 (not 403) so the existence of the mock is not
|
|
57
|
+
* leaked. This is what the `spec0 mock delete` lifecycle command targets.
|
|
58
|
+
*
|
|
59
|
+
* @returns void
|
|
60
|
+
* @throws ApiError
|
|
61
|
+
*/
|
|
62
|
+
public static deletePublicMock({
|
|
63
|
+
mockServerId,
|
|
64
|
+
}: {
|
|
65
|
+
mockServerId: string,
|
|
66
|
+
}): CancelablePromise<void> {
|
|
67
|
+
return __request(OpenAPI, {
|
|
68
|
+
method: 'DELETE',
|
|
69
|
+
url: '/api/v1/public/mocks/{mockServerId}',
|
|
70
|
+
path: {
|
|
71
|
+
'mockServerId': mockServerId,
|
|
72
|
+
},
|
|
73
|
+
errors: {
|
|
74
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
75
|
+
403: `Token does not carry the required scope`,
|
|
76
|
+
404: `Resource not found (or not visible to the calling org)`,
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
}
|
|
53
80
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/* generated using openapi-typescript-codegen -- do not edit */
|
|
2
|
+
/* istanbul ignore file */
|
|
3
|
+
/* tslint:disable */
|
|
4
|
+
/* eslint-disable */
|
|
5
|
+
import type { OrgSummaryResponseV1 } from '../models/OrgSummaryResponseV1';
|
|
6
|
+
import type { CancelablePromise } from '../core/CancelablePromise';
|
|
7
|
+
import { OpenAPI } from '../core/OpenAPI';
|
|
8
|
+
import { request as __request } from '../core/request';
|
|
9
|
+
export class PublicOrgsService {
|
|
10
|
+
/**
|
|
11
|
+
* Org-level resource counts and current plan
|
|
12
|
+
* Returns counts of APIs, mock servers, and teams in the calling token's org,
|
|
13
|
+
* plus the org's current plan. Useful for CLI status/dashboard views.
|
|
14
|
+
*
|
|
15
|
+
* @returns OrgSummaryResponseV1 Org summary
|
|
16
|
+
* @throws ApiError
|
|
17
|
+
*/
|
|
18
|
+
public static getOrgSummary(): CancelablePromise<OrgSummaryResponseV1> {
|
|
19
|
+
return __request(OpenAPI, {
|
|
20
|
+
method: 'GET',
|
|
21
|
+
url: '/api/v1/public/orgs/summary',
|
|
22
|
+
errors: {
|
|
23
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
24
|
+
403: `Token does not carry the required scope`,
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/* generated using openapi-typescript-codegen -- do not edit */
|
|
2
|
+
/* istanbul ignore file */
|
|
3
|
+
/* tslint:disable */
|
|
4
|
+
/* eslint-disable */
|
|
5
|
+
import type { TeamCreateRequestV1 } from '../models/TeamCreateRequestV1';
|
|
6
|
+
import type { TeamV1 } from '../models/TeamV1';
|
|
7
|
+
import type { CancelablePromise } from '../core/CancelablePromise';
|
|
8
|
+
import { OpenAPI } from '../core/OpenAPI';
|
|
9
|
+
import { request as __request } from '../core/request';
|
|
10
|
+
export class PublicTeamsService {
|
|
11
|
+
/**
|
|
12
|
+
* List teams for the calling org
|
|
13
|
+
* @returns TeamV1 Teams in the calling org
|
|
14
|
+
* @throws ApiError
|
|
15
|
+
*/
|
|
16
|
+
public static listTeams(): CancelablePromise<Array<TeamV1>> {
|
|
17
|
+
return __request(OpenAPI, {
|
|
18
|
+
method: 'GET',
|
|
19
|
+
url: '/api/v1/public/teams',
|
|
20
|
+
errors: {
|
|
21
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
22
|
+
403: `Token does not carry the required scope`,
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Create a team in the calling org
|
|
28
|
+
* Creates a team owned by the calling token's org. The team starts with no
|
|
29
|
+
* members; member management is out of scope for this V1 surface.
|
|
30
|
+
*
|
|
31
|
+
* @returns TeamV1 Created team
|
|
32
|
+
* @throws ApiError
|
|
33
|
+
*/
|
|
34
|
+
public static createTeam({
|
|
35
|
+
requestBody,
|
|
36
|
+
}: {
|
|
37
|
+
requestBody: TeamCreateRequestV1,
|
|
38
|
+
}): CancelablePromise<TeamV1> {
|
|
39
|
+
return __request(OpenAPI, {
|
|
40
|
+
method: 'POST',
|
|
41
|
+
url: '/api/v1/public/teams',
|
|
42
|
+
body: requestBody,
|
|
43
|
+
mediaType: 'application/json',
|
|
44
|
+
errors: {
|
|
45
|
+
400: `Bad request`,
|
|
46
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
47
|
+
403: `Token does not carry the required scope`,
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Delete a team owned by the calling org
|
|
53
|
+
* Deletes the team. The call fails with 409 if the team still has APIs or mock
|
|
54
|
+
* servers — the caller must remove those first. Cross-org deletes return 404 so
|
|
55
|
+
* the existence of the team is not leaked.
|
|
56
|
+
*
|
|
57
|
+
* @returns void
|
|
58
|
+
* @throws ApiError
|
|
59
|
+
*/
|
|
60
|
+
public static deleteTeam({
|
|
61
|
+
teamId,
|
|
62
|
+
}: {
|
|
63
|
+
teamId: string,
|
|
64
|
+
}): CancelablePromise<void> {
|
|
65
|
+
return __request(OpenAPI, {
|
|
66
|
+
method: 'DELETE',
|
|
67
|
+
url: '/api/v1/public/teams/{teamId}',
|
|
68
|
+
path: {
|
|
69
|
+
'teamId': teamId,
|
|
70
|
+
},
|
|
71
|
+
errors: {
|
|
72
|
+
401: `Missing, invalid, expired, or revoked token`,
|
|
73
|
+
403: `Token does not carry the required scope`,
|
|
74
|
+
404: `Resource not found (or not visible to the calling org)`,
|
|
75
|
+
409: `Team still has child resources (APIs or mock servers)`,
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|