@snokam/mcp-api 1.9.0 → 1.11.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/package.json +1 -1
- package/specs/production/employees.json +173 -0
- package/specs/test/employees.json +173 -0
package/package.json
CHANGED
|
@@ -11,6 +11,131 @@
|
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"paths": {
|
|
14
|
+
"/v1.0/cvs": {
|
|
15
|
+
"get": {
|
|
16
|
+
"tags": [
|
|
17
|
+
"CV"
|
|
18
|
+
],
|
|
19
|
+
"summary": "Gets CV data for all consultants",
|
|
20
|
+
"description": "Retrieves CV data for all consultants from CvPartner, including technologies, roles, about, and CV text.",
|
|
21
|
+
"operationId": "GetEmployeesCv",
|
|
22
|
+
"responses": {
|
|
23
|
+
"200": {
|
|
24
|
+
"description": "List of consultant CV profiles retrieved successfully",
|
|
25
|
+
"content": {
|
|
26
|
+
"application/json": {
|
|
27
|
+
"schema": {
|
|
28
|
+
"type": "array",
|
|
29
|
+
"items": {
|
|
30
|
+
"$ref": "#/components/schemas/consultantCv"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"x-ms-summary": "Success"
|
|
36
|
+
},
|
|
37
|
+
"401": {
|
|
38
|
+
"description": "User is not authorized",
|
|
39
|
+
"x-ms-summary": "Unauthorized"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"security": [
|
|
43
|
+
{
|
|
44
|
+
"Implicit": [
|
|
45
|
+
"api://1c7354b7-6006-4c53-9ba4-c277b2ba31bb/.default"
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"/v1.0/cvs/my-cv": {
|
|
52
|
+
"get": {
|
|
53
|
+
"tags": [
|
|
54
|
+
"CV"
|
|
55
|
+
],
|
|
56
|
+
"summary": "Gets CV data for the authenticated user",
|
|
57
|
+
"description": "Retrieves CV data for the currently authenticated consultant from CvPartner.",
|
|
58
|
+
"operationId": "GetMyCv",
|
|
59
|
+
"responses": {
|
|
60
|
+
"200": {
|
|
61
|
+
"description": "Authenticated user's CV profile retrieved successfully",
|
|
62
|
+
"content": {
|
|
63
|
+
"application/json": {
|
|
64
|
+
"schema": {
|
|
65
|
+
"$ref": "#/components/schemas/consultantCv"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"x-ms-summary": "Success"
|
|
70
|
+
},
|
|
71
|
+
"401": {
|
|
72
|
+
"description": "User is not authorized",
|
|
73
|
+
"x-ms-summary": "Unauthorized"
|
|
74
|
+
},
|
|
75
|
+
"404": {
|
|
76
|
+
"description": "Employee not found in CvPartner",
|
|
77
|
+
"x-ms-summary": "Not Found"
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
"security": [
|
|
81
|
+
{
|
|
82
|
+
"Implicit": [
|
|
83
|
+
"api://1c7354b7-6006-4c53-9ba4-c277b2ba31bb/.default"
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
]
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"/v1.0/cvs/{email}": {
|
|
90
|
+
"get": {
|
|
91
|
+
"tags": [
|
|
92
|
+
"CV"
|
|
93
|
+
],
|
|
94
|
+
"summary": "Gets CV data for a specific employee by email",
|
|
95
|
+
"description": "Retrieves CV data for a specific consultant from CvPartner by their email address.",
|
|
96
|
+
"operationId": "GetEmployeeCvByEmail",
|
|
97
|
+
"parameters": [
|
|
98
|
+
{
|
|
99
|
+
"name": "email",
|
|
100
|
+
"in": "path",
|
|
101
|
+
"description": "The email address of the consultant to retrieve CV data for",
|
|
102
|
+
"required": true,
|
|
103
|
+
"schema": {
|
|
104
|
+
"type": "string"
|
|
105
|
+
},
|
|
106
|
+
"x-ms-summary": "The email address of the employee"
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
"responses": {
|
|
110
|
+
"200": {
|
|
111
|
+
"description": "Consultant CV profile retrieved successfully",
|
|
112
|
+
"content": {
|
|
113
|
+
"application/json": {
|
|
114
|
+
"schema": {
|
|
115
|
+
"$ref": "#/components/schemas/consultantCv"
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
"x-ms-summary": "Success"
|
|
120
|
+
},
|
|
121
|
+
"401": {
|
|
122
|
+
"description": "User is not authorized",
|
|
123
|
+
"x-ms-summary": "Unauthorized"
|
|
124
|
+
},
|
|
125
|
+
"404": {
|
|
126
|
+
"description": "Employee not found in CvPartner",
|
|
127
|
+
"x-ms-summary": "Not Found"
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"security": [
|
|
131
|
+
{
|
|
132
|
+
"Implicit": [
|
|
133
|
+
"api://1c7354b7-6006-4c53-9ba4-c277b2ba31bb/.default"
|
|
134
|
+
]
|
|
135
|
+
}
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
},
|
|
14
139
|
"/v1.0/protected": {
|
|
15
140
|
"get": {
|
|
16
141
|
"tags": [
|
|
@@ -386,6 +511,54 @@
|
|
|
386
511
|
}
|
|
387
512
|
}
|
|
388
513
|
},
|
|
514
|
+
"consultantCv": {
|
|
515
|
+
"type": "object",
|
|
516
|
+
"properties": {
|
|
517
|
+
"userId": {
|
|
518
|
+
"type": "string",
|
|
519
|
+
"nullable": true
|
|
520
|
+
},
|
|
521
|
+
"email": {
|
|
522
|
+
"type": "string",
|
|
523
|
+
"nullable": true
|
|
524
|
+
},
|
|
525
|
+
"name": {
|
|
526
|
+
"type": "string",
|
|
527
|
+
"nullable": true
|
|
528
|
+
},
|
|
529
|
+
"defaultCvId": {
|
|
530
|
+
"type": "string",
|
|
531
|
+
"nullable": true
|
|
532
|
+
},
|
|
533
|
+
"technologies": {
|
|
534
|
+
"type": "array",
|
|
535
|
+
"items": {
|
|
536
|
+
"type": "string"
|
|
537
|
+
},
|
|
538
|
+
"nullable": true
|
|
539
|
+
},
|
|
540
|
+
"roles": {
|
|
541
|
+
"type": "array",
|
|
542
|
+
"items": {
|
|
543
|
+
"type": "string"
|
|
544
|
+
},
|
|
545
|
+
"nullable": true
|
|
546
|
+
},
|
|
547
|
+
"yearsExperience": {
|
|
548
|
+
"type": "integer",
|
|
549
|
+
"format": "int32",
|
|
550
|
+
"nullable": true
|
|
551
|
+
},
|
|
552
|
+
"about": {
|
|
553
|
+
"type": "string",
|
|
554
|
+
"nullable": true
|
|
555
|
+
},
|
|
556
|
+
"cvText": {
|
|
557
|
+
"type": "string",
|
|
558
|
+
"nullable": true
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
},
|
|
389
562
|
"employeeReference": {
|
|
390
563
|
"type": "object",
|
|
391
564
|
"properties": {
|
|
@@ -11,6 +11,131 @@
|
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"paths": {
|
|
14
|
+
"/v1.0/cvs": {
|
|
15
|
+
"get": {
|
|
16
|
+
"tags": [
|
|
17
|
+
"CV"
|
|
18
|
+
],
|
|
19
|
+
"summary": "Gets CV data for all consultants",
|
|
20
|
+
"description": "Retrieves CV data for all consultants from CvPartner, including technologies, roles, about, and CV text.",
|
|
21
|
+
"operationId": "GetEmployeesCv",
|
|
22
|
+
"responses": {
|
|
23
|
+
"200": {
|
|
24
|
+
"description": "List of consultant CV profiles retrieved successfully",
|
|
25
|
+
"content": {
|
|
26
|
+
"application/json": {
|
|
27
|
+
"schema": {
|
|
28
|
+
"type": "array",
|
|
29
|
+
"items": {
|
|
30
|
+
"$ref": "#/components/schemas/consultantCv"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"x-ms-summary": "Success"
|
|
36
|
+
},
|
|
37
|
+
"401": {
|
|
38
|
+
"description": "User is not authorized",
|
|
39
|
+
"x-ms-summary": "Unauthorized"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"security": [
|
|
43
|
+
{
|
|
44
|
+
"Implicit": [
|
|
45
|
+
"api://e50e72ca-3b4a-413c-965d-f45ff561d551/.default"
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"/v1.0/cvs/my-cv": {
|
|
52
|
+
"get": {
|
|
53
|
+
"tags": [
|
|
54
|
+
"CV"
|
|
55
|
+
],
|
|
56
|
+
"summary": "Gets CV data for the authenticated user",
|
|
57
|
+
"description": "Retrieves CV data for the currently authenticated consultant from CvPartner.",
|
|
58
|
+
"operationId": "GetMyCv",
|
|
59
|
+
"responses": {
|
|
60
|
+
"200": {
|
|
61
|
+
"description": "Authenticated user's CV profile retrieved successfully",
|
|
62
|
+
"content": {
|
|
63
|
+
"application/json": {
|
|
64
|
+
"schema": {
|
|
65
|
+
"$ref": "#/components/schemas/consultantCv"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"x-ms-summary": "Success"
|
|
70
|
+
},
|
|
71
|
+
"401": {
|
|
72
|
+
"description": "User is not authorized",
|
|
73
|
+
"x-ms-summary": "Unauthorized"
|
|
74
|
+
},
|
|
75
|
+
"404": {
|
|
76
|
+
"description": "Employee not found in CvPartner",
|
|
77
|
+
"x-ms-summary": "Not Found"
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
"security": [
|
|
81
|
+
{
|
|
82
|
+
"Implicit": [
|
|
83
|
+
"api://e50e72ca-3b4a-413c-965d-f45ff561d551/.default"
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
]
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"/v1.0/cvs/{email}": {
|
|
90
|
+
"get": {
|
|
91
|
+
"tags": [
|
|
92
|
+
"CV"
|
|
93
|
+
],
|
|
94
|
+
"summary": "Gets CV data for a specific employee by email",
|
|
95
|
+
"description": "Retrieves CV data for a specific consultant from CvPartner by their email address.",
|
|
96
|
+
"operationId": "GetEmployeeCvByEmail",
|
|
97
|
+
"parameters": [
|
|
98
|
+
{
|
|
99
|
+
"name": "email",
|
|
100
|
+
"in": "path",
|
|
101
|
+
"description": "The email address of the consultant to retrieve CV data for",
|
|
102
|
+
"required": true,
|
|
103
|
+
"schema": {
|
|
104
|
+
"type": "string"
|
|
105
|
+
},
|
|
106
|
+
"x-ms-summary": "The email address of the employee"
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
"responses": {
|
|
110
|
+
"200": {
|
|
111
|
+
"description": "Consultant CV profile retrieved successfully",
|
|
112
|
+
"content": {
|
|
113
|
+
"application/json": {
|
|
114
|
+
"schema": {
|
|
115
|
+
"$ref": "#/components/schemas/consultantCv"
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
"x-ms-summary": "Success"
|
|
120
|
+
},
|
|
121
|
+
"401": {
|
|
122
|
+
"description": "User is not authorized",
|
|
123
|
+
"x-ms-summary": "Unauthorized"
|
|
124
|
+
},
|
|
125
|
+
"404": {
|
|
126
|
+
"description": "Employee not found in CvPartner",
|
|
127
|
+
"x-ms-summary": "Not Found"
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"security": [
|
|
131
|
+
{
|
|
132
|
+
"Implicit": [
|
|
133
|
+
"api://e50e72ca-3b4a-413c-965d-f45ff561d551/.default"
|
|
134
|
+
]
|
|
135
|
+
}
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
},
|
|
14
139
|
"/v1.0/protected": {
|
|
15
140
|
"get": {
|
|
16
141
|
"tags": [
|
|
@@ -386,6 +511,54 @@
|
|
|
386
511
|
}
|
|
387
512
|
}
|
|
388
513
|
},
|
|
514
|
+
"consultantCv": {
|
|
515
|
+
"type": "object",
|
|
516
|
+
"properties": {
|
|
517
|
+
"userId": {
|
|
518
|
+
"type": "string",
|
|
519
|
+
"nullable": true
|
|
520
|
+
},
|
|
521
|
+
"email": {
|
|
522
|
+
"type": "string",
|
|
523
|
+
"nullable": true
|
|
524
|
+
},
|
|
525
|
+
"name": {
|
|
526
|
+
"type": "string",
|
|
527
|
+
"nullable": true
|
|
528
|
+
},
|
|
529
|
+
"defaultCvId": {
|
|
530
|
+
"type": "string",
|
|
531
|
+
"nullable": true
|
|
532
|
+
},
|
|
533
|
+
"technologies": {
|
|
534
|
+
"type": "array",
|
|
535
|
+
"items": {
|
|
536
|
+
"type": "string"
|
|
537
|
+
},
|
|
538
|
+
"nullable": true
|
|
539
|
+
},
|
|
540
|
+
"roles": {
|
|
541
|
+
"type": "array",
|
|
542
|
+
"items": {
|
|
543
|
+
"type": "string"
|
|
544
|
+
},
|
|
545
|
+
"nullable": true
|
|
546
|
+
},
|
|
547
|
+
"yearsExperience": {
|
|
548
|
+
"type": "integer",
|
|
549
|
+
"format": "int32",
|
|
550
|
+
"nullable": true
|
|
551
|
+
},
|
|
552
|
+
"about": {
|
|
553
|
+
"type": "string",
|
|
554
|
+
"nullable": true
|
|
555
|
+
},
|
|
556
|
+
"cvText": {
|
|
557
|
+
"type": "string",
|
|
558
|
+
"nullable": true
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
},
|
|
389
562
|
"employeeReference": {
|
|
390
563
|
"type": "object",
|
|
391
564
|
"properties": {
|